I am trying to solve the total derivative of f with respect to t so my idea is to take gradient of f and takes it dot product of the derivative of r with respect to t. I am trying to find the value of t at which r is sol so that i find the total derivative of f at sol but i am unable to get the value of t using
solve(sol==r,t) and also whenever i want to use first index of r using r(1) and it is putting t=1 instead of using its first index . Please help with this Thank you!
syms x y z t r
x=@(t) cos(t);
y=@(t) log(t+2);
z=@(t) t;
r=@(t) [x(t) y(t) z(t)];
f=@(x,y,z) x^2*exp(2*y)*cos(3*z);
Dr=diff(r,t);
sol=[1 log(2) 0];
solve(eq(r,sol),t)

4 件のコメント

Dyuman Joshi
Dyuman Joshi 2021 年 11 月 25 日
If I am understanding correct, you want to solve x(t)==1?
Soham Patil
Soham Patil 2021 年 11 月 25 日
Yes but i also want to make sure that such a t exists x(t)==1 and y(t)==log(2) and z(t)=0 i tried this too it says solve cannot deal with function handles
Dyuman Joshi
Dyuman Joshi 2021 年 11 月 25 日
syms x y z t r
x=cos(t);
y=log(t+2);
z=t;
r=[x y z];
sol=[1 log(2) 0];
arrayfun(@(k) solve(eq(r(k),sol(k)),t), 1:numel(r))
ans = 
Soham Patil
Soham Patil 2021 年 11 月 25 日
Thanks i think log(2) can be fixed with log(sym(2))

サインインしてコメントする。

 採用された回答

Dyuman Joshi
Dyuman Joshi 2021 年 11 月 25 日

1 投票

syms x y z t r
x=cos(t);
y=log(t+2);
z=t;
r=[x y z];
sol=[1 log(sym(2)) 0];
arrayfun(@(k) solve(eq(r(k),sol(k)),t), 1:numel(r))
ans = 

その他の回答 (0 件)

カテゴリ

質問済み:

2021 年 11 月 24 日

回答済み:

2021 年 11 月 25 日

Community Treasure Hunt

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

Start Hunting!

Translated by