routines for calculating the lensing properties of a non-singular isothermal ellipsoid written by R.B. Metcalf, March 18, 2009 based on the analytic solutions of Kormann et al. 1993 convention here is gamma_1 = -(Axx-Ayy)/2 and gamma_2= -Axy
More...
#include "base_analens.h"
#include <complex>
void alphaNSIE (PosType *alpha, PosType const *xt, PosType f, PosType bc, PosType theta)
Deflection angle for non-singular isothermal ellipsoid in units of Einstein radii.
KappaType kappaNSIE (PosType const *xt, PosType f, PosType bc, PosType theta)
Convergence for non-singular isothermal ellipsoid, units or .
void gammaNSIE (KappaType *gam, PosType const *xt, PosType f, PosType bc, PosType theta)
Shear for non-singular isothermal ellipsoid, units or .
PosType rmaxNSIE (PosType sigma, PosType mass, PosType f, PosType rc)
Elliptical radius of a NonSingular Isothermal Ellipsoid.
PosType ellipticRadiusNSIE (PosType const *x, PosType f, PosType pa)
Elliptical radius given f and position angle of model.
KappaType invmagNSIE (PosType *x, PosType f, PosType bc, PosType theta, KappaType *gam, KappaType kap)
void Utilities::rotation (float *xout, float *xin, PosType theta)
Rotates 2 dimensional point without changing input point.
void Utilities::rotation (PosType *xout, PosType const *xin, PosType theta)
Rotates 2 dimensional point without changing input point.
void quadMomNSIE (float mass, float Rsize, float f, float rc, float theta, PosType *quad)
routines for calculating the lensing properties of a non-singular isothermal ellipsoid written by R.B. Metcalf, March 18, 2009 based on the analytic solutions of Kormann et al. 1993 convention here is gamma_1 = -(Axx-Ayy)/2 and gamma_2= -Axy
◆ alphaNSIE()
void alphaNSIE
(
PosType * alpha ,
PosType const * xt ,
PosType f ,
PosType bc ,
PosType theta )
Deflection angle for non-singular isothermal ellipsoid in units of Einstein radii.
Parameters
alpha Deflection angle in units of the Einstein radius
xt position on the image plane in Einstein radius units
f axis ratio of mass
bc core size in same units as alpha
theta position angle of ellipsoid
◆ gammaNSIE()
void gammaNSIE
(
KappaType * gam ,
PosType const * xt ,
PosType f ,
PosType bc ,
PosType theta )
Shear for non-singular isothermal ellipsoid, units or .
Parameters
gam output shear
xt position on the image plane in Einstein radius units
f axis ratio of mass
bc core size in units of Einstein radius
theta position angle of ellipsoid
◆ kappaNSIE()
KappaType kappaNSIE
(
PosType const * xt ,
PosType f ,
PosType bc ,
PosType theta )
Convergence for non-singular isothermal ellipsoid, units or .
Parameters
xt position on the image plane in Einstein radius units
f axis ratio of mass
bc core size in units of Einstein radius
theta position angle of ellipsoid
◆ quadMomNSIE()
void quadMomNSIE
(
float mass ,
float Rsize ,
float f ,
float rc ,
float theta ,
PosType * quad )
Quadropole moment of an elliptically truncated NSIE Units are unit[mass]*unit[Rsize]^2
Parameters
mass total mass
Rsize elliptical maximum radius
f axis ratio of mass
rc core size in same units as Rsize
theta position angle of ellipsoid
quad output
◆ rmaxNSIE()
PosType rmaxNSIE
(
PosType sigma ,
PosType mass ,
PosType f ,
PosType rc )
Elliptical radius of a NonSingular Isothermal Ellipsoid.
Parameters
sigma velocity dispersion in km/s
mass mass in Msun
f axis ratio
rc core radius Mpc