| 查看: 703 | 回复: 0 | ||
[求助]
一个解函数的小问题,solve函数的应用,小白求救
|
|
编的程序如下所示, clear all; close all; syms he x y z p m E Ex Ex2 ;%p-半径, for n=1:4; he=((x-p*cos(2*pi*n/4))^2+(y-p*sin(2*pi*n/4))^2+z^2)^(-(m+2)/2); end E=(z^m)*he; Ex=diff(E,'x') ; Ex2=diff(E,'x',2); disp(Ex); disp(Ex2); F=Ex2; H=subs(F,{x,y},[0,0]); S=solve('subs(F,{x,y},[0,0])=0','p'); disp (S); 如果直接输入S=solve('subs(F,{x,y},[0,0])=0','p');或者S=solve('H=0','p');就会提示我输入的不是有效的方程式。。错误显示如下: ??? Error using ==> solve>getEqns at 182 ' subs(F,{x,y},[0,0])=0 ' is not a valid expression or equation. Error in ==> solve at 67 [eqns,vars] = getEqns(varargin{:}); 但是如果把前面算出来的H,直接复制,然后S=solve('表达式=0',‘p’),就可以解出我要的表达式,程序如下: S=solve('(4*p^2*z^m*(m/2 + 1)*(m/2 + 2))/((411376139330301510538742295639362304861256537891262433499875377*p^2)/411376139330301510538742295639337626245683966408394965837152256 + z^2)^(m/2 + 3) - (2*z^m*(m/2 + 1))/((411376139330301510538742295639362304861256537891262433499875377*p^2)/411376139330301510538742295639337626245683966408394965837152256 + z^2)^(m/2 + 2)=0','p'); disp (S); 结果如下: 20282409603651670423947251286016*z*(1/(411376139330301510538742295639337626245683966408394965837152256*m + 1234128417990904531616226886917988200121479327742317429848733647))^(1/2) -20282409603651670423947251286016*z*(1/(411376139330301510538742295639337626245683966408394965837152256*m + 1234128417990904531616226886917988200121479327742317429848733647))^(1/2) 但是这样,每次都得复制弄一下,好麻烦,,大神求教,怎么能把那个表达式给整合进去,直接让它出结果。 |
» 猜你喜欢
酰胺脱乙酰基
已经有9人回复
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有3人回复
CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优
已经有5人回复
有70后还继续奋斗在职场上的吗?
已经有6人回复
博士延得我,科研能力直往上蹿
已经有7人回复
退学或坚持读
已经有27人回复
面上基金申报没有其他的参与者成吗
已经有5人回复
遇见不省心的家人很难过
已经有22人回复













回复此楼