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

2 visualizaciones (últimos 30 días)
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

Respuesta aceptada

Star Strider
Star Strider el 7 de Mayo de 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.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by