matlab 求-120*x^3-30*x^4+18*x^5+5*x^6-30*xy^2的极值

matlab 求-120*x^3-30*x^4+18*x^5+5*x^6-30*xy^2的极值
syms x y
f='-120*x^3-30*x^4+18*x^5+5*x^6-30*x*y^2';
fx=diff(f,x)
fy=diff(f,y)
结果为:
fx =
30*x^5 + 90*x^4 - 120*x^3 - 360*x^2 - 30*y^2
fy =
(-60)*x*y
接下里roots怎么写呢?
是:
x0=roots([30,90,-120,-360,0,-30*y^2])
y0=roots([0,0,0,0,-60,-60*x,0])
还是怎么写呢?
蕃茄123 1年前 已收到1个回答 举报

cenyulin 幼苗

共回答了16个问题采纳率:87.5% 举报

oots用来求多项式的根的,参数是多项式系数.
x0=roots([30,90,-120,-360,0,-30*y^2])
y0=roots([-60*x,0])

1年前 追问

1

蕃茄123 举报

他总是提示:
??? Undefined function or method
'isfinite' for input arguments of type
'sym'.
Error in ==> roots at 27
if ~all(isfinite(c))

举报 cenyulin

你x,y定义的是syms类型,求根需要定义数值类型,不能用syms类型

蕃茄123 举报

那应该怎么改呀?数值类型怎么定义?
麻烦您了 谢谢 不太懂啊

举报 cenyulin

就直接将x,y定义为一个数,如x=5,y=8之类的
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.033 s. - webmaster@yulucn.com