# Finding Symbolic Matrix Derivative

7 views (last 30 days)
JPS on 8 May 2021
Answered: Paul on 8 May 2021
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, Paul on 8 May 2021
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)]
A(t) = subs(diff(A,t),diff([phi(t) theta(t)]),[phi_dot(t) theta_dot(t)])
ans(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.

R2020a

### Community Treasure Hunt

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

Start Hunting!