Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

Note: In this question I am concerned only with real-valued variables and functions.


DLMF, §9.8 Airy Functions, Modulus and Phase, formula $9.8.4$ defines the phase of Airy functions: $$\theta(x)=\arctan\frac{\operatorname{Ai}x}{\operatorname{Bi}x}.$$ The corresponding Mathematica definition is

θ[x_] := ArcTan[AiryAi[x]/AiryBi[x]] 

Apparently, in this form the phase has a countable infinite number of jump discontinuities for negative values of $x$. I need to construct a Mathematica expression that represents a continuous monotonic version of the phase $\theta(x)$ (let's name it $\vartheta$), where all pieces between discontinuities are properly shifted and stitched, as shown on the following graph: Phases

One approach would be to get the derivative of $\theta(x)$: $$\theta'(x)=-\frac1\pi\frac1{\operatorname{Ai}^2 x+\operatorname{Bi}^2 x},$$ so that all information about jumps is lost, and then consider the definite integral: $$\vartheta(x)=\frac1\pi\int_x^\infty\frac{dz}{\operatorname{Ai}^2 z+\operatorname{Bi}^2 z}.$$ Or, in Mathematica notation:

1/π Integrate[1/(AiryAi[z]^2 + AiryBi[z]^2), {z, x, ∞}]

Unfortunately, Mathematica leaves this integral unevaluated, even if an explicit value for the boundary $x$ is provided.

Is it possible to write a closed-form Mathematica expression, possibly containing special functions, that represents the continuous monotonic phase $\vartheta(x)$?

share|improve this question
    
I'm just curious: why cite the wayback-machined DLMF instead of a direct link? The link is stable and should only change content if an erratum is discovered; barring government shutdowns it is as likely to last as the Wayback Machine. The How to Cite section asks for a direct link, too. –  episanty Apr 11 at 17:42
    
@episanty Thanks, I updated the link. When I wrote this post, DLMF was down due to government and NIST shutdown, so I only could use a cached version. –  Vladimir Reshetnikov Apr 12 at 7:28

1 Answer 1

up vote 14 down vote accepted
+250

Short story

$$ \vartheta(x) = \arg \left[(\operatorname{Bi}x+i \operatorname{Ai}x)e^{-\frac{2}{3} i (-x)^{3/2}}\right]+\frac{2}{3} \operatorname{Re}\left[(-x)^{3/2}\right] $$

Update: I see that you want use only real functions, so you can expand this as

$$ \vartheta(x) = \begin{cases} \arctan\frac{\cos \left(\frac{2}{3} (-x)^{3/2}\right) \operatorname{Ai}x-\sin \left(\frac{2}{3} (-x)^{3/2}\right) \operatorname{Bi}x}{\sin \left(\frac{2}{3} (-x)^{3/2}\right) \operatorname{Ai}x+\cos \left(\frac{2}{3} (-x)^{3/2}\right) \operatorname{Bi}x}+\frac{2}{3} (-x)^{3/2} & x<0 \\ \arctan \frac{\text{Ai}(x)}{\text{Bi}(x)} & x\geq 0 \end{cases} $$

Update 2: You can replace $-x$ by $(|x|-x)/2$ to get rid of the piecewise.

Long story

$$ \theta(x) = \arctan\frac{\operatorname{Ai}x}{\operatorname{Bi}x} = \arg(\operatorname{Bi}x+i \operatorname{Ai}x) $$

In the complex plane

ParametricPlot[Through@{Re, Im}[I AiryAi[x] + AiryBi[x]], {x, -100, 0}, PlotRange -> All]

enter image description here

There are a lot of turns arond the point $(0,0)$.

We know asymptotics of $\operatorname{Ai}x$ and $\operatorname{Bi}x$ at $x\to -\infty$

$$ \mathrm{Ai}(x) \sim \frac{\sin \left(\frac23(-x)^{\frac{3}{2}}+\frac{\pi}{4} \right)}{\sqrt\pi\,(-x)^{\frac{1}{4}}}, \quad \mathrm{Bi}(x) \sim \frac{\cos \left(\frac23(-x)^{\frac{3}{2}}+\frac{\pi}{4} \right)}{\sqrt\pi\,(-x)^{\frac{1}{4}}} $$

Therefore, let us multiply $\operatorname{Bi}x+i \operatorname{Ai}x$ by $\exp(-\frac{2}{3} i (-x)^{3/2})$

ParametricPlot[
  Through@{Re, Im}[(I AiryAi[x] + AiryBi[x]) Exp[-I 2/3 (-x)^(3/2)]], {x, -100, 0}, 
  PlotRange -> All]

enter image description here

Less then one turn!

After this we need to add the phase

$$ \arg \exp\left[\frac{2}{3} i (-x)^{3/2}\right] = \frac{2}{3} \operatorname{Re}\left[(-x)^{3/2}\right] $$

Finally,

θ[x_] := ArcTan[AiryAi[x]/AiryBi[x]]

phase[x_] := Arg[(I AiryAi[x] + AiryBi[x]) Exp[-I 2/3 (-x)^(3/2)]] + Re[2/3 (-x)^(3/2)]

Plot[{θ[x], phase[x]}, {x, -5, 5}, PlotRange -> All]

enter image description here

Real version of phase:

phaseRe[x_] := 
 Piecewise[{{ArcTan[
      AiryBi[x] Cos[2/3 (-x)^(3/2)] + AiryAi[x] Sin[2/3 (-x)^(3/2)], 
      AiryAi[x] Cos[2/3 (-x)^(3/2)] - AiryBi[x] Sin[2/3 (-x)^(3/2)]] + 2/3 (-x)^(3/2), 
    x < 0}, {ArcTan[AiryBi[x] , AiryAi[x]], x >= 0}}]
share|improve this answer
    
Thanks! This is exactly what I needed. –  Vladimir Reshetnikov Oct 20 '13 at 17:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.