10
$\begingroup$

Bug introduced in 8.0.4 or earlier and persists through 11.0.1 or later


The Hankel Transform is given by

Integrate[f[x] x BesselJ[0, x t], {x, 0, Infinity}]

It is self-inverse, so

Integrate[F[t] t BesselJ[0, x t], {t, 0, Infinity}]

gives the back-transformation.

I tried out a simple case:

Integrate[UnitBox[x/2] x BesselJ[0, x t], {x, 0, Infinity}]

which promptly results in

BesselJ[1, t]/t

This is correct. However, if I do the back-transformation:

Integrate[BesselJ[1, t]/t t BesselJ[0, x t], {t, 0, Infinity}]

the integration takes noticeably longer (which is expected since the function oscillates) and the result is

ConditionalExpression[0, x>1]

While that single condition would be correct - UnitBox[x/2] == 0 for x > 1 - the rest of the function won't show up.

Is there any way to make the obviously missing parts show up?

Related but not quite what I'm asking:
Hankel Transform integrals won't work in Mathematica
Strange result when integrating BesselJ functions

$\endgroup$
1
  • $\begingroup$ Integrate[BesselJ[1, t]/t t BesselJ[0, x t], {t, 0, Infinity}] in 11.3, returns this int doesn't coverage, and returns back origin formula. $\endgroup$ Commented Feb 7, 2021 at 19:33

1 Answer 1

3
$\begingroup$

Try :

Integrate[BesselJ[1, t]/t t BesselJ[0, x t], {t, 0, Infinity}, 
   Assumptions -> { x > 0}]
$\endgroup$
4
  • $\begingroup$ Why not Integrate[BesselJ[1, t] BesselJ[0, x t], {t, 0, Infinity}, Assumptions -> {x > 0}]? $\endgroup$
    – m_goldberg
    Commented Feb 2, 2013 at 14:45
  • $\begingroup$ That apparently works. Weird. I think I previously had a case where it didn't. $\endgroup$
    – kram1032
    Commented Feb 2, 2013 at 14:55
  • $\begingroup$ @m_goldberg of course, that bit of simplifying would make it a bit faster but it's less general. I had this problem with more complex functions as input as well. Ones that wouldn't simplify so readily. $\endgroup$
    – kram1032
    Commented Feb 2, 2013 at 14:56
  • $\begingroup$ Integrate[(Sin[t]-t Cos[t])/t^2 BesselJ[0,t x],{t,0,Infinity},Assumptions->x>0] should return something equivalent to UnitBox[x/2]Sqrt[1-x^2] (at least for x>0) but doesn't get evaluated at all. Without assumptions, it returns ConditionalExpression[0,x>1 || x<-1] - basically the same problem but not fixable with that simple assumption. $\endgroup$
    – kram1032
    Commented Feb 2, 2013 at 15:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.