How to get simple answer using symbolic functions?
2 ビュー (過去 30 日間)
古いコメントを表示
Muhammad Zeeshan Babar
2017 年 2 月 4 日
コメント済み: Muhammad Zeeshan Babar
2017 年 2 月 6 日
Hello, I am using syms for computing Lie derivative. My problem is that I have a robot model and when I take the 2nd lie derivative, the matrix appears like
state = [x1; x2 ;x3 ;x4];
fx = 4*1 sym function
hx = hx_new = [1 0 0 0;
0 0 0 0;
0 0 0 0;
0 0 0 0]*state;
Lf0_h_new = hx_new;
b1_new = jacobian(Lf0_h_new, state);
Lf1_h_new = simplify(b1_new*fx);
b2_new = jacobian(Lf1_h_new, state);
Lf2_h_new = simplify(b2_new*fx)
-(17932868243945039509054995298422620160000000000*x1 + 179328622760811041254165969937467169271875000*x2 - 9543444251212304856447901238125480501680537600*x1*cos(x3)^2 - 95434442512123048564479012381254805016805376*x2*cos(x3)^2 + 29067690344163397395312355854778368000000*x4^2*sin(x3) + 2340529702609818139925095463956512768000000*cos(x3)*sin(x3) - 24981799213169175398901578715708984375*x2*cos(x3))/(6773644423866147353395200*(1408908359226399653888*cos(x3)^2 - 2647447536626024609375))
0
0
0]
I dont know why it is appearing like this. Someone please help
0 件のコメント
採用された回答
Walter Roberson
2017 年 2 月 4 日
Lf2_h_new = simplify(b2_new*fx, 'step', 20)
2 件のコメント
Walter Roberson
2017 年 2 月 5 日
That answer is different than the original Lf2_h_new.
It would help if you were to describe what you were expecting.
その他の回答 (1 件)
Steven Lord
2017 年 2 月 5 日
Use vpa to approximate the numbers in the answer to a desired number of decimal places.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!