Finding Symbolic Matrix Derivative
조회 수: 3 (최근 30일)
이전 댓글 표시
I have the following Matrix and I wish to find its derivative,
A =
Please note that ϕ and θ in this matrix are functions of time t.
I have the following MATLAB code,
syms phi theta t real
A = [1 , 0 , -sin(theta) ;...
0 , cos(phi) , cos(theta) * sin(phi) ;...
0 , -sin(phi) , cos(phi) * cos(theta)];
Adot = diff(A); % this isn't giving the result I expect
So I tried,
syms phi theta t real
A = [1 , 0 , -sin(theta) ;...
0 , cos(phi) , cos(theta) * sin(phi) ;...
0 , -sin(phi) , cos(phi) * cos(theta)];
phi(t) = phi;
theta(t) = theta;
Adot = diff(A , t); % this also isn't working
The result I want is,
Please help me to get this result.
댓글 수: 0
답변 (1개)
Paul
2021년 5월 8일
Declare theta and phi as functions, and then substitute after differentiating A
syms phi(t) theta(t) phi_dot(t) theta_dot(t)
A=[1 0 -sin(theta);0 cos(phi) cos(theta)*sin(phi);0 -sin(phi) cos(phi)*cos(theta)]
subs(diff(A,t),diff([phi(t) theta(t)]),[phi_dot(t) theta_dot(t)])
Note that this result is not the same as the expected result in the question, which appears to have some terms that are incorrect.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!