I have two following functions:

h[x_, a_, e_] :=

Integrate[(6^(a/2) (1 – (t + I*e))^(-a/2 – 1) Gamma[(2 + a)/2])/

Gamma[a/2] E^(-x*(t + I*e)), {t, 0, Infinity},

Assumptions -> {Im[e] == 0, Re[e] > 0, Re[e] < 1, Re[x] > 0, a > 0,

a âˆˆ Integers}]

and

g[x_, a_, e_] :=

Integrate[(6^(a/2) (1 – (t – I*e))^(-a/2 – 1) Gamma[(2 + a)/2])/

Gamma[a/2] E^(-x*(t – I*e)), {t, 0, Infinity},

Assumptions -> {Im[e] == 0, Re[e] > 0, Re[e] < 1, Re[x] > 0, a > 0,

a âˆˆ Integers}]

Basically, they are integrations over two different contours(2 lateral Laplace transforms). Since, there is a pole on the real axis, at t=1, the integrals should differ. But, when I check for the limit, when e goes to 0, I get

Limit[h[x, a, e] – g[x, a, e], e -> 0]

0

But, if I plug in, for example a=10, I get

Limit[h[x, 10, e] – g[x, 10, e], e -> 0]

648 I E^-x Ï€ x^5

which is also expected. How could I get a function depending generally on parameter a, without getting 0?

=================

2

If you do FullSimplify[h[x, 10, e] – g[x, 10, e], Assumptions -> {0 < e < 1, Re[x] > 0}] and then take the limit it seems to return what you expect.

– b.gatessucks

Aug 4 ’15 at 14:14

@b.gatessucks for a=10 worked already before, my problem is to get function for any a.

– Resurger

Aug 4 ’15 at 14:23

=================

1 Answer

1

=================

When parameters to a integral are integers, I often fall back to calculating the “general” result, make a table where the parameter is explicitly given integer values, and then feed to FindSequenceFunction.

In this case:

table = Table[h[x, a, e] – g[x, a, e], {a, 1, 11}];

limits = Limit[#, e -> 0] & /@ table;

f = FindSequenceFunction[limits];

f[a]

(* (I 2^(1 + a/2) 3^(a/2) E^-x Ï€ x^(a/2))/(-1 + a/2)! *)

f[10]

(* 648 I E^-x Ï€ x^5 *)

Wow, this is a nice workaround! Thank you!

– Resurger

Aug 4 ’15 at 14:39