Effacer les filtres
Effacer les filtres

Differentiating a Symbolic Function

40 vues (au cours des 30 derniers jours)
Ammar Taha
Ammar Taha le 9 Avr 2021
Commenté : Star Strider le 9 Avr 2021
If I have the following symbolic function:
syms f(x,y)
f(x,y) = 2*x^2 + y;
When I try to diff. this function w.r.t. (x) I get:
d = diff(f,x)
d(x, y) =
4*x
Which is a function in both x, and y NOT in (x) only.
How can I perform this and get the real exsisting function input only "i.e. (x) only here"?

Réponse acceptée

Star Strider
Star Strider le 9 Avr 2021
That is the corrct result, since diff is taking the partial derivative with respect to ‘x’ only, and ‘y’ is considered a constant.
To get the derivatives of ‘f’ with respect to both variables, use the jacobian function:
jf = jacobian(f)
producing:
jf(x, y) =
[4*x, 1]
See Differentiation for more information.
Although not appropriate here, explore the functionalDerivative function.
  4 commentaires
Ammar Taha
Ammar Taha le 9 Avr 2021
Ok, thats great. Thnaks a lot.
Star Strider
Star Strider le 9 Avr 2021
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Chendi Lin
Chendi Lin le 9 Avr 2021
Hi Ammar,
Without explicitly defining the differentiation variable, "diff" uses the default variable, which is "x" in your case.
To get both derivatives, you can do
[diff(f(x,y),x) diff(f(x,y),y)]
And this should give you the correct result.
Thanks.
CD
  1 commentaire
Ammar Taha
Ammar Taha le 9 Avr 2021
Ok, thanks a lot.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by