Filter löschen
Filter löschen

Problem with symbolic math integration of besselk times exponent

2 Ansichten (letzte 30 Tage)
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!

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 3 Okt. 2019
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.

Weitere Antworten (0)

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by