MATLAB求解一阶导数等于零的情况 10
symsys=(y^(-1)/(y^(-1)+y^0+y^4))*log(y^(-1)/(y^(-1)+y^0+y^4))+(y^0/(y^(-1)+y^0+y^4))*...
syms y
s=(y^(-1)/(y^(-1)+y^0+y^4))*log(y^(-1)/(y^(-1)+y^0+y^4))+(y^0/(y^(-1)+y^0+y^4))*log(y^0/(y^(-1)+y^0+y^4))+(y^4/(y^(-1)+y^0+y^4))*log(y^4/(y^(-1)+y^0+y^4));
s=diff(s)
a=solve('s=0','y')
返回的是
a =
[ empty sym ]
但是如果把command window里的s(也就是一阶导数)写到solve函数里,也就是solve('一阶导数那个很长的式子','x'), 返回的就是a=1
问题是我如何能够不用这么手动的把一阶导数写到代码里,能否直接用一个变量代替,并让solve函数能够识别并发挥作用呢? 展开
s=(y^(-1)/(y^(-1)+y^0+y^4))*log(y^(-1)/(y^(-1)+y^0+y^4))+(y^0/(y^(-1)+y^0+y^4))*log(y^0/(y^(-1)+y^0+y^4))+(y^4/(y^(-1)+y^0+y^4))*log(y^4/(y^(-1)+y^0+y^4));
s=diff(s)
a=solve('s=0','y')
返回的是
a =
[ empty sym ]
但是如果把command window里的s(也就是一阶导数)写到solve函数里,也就是solve('一阶导数那个很长的式子','x'), 返回的就是a=1
问题是我如何能够不用这么手动的把一阶导数写到代码里,能否直接用一个变量代替,并让solve函数能够识别并发挥作用呢? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询