Solve Matrix A = B for variables a b and c with equations consisting of cosines and sines
1 次查看(过去 30 天)
显示 更早的评论
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
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
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 Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!