Reformulate a matrix equation

14 ビュー (過去 30 日間)
Mohammad Ayoub
Mohammad Ayoub 2017 年 11 月 23 日
コメント済み: Roger Stafford 2017 年 11 月 24 日
Greetings everyone. I have a question: I have 3 matrices which contain numeral values, all of them are of the same order. The matrices are A,J and S.
The equation of is J = inv(S) * A * S;
Is there any way possible for me to solve this for S? i.e. J and A are known but S is unknown, can I do anything to obtain S from J and A? Thank you in advance.
Regards, M. Ayoub
*Edit: S is unknown, when I said it contains numeral values I meant that that unknowns are of numeral type (i.e. not string or char, etc...).
*Edit: all of the matrices are square matrices.
  1 件のコメント
Roger Stafford
Roger Stafford 2017 年 11 月 24 日
If it is assumed that an inverse exists for S, then your equation implies that S*J-A*S = 0. For n x n matrices, this is consequently n^2 linear equations in n^2 unknown S values. However, I think you will find that unless J and A bear a very special relation to one another, the associated n^2 x n^2 matrix of J and A coefficients has rank n^2, and this latter equation will have only the trivial solution S = 0. S would therefore possess no inverse. Consequently, in the general case there is no solution to your equation. That is, of course, not a fault of Matlab. It is a general mathematical property.

サインインしてコメントする。

回答 (1 件)

Walter Roberson
Walter Roberson 2017 年 11 月 23 日
If J = inv(S)*A*S then J*inv(S) = inv(S)*A*S*inv(S) so J*inv(S) = inv(S) * A. Then S*J*inv(S) = S*inv(S) * A, so S*J*inv(S) = A and so
A = S*J*inv(S)
Your question assumes that S is invertable, so as long as you have the numeric values for S and J and S is invertable then you can calculate A.
Note: sometimes people ask this question when the matrices are not square. That case cannot usually be solved.
  8 件のコメント
Mohammad Ayoub
Mohammad Ayoub 2017 年 11 月 24 日
Oh well. I guess I can’t achieve that using MATLAB. Thank you very much! Much appreciated
Walter Roberson
Walter Roberson 2017 年 11 月 24 日
It might have worked on other data.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMathematics についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by