MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   请高手帮我解一个数值积分,谢谢:) (https://www.labfans.com/bbs/showthread.php?t=4507)

angel4296 2008-09-18 21:15

请高手帮我解一个数值积分,谢谢:)
 
function Y1=chao(x)
Y1 =27671378696711990071590590550091/3749001307303900038450491949056*x^(19081/10000)*besselk(16719/5000,1/562949953421312*7177179097769788095511012573184^(1/2)*x^(1/2))*(-pi^(1/2)*erf(10*500/707*x)+pi^(1/2))

把上面的保存成chao.m的文件,然后对chao求数值积分,在0,1区间,大家知道怎么解吗?我用quad,总是提示我:

??? Error using ==> mpower
Matrix must be square.

Error in ==> chao at 2
Y1 =27671378696711990071590590550091/3749001307303900038450491949056*x^(19081/10000)*besselk(16719/5000,1/562949953421312*7177179097769788095511012573184^(1/2)*x^(1/2))*(-pi^(1/2)*erf(10*500/707*x)+p
Error in ==> quad at 63
y = f(x, varargin{:});

未注册 2008-10-05 21:15

回复: 请高手帮我解一个数值积分,谢谢:)
 
仅作讨论,
x=[0:0.001:1];
y1=x.^(19081/10000).*besselk(16719/5000,1/562949953421312*7177179097769788095511012573184^(1/2).*x.^(1/2));
y2=(-pi^(1/2).*erf(10*500/707.*x)+pi^(1/2));
y3=y1.*y2
y=7.3810*y3;
m=trapz(x,y)
结果

m =

NaN
我用的是梯形积分,你可以画一下y=f(x)的图形,但积分后为何得到NaN,我就不知道了,或许梯形积分有什么限制我不知道吧


所有时间均为北京时间。现在的时间是 04:56

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.