Re: Two questions about DSolve
- To: mathgroup at smc.vnet.net
- Subject: [mg93147] Re: Two questions about DSolve
- From: Aaron Fude <aaronfude at gmail.com>
- Date: Wed, 29 Oct 2008 05:47:36 -0500 (EST)
- References: <gdug9e$jon$1@smc.vnet.net> <ge0t4f$75c$1@smc.vnet.net>
Thanks, Bob. That helps. But how do I find out what MeijerG[...] and HypergeometricPFQ[...] mean in terms of elementary functions? Thanks again, Aaron On Mon, Oct 27, 2008 at 10:28 PM, Bob Hanlon <hanlonr at cox.net> wrote: Send your questions to MathGroup. eqn = r^2 y''[r] + r y'[r] + (r^2 - m^2) y[r] == BesselJ[m, r]; soln = y[r] /. DSolve[eqn, y[r], r][[1]] // FullSimplify (BesselJ[-m, r]*Gamma[-m]*HypergeometricPFQ[{m, m + 1/2}, {m + 1, m + 1, 2*m + 1}, -r^2]*r^(2*m))/ (2^(2*(m + 1))*(m^2*Gamma[m])) - (1/8)*Pi*BesselJ[m, r]* Csc[m*Pi]*HypergeometricPFQRegularized[{1, 1, 3/2}, {2, 2, 2 - m, m + 2}, -r^2]*r^2 + BesselY[m, r]*C[2] + BesselJ[m, r]*(C[1] + Log[r]/(2*m)) Take the special case of m = 1 eqn21 = eqn /. m -> 1; soln21 = y[r] /. DSolve[eqn21, y[r], r][[1]] BesselJ[1, r]*C[1] + BesselY[1, r]*C[2] + (1/4)*((-Pi)*HypergeometricPFQ[{1/2}, {1, 2}, -r^2]* BesselY[1, r] + Pi*BesselY[1, r] + Sqrt[Pi]*BesselJ[1, r]*MeijerG[{{1/2}, {-(1/2)}}, {{0, 0}, {-1, -(1/2)}}, r, 1/2]) Choose the arbitrary constants to simplify the solution soln21 = soln21 /. {C[1] -> 0, C[2] -> 0} // FullSimplify (1/4)*(Sqrt[Pi]*BesselJ[1, r]*MeijerG[{{1/2}, {-(1/2)}}, {{0, 0}, {-1, -(1/2)}}, r, 1/2] - Pi*(BesselJ[0, r]^2 + BesselJ[1, r]^2 - 1)* BesselY[1, r]) Finding the limit as r -> 0 Needs["NumericalCalculus`"] NLimit[soln21, r -> 0, WorkingPrecision -> 20] 3.24*10^-7 Plot[soln21, {r, 0, 5}] Bob Hanlon ---- Aaron Fude <aaronfude at gmail.com> wrote: ============= Thanks Bob. Would you be able to help me in the case m is a positive integer? Obviously, I can't have Csc[m Pi]. Many thanks in advance, Aaron On Sat, Oct 25, 2008 at 12:08 PM, Bob Hanlon <hanlonr at cox.net> wrote: > $Version > > 6.0 for Mac OS X x86 (64-bit) (May 21, 2008) > > eqn = r^2 y''[r] + r y'[r] + (r^2 - m^2) y[r] == BesselJ[m, r]; > > soln = y[r] /. DSolve[eqn, y[r], r][[1]] // FullSimplify > > (BesselJ[-m, r]*Gamma[-m]* > HypergeometricPFQ[{m, m + 1/2}, {m + 1, m + 1, 2*m + 1}, -r^2]*r^(2*m))/ > (2^(2*(m + 1))*(m^2*Gamma[m])) - (1/8)*Pi*BesselJ[m, r]*Csc[m*Pi]* > HypergeometricPFQRegularized[{1, 1, 3/2}, {2, 2, 2 - m, m + 2}, -r^2]* > r^2 + BesselY[m, r]*C[2] + > BesselJ[m, r]*(C[1] + Log[r]/(2*m)) > > Set the arbitrary constant C[2] to zero to eliminate the BesselY term > > soln2 = soln /. C[2] -> 0; > > Looking for some special cases > > Limit[soln2 /. {m -> 1/2}, r -> 0] > > 0 > > soln2 /. m -> 1/2 // FullSimplify > > (Sqrt[2/Pi]*((C[1] + CosIntegral[2*r] - Log[2] - EulerGamma + 1)*Sin[r] - > Cos[r]*SinIntegral[2*r]))/ > Sqrt[r] > > Set the arbitrary constant C[1] to simplify soln2 > > sc1 = soln2 /. {m -> 1/2, C[1] -> Log[2] + EulerGamma - 1} // Simplify > > (Sqrt[2/Pi]*(CosIntegral[2*r]*Sin[r] - Cos[r]*SinIntegral[2*r]))/Sqrt[r] > > d1 = NestList[Simplify[D[#, r]] &, y[r] -> sc1, 2]; > > Verifying that the solution satisfies the equation > > eqn /. m -> 1/2 /. d1 // Simplify > > True > > Plot[sc1, {r, 0, 10}, Frame -> True, Axes -> False] > > Next special case > > Limit[soln2 /. m -> 3/2, r -> 0] > > 0 > > soln2 /. m -> 3/2 // FullSimplify > > (Sqrt[2/Pi]*((-9*C[1] + 3*Cos[2*r] - 3*CosIntegral[2*r] + Log[8] + > 3*EulerGamma - 10)* > (r*Cos[r] - Sin[r]) + > 3*(Cos[r] + r*Sin[r])*(Sin[2*r] - SinIntegral[2*r])))/(9*r^(3/2)) > > Set the arbitrary constant C[1] to simplify soln2 > > sc2 = soln2 /. {m -> 3/2, C[1] -> (Log[8] + 3 EulerGamma - 10)/9} // > FullSimplify > > (Sqrt[2/Pi]*(r*Cos[r] + Sin[r] + CosIntegral[2*r]*(Sin[r] - r*Cos[r]) - > (Cos[r] + r*Sin[r])*SinIntegral[2*r]))/(3*r^(3/2)) > > d2 = NestList[Simplify[D[#, r]] &, y[r] -> sc2, 2]; > > Verifying that the solution satisfies the equation > > eqn /. m -> 3/2 /. d2 // Simplify > > True > > Plot[sc2, {r, 0, 10}, Frame -> True, Axes -> False] > > > Bob Hanlon > > ---- Aaron Fude <aaronfude at gmail.com> wrote: > > ============= > Hi, > > My goal is to solve > > DSolve[r^2 y''[r] + r y'[r] + (r^2 - m^2) y[r] == BesselJ[m, r], > y[r], r] > > Question 1. Is there a way to tell Mathematica that I want the > solutions that are finite at r=0? > > Question 2. I get answers in terms of MeijerG. How does one obtain the > special form of this function from the special combination of > arguments. For example, I'm would like to learn what function > > MeijerG[{{1/2}, {-(1/2), 1}}, {{0, 0, 0}, {-(1/2), 0}}, r, 1/2] > > is in terms of more elementary functions. > > Many thanks in advance, > > Aaron > > > -- > > Bob Hanlon > > -- Bob Hanlon