Re: Simplifying Bessel functions
- To: mathgroup at smc.vnet.net
- Subject: [mg107310] Re: Simplifying Bessel functions
- From: Roland Franzius <roland.franzius at uos.de>
- Date: Tue, 9 Feb 2010 02:42:57 -0500 (EST)
- References: <hkj90t$du1$1@smc.vnet.net> <hkoia7$t02$1@smc.vnet.net>
Roland Franzius schrieb: > Sam Takoy schrieb: >> Hi, >> >> Mathematica does not seem to simplify the following expression: >> >> (BesselJ[2, BesselJZero[0, n]] BesselJZero[0, n]^2)/ BesselJ[1, >> BesselJZero[0, n]] >> >> (I believe the answer is 2 BesselJZero[0, n]^2) >> >> Is there a way of making Mathematica deal with these types of expressions? > > You want to Simplify > > In: expr = (BesselJ[2, BesselJZero[0, n]] BesselJZero[0, n]^2)/ > BesselJ[1, BesselJZero[0, n]] /. BesselJZero[0, n] -> z > > Out: (z^2 BesselJ[2, z])/BesselJ[1, z] > > Now Solve from the recursion formula for the highest order Bessel function > > In: rp[n_] = (Solve[ > z BesselJ[n - 2, z] + z BesselJ[n, z] == 2 n BesselJ[n - 1, z] , > BesselJ[n, z]] // First) Sorry, has to be rp[n_] = (Solve[z BesselJ[n - 2, z] + z BesselJ[n, z] == 2 (n - 1) BesselJ[n - 1, z], BesselJ[n, z]] // First) // Apart > > Out: {BesselJ[n, z] -> > (-z BesselJ[-2 + n, z] + 2 n BesselJ[-1 + n, z])/z} {BesselJ[n, z] -> -BesselJ[-2 + n, z] + (2 (-1 + n) BesselJ[-1 + n, z])/z} > > In: expr1 = Simplify[expr /. rp[2]] > > Out: z (4 - (z BesselJ[0, z])/BesselJ[1, z]) > > In: expr2 = FullSimplify[expr1 /. z -> BesselJZero[0, n]] > > Out: > BesselJZero[0, n] * > (4 - (BesselJ[0, BesselJZero[0, n]] BesselJZero[0, n])/ > BesselJ[1, BesselJZero[0, n]]) > > By definition > > BesselJ[0, BesselJ[0, n]] -> 0 > > the result is > > In: expr2 = FullSimplify[expr1 /. z -> BesselJZero[0, n]] > > Out: > BesselJZero[0, n] * > (4 - (BesselJ[0, BesselJZero[0, n]] BesselJZero[0, n])/ > BesselJ[1, BesselJZero[0, n]]) > > Mathematica does not reduce symbolic orders of Bessel functions. > > Assuming[ n > 0 && n \[Element] Integers, FullSimplify[expr2]] > > > But for explicit integer n_ eg > > In: expr2 /. n -> 3 > > Out: 4 BesselJZero[0, 3] > > it works. > > Hope it helps. > > The correct result is 2 BesselJZero[0, n] -- Roland Franzius