[问题] 数值积分

楼主: obelisk0114 (追风筝的孩子)   2015-04-25 16:42:30
我想要用数值积分求下面这积分的 FWHM(半高全宽)
http://i.imgur.com/LgocICB.png
我想求出最大值发生处以及其数值,然后用 FindRoot 解
但是第一步用 MaxValue 就跑出什么 max precision 的问题
想问有什么简单的数值方法大致求出 FWHM
附上积分程式码
Integrate[(
Abs[Integrate[
E^(I*2*Pi/0.7*z*0.5^2*p^2)*BesselJ[0, 2*Pi/0.7*r*0.5*p]*p, {p,
0, 1}]])^2*r, {r, 0, 3552/15}]
作者: LPH66 (-6.2598534e+18f)   2015-04-25 22:08:00
要用 MMA 做数值积分基本上就把 Integrate 换成 NIntegrate就可以了, 不是真的太难数值积的东西应该都能做
作者: GeeDuTu (基督徒)   2015-04-25 22:13:00
我觉得不行 他这个里面还有z也确实有点麻烦 我令z=Range[-10,10,0.1]算很久
作者: kanonehilber (隐居处)   2015-04-27 01:52:00
为什么我看到的图很奇怪@@之前遇到一个积分也是里面有其他变量无法NIntegrate最后用Sum硬加
作者: GeeDuTu (基督徒)   2015-04-27 17:47:00
NIntegrate[y z^2, {z, 0, 2}]光这种就不行了
作者: AmibaGelos (Amiba Gelos)   2015-04-27 23:24:00
这个积分可以换成fresnel的实数积分,所以原式第二次积时可以改采手动sum的方式,间距取等比间距来加快计算基本上可以用1-BesselJ0 2-Erf 3-Fresnel的二重积分表示,不过因为bessel函式最快所以用bessel算就好了刚刚试了一下结果MMA内建的方法还是比较快@@Method->{"GlobalAdaptive",Method->"ClenshawCurtisOscillatoryRule"}

Links booklink

Contact Us: admin [ a t ] ucptt.com