How can i find out the gradient of a function with two variables? I have created a symbolic polynomial expression of order two but the gradient function works only on matrices apparently. Is there a two variable equivalent function for sym2poly?

3 Ansichten (letzte 30 Tage)
Say the polynomial is f= x^2+y^2-2*x*y+10 with sym var x and y.
  2 Kommentare
Abhishek Pandey
Abhishek Pandey am 11 Aug. 2016
I am using MATLAB 2007B and using gradient function with the exact line of code generates an error message..'Error using zeros, trailing string input must be a valid numeric class name'. Jacobian works perfectly though.. Thank you.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Star Strider
Star Strider am 10 Aug. 2016
I am not certain what result you want. Both the gradient and jacobian functions will work for you:
syms x y
f = x^2 + y^2 - 2*x*y + 10;
Gf = gradient(f, [x y])
Jf = jacobian(f, [x y])
Gf =
2*x - 2*y
2*y - 2*x
Jf =
[ 2*x - 2*y, 2*y - 2*x]

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by