ฉันจำเป็นต้องประเมินตัวเลขอินทิกรัลด้านล่าง:
ที่,x∈R+และλ,κ,ν>0 นี่Kคือฟังก์ชัน Bessel ที่แก้ไขของชนิดที่สอง ในกรณีของฉันโดยเฉพาะฉันมีλ=0.00313,κ=0.00825และν=0.33 0.33
ฉันใช้ MATLAB และผมก็มีความพยายามในตัวฟังก์ชั่นintegral
และquadgk
ซึ่งจะช่วยให้ฉันมากของข้อผิดพลาด (ดูด้านล่าง) ฉันได้พยายามธรรมชาติสิ่งอื่น ๆ อีกมากมายเช่นกันเช่นการบูรณาการโดยส่วนและข้อสรุปปริพันธ์จากไป( k + 1 ) x π
ดังนั้นคุณมีข้อเสนอแนะเกี่ยวกับวิธีที่ฉันควรลองต่อไปหรือไม่
UPDATE (คำถามเพิ่มเติม)
ฉันอ่านกระดาษ @Pedro ที่เชื่อมโยงกับและฉันไม่คิดว่ามันยากเกินไปที่จะเข้าใจ อย่างไรก็ตามฉันมีคำถามสองสามข้อ:
- มันจะโอเคไหมที่จะใช้เป็นองค์ประกอบพื้นฐานψ kในวิธีของ univariate Levin ที่อธิบายไว้?
- ฉันสามารถใช้วิธี Filon แทนได้หรือไม่เนื่องจากความถี่ของการแกว่งได้รับการแก้ไข
รหัสตัวอย่าง
>> integral(@(r) sin(x*r).*sqrt(E(r)),0,Inf)
Warning: Reached the limit on the maximum number of intervals in use. Approximate
bound on error is 1.6e+07. The integral may not exist, or it may be difficult to
approximate numerically to the requested accuracy.
> In funfun\private\integralCalc>iterateScalarValued at 372
In funfun\private\integralCalc>vadapt at 133
In funfun\private\integralCalc at 84
In integral at 89
ans =
3.3197e+06