フィルターのクリア

Problem with symbolic math integration of besselk times exponent

2 ビュー (過去 30 日間)
Lior Rubanenko
Lior Rubanenko 2019 年 10 月 3 日
回答済み: Walter Roberson 2019 年 10 月 3 日
According to Mathematica and the G&R book, the integral
where K0 is the modified bessel function of the second kind, has a closed form solution that can be expressed using the Meijer G function or the hypergeometric function. However, Matlab's symbolic integrations outputs,
syms x
>> I = int(besselk(0,x/a) * exp(-x/a),x)
I =
x*exp(-x/a)*(besselk(0, x/a) - besselk(1, x/a))
which is obviously the wrong answer. Matlab itself confirms that, by the way, since,
diff(I,x)
ans =
exp(-x/a)*(besselk(0, x/a) - besselk(1, x/a)) + x*exp(-x/a)*(besselk(0, x/a)/a - besselk(1, x/a)/a + besselk(1, x/a)/x) - (x*exp(-x/a)*(besselk(0, x/a) - besselk(1, x/a)))/a
What am I doing wrong?
Thanks!

採用された回答

Walter Roberson
Walter Roberson 2019 年 10 月 3 日
MATLAB is correct, that is one of the ways of expressing the integral.
convert(BesselK(v, z), MeijerG);
1 / [[1 1 ] ] 1 2\
- MeijerG|[[], []], [[- v, - - v], []], - z |
2 \ [[2 2 ] ] 4 /
What am I doing wrong?
You failed to simplify() the differentiation.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMathematical Functions についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by