How to tell matlab that y is a function of x; not a constant

1 Ansicht (letzte 30 Tage)
I have a function z such that z=xy(x) , [i.e. y is a function of x]. So if I differentiate z with respect to x, I shoud get dz/dx= y+x*(dy/dx). However if I use diff(z,x) in matlab, I get only y [matlab treats y as a constant]. What should I do to define y as a function of x?
syms x y z
z=x*y;
diff(z,x)
ans =
y

Akzeptierte Antwort

Star Strider
Star Strider am 7 Mai 2021
In the initial syms call, declare ‘y(x)’ instead of ‘y’
syms x y(x) z
z=x*y;
Dz = diff(z,x) % Create Assignment
Dz(x) = 
Note that now ‘Dz’ is also a funciton of ‘x’, as it should be.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by