How do i define a variable as a function?

5 views (last 30 days)
Let us say there is a fucntion theta that is depedent on time: Theta(t); It is in a cos function so: cos(theta(t))
How do i differentiate this in matlab so it uses the chain rule?
clear all
syms t theta
theta=t;
f=cos(theta(t));
diff(f,t)
I have tried the above and got the errors:
Error using sym/subsref (line 49)
Error using maplemex
Error, (in MTM:-subsref) indices must be positive integers, got t
Error in test (line 5)
f=cos(theta(t));

Accepted Answer

Star Strider
Star Strider on 11 Oct 2021
I suspect this works the similiarly in Maple (that I do not currently have) —
syms t theta(t)
f=cos(theta(t));
dfdt(t) = diff(f,t)
dfdt(t) = 
.
  7 Comments
Hamza Yusuf
Hamza Yusuf on 11 Oct 2021
The other solution where you remove the matlab directory worked. Thank you,
Star Strider
Star Strider on 11 Oct 2021
I hope that you do not have to uninstall Maple, and can simply disconnect it from MATLAB.
However if you need to uninstall it (and then reinstall it without connecting it to MATLAB next time), and since it appears that you are using Windows, open Control Panel, then click on Programs and Features, then follow the instructions. Then, reinstall Maple without connecting it to MATLAB.
.

Sign in to comment.

More Answers (1)

KSSV
KSSV on 11 Oct 2021
syms theta(t)
f=cos(theta(t));
diff(f,t)
  1 Comment
Hamza Yusuf
Hamza Yusuf on 11 Oct 2021
I get this error:
Error using assignin
Invalid variable name "theta(t)" in ASSIGNIN.
Error in syms (line 47)
assignin('caller',varargin{1},sym(varargin{1}));
Error in test (line 1)
syms theta(t)

Sign in to comment.

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!