求教一个数值积分的问题
形如(sqrt(u.^2+gama0.^2)-sqrt(u.^2+gama1.^2))./(sqrt(u.^2+gama0.^2).*gama1.^2+sqrt(u.^2+gama1.^2).*gama0.^2).*u.*besselj(0,u.*y).*exp(-sqrt(u.^2+gama0.^2).*(h+z)),0,abs(100*gama0)
的数值积分如何计算的准呢?式中u为积分变量,其余全都是已知数,besselj为第一类0阶贝塞尔函数
试过quad1和quad8 感觉都不太准 回复 dauphin_510 的帖子
贝塞尔函数具有震荡性,建议你用quadgk另外一说的quad8,我不太清楚,似乎不是matlab自带的函数吧
本帖最后由 rocwoods 于 2010-9-15 15:14 编辑
没猜错的话,楼主用的应该是老掉牙的MATLAB了吧,居然还有quad8函数。从2004年推出的MATLAB 7.0开始,quad8就逐渐被废弃了。像qibbxxt说的,试试quadgk函数吧,换个新的MATLAB装上。现在最新的是MATLAB7.11,即MATLAB R2010b。科技在进步,MATLAB在发展,楼主不要停留在过去呀。 回复 rocwoods 的帖子
怎可以笑我们还在用旧版的人!?:'(
汗! :@L我主要工作还在用matlab v5.3, 版权问题嘛, 而且真的很贵!:@Q
但基本上, 还是同意roc说法需学习下新版功能地 我用的是7.01版本啊 没有quadgk这个函数啊
难道要换版本不成 谁有好用的新版地址留一个吧
页:
[1]