Muszę ocenić liczbowo całkę poniżej:
gdzie ,x∈R+iλ,κ,ν>0. TutajKjest zmodyfikowaną funkcją Bessela drugiego rodzaju. W moim szczególnym przypadku mamλ=0,00313,κ=0,00825iν=0,33.
Korzystam z MATLAB i wypróbowałem wbudowane funkcje integral
i quadgk
, co daje mi wiele błędów (patrz poniżej). Naturalnie próbowałem również wielu innych rzeczy, takich jak całkowanie przez części i sumowanie całek od do ( k + 1 ) x π .
Czy masz jakieś sugestie, którą metodę powinienem wypróbować?
AKTUALIZACJA (dodane pytania)
Przeczytałem artykuł z linkiem @Pedro i nie sądzę, aby było to zbyt trudne do zrozumienia. Mam jednak kilka pytań:
- Byłoby dobrze, aby skorzystać jako podstawa-elements * F k , w jednoczynnikowej Levin metody opisane?
- Czy zamiast tego mogę po prostu użyć metody Filon, ponieważ częstotliwość drgań jest stała?
Przykładowy kod
>> 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