Hi,
For a simple explanation, an example is 21 = m x 7. m = 21/7 = 3. If I use the m I obtained to time 7, it should be equal to 21.
But above is just numbers, not matrix.
For solving similar problem on matrix, I would like to do a linear conversion from one matrix (P) to another (T).
My equation is T = MP, while T and P are both 3 by 24 matrices. I need to work out M.
My understanding is that M = T/P and M is a 3 x 3 matrix.
But why after I obtained M, I use M*P, it doesn't equal to T anymore. Why is that?

1 件のコメント

Ranjan Sonalkar
Ranjan Sonalkar 2022 年 6 月 7 日
I would reframe the equation as y = Ax, where y contains the 9 terms of T, x contains the 9 unknowns from M and A would be the reformatted T. Then it is a least-squares solution.

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

 採用された回答

Matt J
Matt J 2022 年 6 月 7 日
編集済み: Matt J 2022 年 6 月 7 日

1 投票

Because you have 72 equations and only 9 unknowns. The system is over-determined.

その他の回答 (1 件)

Torsten
Torsten 2022 年 6 月 7 日

0 投票

M = T*P.'*inv(P*P.')
is the least-squares solution.
But you cannot expect that T=M*P is exactly satisfied.

カテゴリ

質問済み:

2022 年 6 月 7 日

回答済み:

2022 年 6 月 7 日

Community Treasure Hunt

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

Start Hunting!

Translated by