# The conversion equation between BesselI and BesselJ

The conversion equation between BesselI and BesselJ is as follows: $$I_v(x)=J_v(i x)/i^v$$

$$I_{-v}(x)=i^{-v} J_{-v}(i x)$$

Where $$J_v(x)$$ and $$J_{-v}(i x)$$ are the Bessel function of the first kind (BesselJ) of order $$v$$ and $$-v$$ evaluated at $$x, I_v(x)$$ and $$I_{-v}(x)$$ are the modified Bessel function of the first kind (BesselI) of order $$v$$ and $$-v$$ evaluated at $$x$$, and $$i$$ is the imaginary unit.

I attempted to verify these two equations using the following MMA (Mathematica) code, but was unsuccessful.

Clear["Global*"];

BesselI[v, x] == BesselJ[v, I  x]/I^v // FullSimplify

BesselI[-v, x] == BesselJ[-v, I  x]*I^v // FullSimplify


(* Failed *)

However, when I multiplied both the numerator and denominator of the right-hand side of the first equation by $$x^v$$, the verification was successful. What could be the reason for this?

BesselI[v, x] == x^v  BesselJ[v, I  x]/(I  x)^v // FullSimplify


(* True *)

EDIT 1

Thank you for Nasser's answer. Additionally, it appears that the two results have different number fields? One is in the field of real numbers, while the other is in the field of complex numbers.

Clear["Global*"];

e1 = BesselI[v, x]

e2 = BesselJ[v, I x]/I^v

e1 /. v -> 2 /. x -> -4 // N

e2 /. v -> 2 /. x -> -4 // N


(* 6.42219 *)

(* 6.42219 + 0. I *)

Note: Nasser's response to the comment below his answer explained that the 0.I is simply a result of numerical round-off.

EDIT 2

Does this have to do with the domain of BesselI? The domain of BesselI is somewhat confusing.

FunctionDomain[BesselI[v, x], x]


(* Element[v,Integers] || (x >= 0 && v >= 0) || x > 0 *)

FunctionDomain[BesselI[v, x], x, Complexes]


(* Element[v,Integers] || v == 0 || x != 0 || Re[v] > 0 *)

Clear["Global*"];

BesselI[v, x] == x^v BesselJ[v, I x]/(I x)^v // FullSimplify


(* True *)

BesselI[v, x] == BesselJ[v, I  x]/I ^v // FullSimplify


(* Failed *)

Assuming[x > 0, BesselI[v, x] == BesselJ[v, I x]/I^v // FullSimplify]


(* True *)

Assuming[Element[v, Integers], BesselI[v, x] == BesselJ[v, I  x]/I^v // FullSimplify]


(* True *)

Assuming[x >= 0 && v >= 0, BesselI[v, x] == BesselJ[v, I  x]/I^v // FullSimplify]


(* True *)

\$Version

(* "14.0.0 for Mac OS X ARM (64-bit) (December 13, 2023)" *)

Clear["Global*"]


Use

(expr = Entity["MathematicalFunction", "BesselI"][


Length@expr

(* 12 *)

expr1a = expr[[1]][ν, z] // Activate

(* BesselI[ν, z] == (I z)^-ν z^ν BesselJ[ν, I z] *)

expr1a // FullSimplify

(* True *)


EDIT:

{#, Assuming[#, expr1a // Simplify]} & /@
{True, ν ∈ Integers, z ∈ Reals, z > 0, z < 0} //
Grid[#, Frame -> All] &


END EDIT

For integer ν,

Assuming[ν ∈ Integers, expr1a // Simplify]

(* I^ν BesselI[ν, z] == BesselJ[ν, I z] *)

Assuming[ν ∈ Integers, % // FullSimplify]

(* True *)


Reversing the sign of ν,

expr1a2 = expr1a /. ν -> -ν

(* BesselI[-ν, z] == (I z)^ν z^-ν BesselJ[-ν, I z] *)


Again, for integer ν,

Assuming[ν ∈ Integers, expr1a2 // Simplify]

(* BesselI[-ν, z] == I^ν BesselJ[-ν, I z] *)

Assuming[ν ∈ Integers, % // FullSimplify]

(* True *)

• Does my question have to do with the domain of BesselI? The domain of BesselI is somewhat confusing. See my EDIT2. Thank you. Commented Feb 17 at 14:57

These are not same for all input.

e1 = BesselI[v, x]
e2 = BesselJ[v, I   x]/I^v
Assuming[Element[v, Reals] && x > 0, FullSimplify[e1 - e2]]

(* 0 *)


You can see this by plugging in some values

e1 /. v -> (2*I) /. x -> -4 // N
e2 /. v -> (2*I) /. x -> -4 // N


• Thank you. It appears that the two results have different number fields? One is in the field of real numbers, while the other is in the field of complex numbers. See my edit. Commented Feb 16 at 9:10
• @lotus2019 the 0.I is just numerical round off. You can use Chop !Mathematica graphics Commented Feb 16 at 9:12
• Does this have to do with the domain of BesselI? The domain of BesselI is somewhat confusing. See my EDIT2. Thank you. Commented Feb 17 at 14:55