用matlab求矩阵方程AP=PJ(求可逆矩阵P)其中A=[0 1 1;1 1 -1;0 1 1];

发布时间:2021-02-25 09:52:53

用matlab求矩阵方程AP=PJ(求可逆矩阵P)其中A=[0 1 1;1 1 -1;0 1 1];J是A的jordan标准型.别用inv函数,因为算出来P为三阶零矩阵,便不可逆了.

网友回答

对于你给的矩阵, 只要
[P,J]=jordan(A);
就行了.如果你已经通过某种途径得到了J, 只需要求P, 那么可以
n = size(A, 1);
I = eye(n);
X = null(kron(I, A)-kron(J.', I), 'r');
P = reshape(X*randi(10, size(X, 2), 1), n, n);
另外, 如果Jordan标准型J未知的话尽量小心, matlab不保证能算出真实的J, 因为这个问题对舍入误差太敏感.
以上问题属网友观点,不代表本站立场,仅供参考!