フィルターのクリア

Solve Matrix A = B for variables a b and c with equations consisting of cosines and sines

1 回表示 (過去 30 日間)
Stijn Klevering
Stijn Klevering 2018 年 2 月 20 日
編集済み: Matt J 2018 年 2 月 20 日
What is the easiest way to solve A = B for a, b and g with the following matrices:
A = [ cos(b)*cos(g), cos(g)*sin(a)*sin(b) - cos(a)*sin(g), sin(a)*sin(g) + cos(a)*cos(g)*sin(b); cos(b)*sin(g), sin(a)*sin(b)*sin(g) - cos(a)*cos(g), cos(g)*sin(a) + cos(a)*sin(b)*sin(g);
-sin(b), cos(b)*sin(a), cos(a)*cos(b)]
B = [0.6122, -0.7891, -0.0506;
0.7903, 0.6126, 0.0091;
-0.0238, 0.0456, -0.9987]
  5 件のコメント
Matt J
Matt J 2018 年 2 月 20 日
編集済み: Matt J 2018 年 2 月 20 日
Like I said, you will find code routines to do these kind of decompositions for you on the File Exchange. No need to re-invent the wheel. I don't think you will be able to solve it symbolically, because your B is not precisely orthogonal. It contains floating point errors.
John D'Errico
John D'Errico 2018 年 2 月 20 日
You want to solve for A==B. That is equivalent to having 9 simultaneous equations.
You have THREE variables. Nine equations. There are too many equations in only 3 unknowns.
There will essentially never be an exact solution. This is why solve could not succeed.

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

回答 (0 件)

カテゴリ

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

Community Treasure Hunt

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

Start Hunting!

Translated by