| 查看: 1540 | 回复: 34 | ||
wgdd木虫 (正式写手)
|
[求助]
求助一个数值积分问题,用matlab的quadgk函数来计算,谢谢!
|
|
现求解一个半无限震荡积分问题: 被积函数为s*besselj(0,s*R)./(s.^2-k0^2), 积分区间为[0,inf], 其中R=6, k0=10, 均为已知常数。我打算用两种方法来计算这个问题。(解析解和数值解) 方法一,解析解 对于这样一个积分,可以查到数学手册中积分结果为pi*i/2*besselh(0,1,k0*R). 经过计算可以得到结果为-0.0744。 计算程序 % analytic method k0=10; R=6; p_inc=real(pi*1i/2*besselh(0,1,k0*R)); 方法二,采用matlab中的quadgk函数进行计算,由于k0为奇点,所以将积分区间分为两块。[0,k0]和[k0,inf],计算结果为0.0390 计算程序 % numerical method k0=10; R=6; p_f=@(s)(s).*besselj(0,s*R)./(s.^2-k0^2); p1=quadgk(p_f,0,k0); p2=quadgk(p_f,k0,inf); p_incN=p1+p2; 求各位大牛支招,为啥两种方法差别这么大呀~正确的数值积分方法应该是怎么样的呢?十分感谢!@wuming524 |
» 猜你喜欢
“人文社科而论,许多学术研究还没有达到民国时期的水平”
已经有4人回复
过年走亲戚时感受到了所开私家车的鄙视链
已经有11人回复
什么是人一生最重要的?
已经有4人回复
版面费该交吗
已经有3人回复
今年春晚有几个节目很不错,点赞!
已经有12人回复
体制内长辈说体制内绝大部分一辈子在底层,如同你们一样大部分普通教师忙且收入低
已经有12人回复
基金正文30页指的是报告正文还是整个申请书
已经有5人回复
|
2楼2017-08-17 17:25:11
|
3楼2017-08-17 19:47:18
|
4楼2017-08-18 01:07:09
|
5楼2017-08-18 02:06:54
|
6楼2017-08-18 13:54:55
|
7楼2017-08-18 15:56:44
|
8楼2017-08-18 16:43:55
|
9楼2017-08-18 22:33:48
|
10楼2017-08-19 00:41:39













回复此楼