ODE change of vars

  • Thread starter robousy
  • Start date
  • #1
334
1

Main Question or Discussion Point

Hey,

I'm reading the paper:

http://arxiv.org/abs/hep-ph/9907218

They have an ODE (eqn 7):

[tex]-\frac{1}{r^2}\frac{d}{d\phi}e^{-4kr\phi}\frac{dy_n}{d\phi}+m^2e^{-4kr\phi}y_n=m^2_ne^{-2kr\phi}y_n[/tex]

They then make a change of variables:
[tex]z_n=\frac{m_n}{k}e^{kr\phi}[/tex]
[tex]f_n=e^{-2kr\phi}y_n[/tex]

Then the ODE becomes:

[tex]z_n^2\frac{d^2f_n}{dz_n^2}+z_n\frac{df_n}{dz_n}+(z_n^2-[4+\frac{m^2}{k^2}])f_n=0[/tex]

My question is regarding this change of variables:

How do you 'know' how to change the variables so that the ODE comes out as this tiday Bessel function. Is this an art almost, or is there some kind of technique??

Looking foward to gaining some insight here.

Richard
 

Answers and Replies

  • #2
6
0
I use the following "cheating" technique in my research:
Solve the equation in Mathematica. Look at the arguments of Bessel function etc that is gives and make the necessary substitutions :)
This method works for your equation, Mathematica 6 gives the solution (f_n) in terms of BesselJ functions of the argument (z_n).
 
  • #3
334
1
Nice. I like it. I like it a lot. Thanks avalonme. I'll try it first thing tomorrow. Its been bugging me for about a week now.

Rich
 
  • #4
334
1
say, did you try this avalonme? Also do you use DSolve? I plugged in the above formula and get exponential solutions, not the bessel function soltn I was expecting.
 
  • #5
6
0
That's what I did: you can directly copy this to Mathematica 6.

Cell[CellGroupData[{Cell[BoxData[
RowBox[{
RowBox[{"DSolve", "[",
RowBox[{
RowBox[{
RowBox[{
RowBox[{
RowBox[{"-",
FractionBox["1",
SuperscriptBox["r", "2"]]}],
RowBox[{"D", "[",
RowBox[{
RowBox[{
RowBox[{"Exp", "[",
RowBox[{
RowBox[{"-", "4"}], "k", " ", "r", " ", "\[Phi]"}], "]"}],

RowBox[{
RowBox[{"y", "'"}], "[", "\[Phi]", "]"}]}], ",",
"\[Phi]"}], "]"}]}], "+",
RowBox[{
SuperscriptBox["m", "2"],
RowBox[{"Exp", "[",
RowBox[{
RowBox[{"-", "4"}], "k", " ", "r", " ", "\[Phi]"}], "]"}],
RowBox[{"y", "[", "\[Phi]", "]"}]}]}], "\[Equal]",
RowBox[{
SuperscriptBox["mn", "2"],
RowBox[{"Exp", "[",
RowBox[{
RowBox[{"-", "2"}], " ", "k", " ", "r", " ", "\[Phi]"}],
"]"}],
RowBox[{"y", "[", "\[Phi]", "]"}]}]}], ",",
RowBox[{"y", "[", "\[Phi]", "]"}], ",", "\[Phi]"}], "]"}], "[",
RowBox[{"[", "1", "]"}], "]"}]], "Input",
CellChangeTimes->{{3.4173143524375*^9, 3.417314453640625*^9}, {
3.417314484921875*^9, 3.417314486453125*^9}}],

Cell[BoxData[
RowBox[{"{",
RowBox[{
RowBox[{"y", "[", "\[Phi]", "]"}], "\[Rule]",
RowBox[{
RowBox[{
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "k", " ", "r", " ", "\[Phi]"}]], " ",
RowBox[{"BesselJ", "[",
RowBox[{
RowBox[{"-",
FractionBox[
SqrtBox[
RowBox[{
RowBox[{"4", " ",
SuperscriptBox["k", "2"]}], "+",
SuperscriptBox["m", "2"]}]], "k"]}], ",",
FractionBox[
RowBox[{"mn", " ",
SqrtBox[
RowBox[{
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "k", " ", "r", " ", "\[Phi]"}]], " ",
SuperscriptBox["r", "2"]}]]}],
RowBox[{"k", " ", "r"}]]}], "]"}], " ",
RowBox[{"C", "[", "1", "]"}], " ",
RowBox[{"Gamma", "[",
RowBox[{"1", "-",
FractionBox[
SqrtBox[
RowBox[{
RowBox[{"4", " ",
SuperscriptBox["k", "2"]}], "+",
SuperscriptBox["m", "2"]}]], "k"]}], "]"}]}], "+",
RowBox[{
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "k", " ", "r", " ", "\[Phi]"}]], " ",
RowBox[{"BesselJ", "[",
RowBox[{
FractionBox[
SqrtBox[
RowBox[{
RowBox[{"4", " ",
SuperscriptBox["k", "2"]}], "+",
SuperscriptBox["m", "2"]}]], "k"], ",",
FractionBox[
RowBox[{"mn", " ",
SqrtBox[
RowBox[{
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "k", " ", "r", " ", "\[Phi]"}]], " ",
SuperscriptBox["r", "2"]}]]}],
RowBox[{"k", " ", "r"}]]}], "]"}], " ",
RowBox[{"C", "[", "2", "]"}], " ",
RowBox[{"Gamma", "[",
RowBox[{"1", "+",
FractionBox[
SqrtBox[
RowBox[{
RowBox[{"4", " ",
SuperscriptBox["k", "2"]}], "+",
SuperscriptBox["m", "2"]}]], "k"]}], "]"}]}]}]}],
"}"}]], "Output",
CellChangeTimes->{{3.417314442578125*^9, 3.417314453890625*^9},
3.417314487515625*^9}]
}, Open ]]
 
  • #6
334
1
Thanks. When I saw the result it put a huge smile on my face! This is great. One extra (and important) piece in a big puzzle I'm trying to put together.

I compared my short code against yours and the only difference was that I took the derivative of the first term in the expression by hand before putting into mathematica. Hmmmm, I thought I could differentiate...

Incidently I checked out your homepage. I'm in high energy at Baylor in Texas, but a guy I share an office with is into Plasma physics. Some nice papers you have out.

Richard
 

Related Threads on ODE change of vars

Replies
8
Views
957
Replies
1
Views
3K
Replies
0
Views
2K
  • Last Post
Replies
2
Views
3K
  • Last Post
Replies
5
Views
2K
Replies
2
Views
1K
Replies
1
Views
2K
  • Last Post
Replies
13
Views
4K
Replies
2
Views
1K
Replies
2
Views
2K
Top