一个MATLAB问题,帮我看看程序错在哪里
首先,我用MATLAB写程序如下:clear%积分到r=5symsrtheta;%r2=sqrt(r.^2+0.53^2*10^-20+2*r*0.53*10^-10*c...
首先,我用MATLAB写程序如下:
clear %积分到r=5
syms r theta;
%r2=sqrt(r.^2+0.53^2*10^-20+2*r*0.53*10^-10*cos(theta));
%a=0.53*10^-10;
%s=r*exp(-(r+r2)/0.53*10^-10);
fun=inline('exp(sqrt(2*r*0.53*10^-10*cos(theta)))') ;
FUN=dblquad(fun,0,5,0,2*pi);
结果是可积分的。
可是当我在inline的参数那里再乘以一个r的时候,软件就提示出错了。
(即是把fun=inline('r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))'))
软件提示为??? Error using ==> inlineeval
Error in inline expression ==> r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))
??? Error using ==> *
Inner matrix dimensions must agree.
到底应怎么改才能算出r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))
对r和theta的二元积分呢?
如果你能够用其他工具解出来,也可以展示哦o(∩_∩)o...
谢谢!
我已经解决了!只要加一个“.”即可!即fun=inline('r.*exp(sqrt(2*r*0.53*10^-10*cos(theta)))')
悬赏分等你拿! 展开
clear %积分到r=5
syms r theta;
%r2=sqrt(r.^2+0.53^2*10^-20+2*r*0.53*10^-10*cos(theta));
%a=0.53*10^-10;
%s=r*exp(-(r+r2)/0.53*10^-10);
fun=inline('exp(sqrt(2*r*0.53*10^-10*cos(theta)))') ;
FUN=dblquad(fun,0,5,0,2*pi);
结果是可积分的。
可是当我在inline的参数那里再乘以一个r的时候,软件就提示出错了。
(即是把fun=inline('r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))'))
软件提示为??? Error using ==> inlineeval
Error in inline expression ==> r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))
??? Error using ==> *
Inner matrix dimensions must agree.
到底应怎么改才能算出r*exp(sqrt(2*r*0.53*10^-10*cos(theta)))
对r和theta的二元积分呢?
如果你能够用其他工具解出来,也可以展示哦o(∩_∩)o...
谢谢!
我已经解决了!只要加一个“.”即可!即fun=inline('r.*exp(sqrt(2*r*0.53*10^-10*cos(theta)))')
悬赏分等你拿! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询