       Re: << Getting all solutions from DSolve >>

• To: mathgroup at smc.vnet.net
• Subject: [mg85890] Re: << Getting all solutions from DSolve >>
• From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
• Date: Tue, 26 Feb 2008 07:57:04 -0500 (EST)
• Organization: Uni Leipzig
• References: <fq0uii\$kda\$1@smc.vnet.net>
• Reply-to: kuska at informatik.uni-leipzig.de

```Hi,

as you already observe, the Mathematica solution include
I and a quick look in a book about function
of mathematica physics show that

{
BesselJ[\[Nu]_, I z_] :> ((I z)^\[Nu] BesselI[\[Nu], z])/z^\[Nu],
BesselY[\[Nu]_, (-I) z_] :> -((2 BesselK[\[Nu],
z])/(Pi (-I)^\[Nu])) + ((2 (-I)^\[Nu])/
Pi) (Log[-((I z)/2)] - Log[z/2]) BesselI[\[Nu],
z] /; \[Nu] \[Element] Integers
}

and
<< VectorAnalysis`

sol = DSolve[
J + \[ScriptCapitalD]*
Laplacian[ns[Rr], Cylindrical[Rr, \[Theta], z]] -
ns[Rr]/\[Tau] == 0, ns[Rr], Rr]

sol1 = FullSimplify[sol /. {
BesselJ[\[Nu]_, I z_] :> ((I z)^\[Nu] BesselI[\[Nu], z])/z^\[Nu],
BesselY[\[Nu]_, (-I) z_] :> -((2 BesselK[\[Nu],
z])/(Pi (-I)^\[Nu])) + ((2 (-I)^\[Nu])/
Pi) (Log[-((I z)/2)] - Log[z/2]) BesselI[\[Nu],
z] /; \[Nu] \[Element] Integers},
Element[\[Nu], Integers] &&
Element[{Rr, \[ScriptCapitalD], \[Tau]}, Reals] &&
Rr > 0 && \[ScriptCapitalD] > 0 && \[Tau] > 0]

gives

{{ns[Rr] -> J*\[Tau] + BesselI[0,
Rr/Sqrt[\[ScriptCapitalD]*\[Tau]]]*(C - I*C) - (2*BesselK[0,
Rr/Sqrt[\[ScriptCapitalD]*\[Tau]]]*C)/Pi}}

and only the free constants C and C must be redefined
to match the "solution published in a scientific journal paper"
perfect.

And so, Mathematica has already "all the possible solutions" and
you need to get some more knowlege on special functions.

Regards
Jens

Hatuey Hack wrote:
> Hello,
>
> I am trying to solve a diffusion problem using the following equation (in
> cylindrical coordinates):
>
> DSolve[J + D*Laplacian[ns[Rr]] - ns[Rr]/\[Tau] == 0, ns, Rr]
>
>
> The solution published in a scientific journal paper was:
>
> Paper = J*\[Tau] + BesselI[0, Rr/Sqrt[D/\[Tau]]]*C + BesselK[0,
> Rr/Sqrt[D/\[Tau]]]*C
>
> The solution from DSolve was:
>
> My = J*\[Tau] + BesselI[0, Rr/Sqrt[D/\[Tau]]]*C + BesselY[0,
> -I*Rr/Sqrt[D/\[Tau]])]*C
>
> So, the two solutions are very different, one is a real function (Paper) and
> the other one is a complex function (My).
>
> I would like to know how can I "force" DSolve to give me all the possible
> solutions or at less a constrained solution (something like give me only the
> real ones).
>
> My system: Mathematica 6, Linux
>
> Thanks in advance.
>
> Hatuey
>
>

```

• Prev by Date: PointSize (and shape) frustration
• Next by Date: Re: Branch Cuts and NDSolve
• Previous by thread: << Getting all solutions from DSolve >>
• Next by thread: Re: How to import a Matlab mat-file