以下の積分を数値的に評価する必要があります。
ここで、、と。ここで、は第2種の修正ベッセル関数です。私の特定のケースでは、、およびです。のx∈R+λ、κ、ν>0Kλ=0.00313κ=0.00825ν=0.33
私はMATLABを使用していますが、組み込み関数integral
およびを試してみましたがquadgk
、これにより多くのエラーが発生します(以下を参照)。私は当然、部品ごとの積分やからへの積分の加算など、他にも多くのことを試しました。(K + 1 )のx π
だから、次に試すべき方法について何か提案はありますか?
更新(追加の質問)
@Pedroのリンク先の論文を読みましたが、理解するのが難しいとは思いません。ただし、いくつか質問があります。
- 説明した単変量レビン法でを基底要素として使用しても大丈夫でしょうか?ψ K
- 振動の周波数が固定されているので、代わりに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