Point Mass ¶ ψ = R E 2 D L 2 ln ξ R E \begin{aligned}
\psi = \frac{R_E^2}{D_L^2}\ln \frac{\xi}{R_E}
\end{aligned} ψ = D L 2 R E 2 ln R E ξ SIS (Singular isothermal sphere) ¶ The following expression for ψ \psi ψ is implemented in amplitudes.py
ψ S I S ( x , y ) = − R E D L 2 ⋅ x 2 + y 2 \begin{aligned}
\psi^\mathrm{SIS}(x,y) = - \frac{R_E}{D_L^2}\cdot\sqrt{x^2+y^2}
\end{aligned} ψ SIS ( x , y ) = − D L 2 R E ⋅ x 2 + y 2 The sign causes some confusion, and we need to check if also SIE below needs a
negative sign.
In practice, we omit the (constant) factor D L D_L D L in the implementation.
In other words, what is called einsteinR in the code, is the quantity
C 0 = R E / D L 2 C_0=R_E/D_L^2 C 0 = R E / D L 2 . Thus the deflection is given as
∂ ψ ∂ x = C 0 ⋅ x x 2 + y 2 ∂ ψ ∂ y = C 0 ⋅ y x 2 + y 2 \begin{aligned}
\frac{\partial\psi}{\partial x} &= C_0\cdot\frac{x}{\sqrt{x^2+y^2}}\\\\\\\\
\frac{\partial\psi}{\partial y} &= C_0\cdot\frac{y}{\sqrt{x^2+y^2}}
\end{aligned} ∂ x ∂ ψ ∂ y ∂ ψ = C 0 ⋅ x 2 + y 2 x = C 0 ⋅ x 2 + y 2 y The differentiation is straight forward.
See psiXvalue and psiYvalue in SIS.cpp.
Roulette amplitudes are calculated using the recursive formulæ.
SIE ¶ ψ ξ 0 , f , θ , D L SIE(R) ( R , ϕ ) = ξ 0 D L 2 f 1 − f 2 R ⋅ ( [ sin ( ϕ − θ ) ] ⋅ sin − 1 ( 1 − f 2 ⋅ sin ( ϕ − θ ) ) + [ cos ( ϕ − θ ) ] ⋅ sinh − 1 ( 1 − f 2 f cos ( ϕ − θ ) ) ) . \begin{aligned}
\begin{split}
\psi_{\xi_0,f,\theta,D_\mathrm{L}}^\textrm{SIE(R)}(R,\phi) =
\frac{\xi_0}{D_\textrm{L}^2}\sqrt{\frac{f}{1-f^2}}R\cdot
&\Bigg([\sin(\phi-\theta)]\cdot\sin^{-1}\left(\sqrt{1-f^2}\cdot \sin{(\phi-\theta)}\right)
\\\\&
+[\cos(\phi-\theta)]\cdot\sinh^{-1}\left(\frac{\sqrt{1-f^2}}{f}\cos(\phi-\theta)\right)\Bigg).
\end{split}
\end{aligned} ψ ξ 0 , f , θ , D L SIE(R) ( R , ϕ ) = D L 2 ξ 0 1 − f 2 f R ⋅ ( [ sin ( ϕ − θ )] ⋅ sin − 1 ( 1 − f 2 ⋅ sin ( ϕ − θ ) ) + [ cos ( ϕ − θ )] ⋅ sinh − 1 ( f 1 − f 2 cos ( ϕ − θ ) ) ) . where ( R , ϕ ) (R,\phi) ( R , ϕ ) are the polar coordinates in the lens plane, i.e.
$$
( x , y ) = R ⋅ ( sin ϕ , cos ϕ ) . (x,y) = R\cdot (\sin\phi,\cos\phi). ( x , y ) = R ⋅ ( sin ϕ , cos ϕ ) . $$
The deflection is given as
∂ ψ ∂ x = C 0 ⋅ f 1 − f 2 ⋅ ( cos θ ⋅ sinh − 1 ( 1 − f 2 f x ′ R ) − sin θ ⋅ sin − 1 ( 1 − f 2 y ′ R ) ) ∂ ψ ∂ y = C 0 ⋅ f 1 − f 2 ⋅ ( sin θ ⋅ sinh − 1 ( 1 − f 2 f x ′ R ) + cos θ ⋅ sin − 1 ( 1 − f 2 y ′ R ) ) \begin{aligned}
\frac{\partial\psi}{\partial x} &=
C_0\cdot\frac{\sqrt{f}}{\sqrt{1-f^2}}\cdot\big(
\cos\theta\cdot\sinh^{-1}(\frac{\sqrt{1-f^2}}{f}\frac{x'}{R})
- \sin\theta\cdot\sin^{-1}(\sqrt{1-f^2}\frac{y'}{R})
\big)
\\\\\\\\
\frac{\partial\psi}{\partial y} &=
C_0\cdot\frac{\sqrt{f}}{\sqrt{1-f^2}}\cdot\big(
\sin\theta\cdot\sinh^{-1}(\frac{\sqrt{1-f^2}}{f}\frac{x'}{R})
+ \cos\theta\cdot\sin^{-1}(\sqrt{1-f^2}\frac{y'}{R})
\big)
\end{aligned} ∂ x ∂ ψ ∂ y ∂ ψ = C 0 ⋅ 1 − f 2 f ⋅ ( cos θ ⋅ sinh − 1 ( f 1 − f 2 R x ′ ) − sin θ ⋅ sin − 1 ( 1 − f 2 R y ′ ) ) = C 0 ⋅ 1 − f 2 f ⋅ ( sin θ ⋅ sinh − 1 ( f 1 − f 2 R x ′ ) + cos θ ⋅ sin − 1 ( 1 − f 2 R y ′ ) ) where
x ′ = cos θ ⋅ x + sin θ ⋅ y y ′ = − sin θ ⋅ x + cos θ ⋅ y R = x 2 + y 2 \begin{aligned}
x' &= \cos\theta\cdot x + \sin\theta\cdot y
\\\\\\\\
y' &= -\sin\theta\cdot x + \cos\theta\cdot y
\\\\\\\\
R &= \sqrt{x^2+y^2}
\end{aligned} x ′ y ′ R = cos θ ⋅ x + sin θ ⋅ y = − sin θ ⋅ x + cos θ ⋅ y = x 2 + y 2 As for SIS, C 0 = R E / D L 2 C_0=R_E/D_L^2 C 0 = R E / D L 2 is called einsteinR in the code.
See psiXvalue and psiYvalue in SIE.cpp.