GLAMERDOC++
Gravitational Lensing Code Library
|
A NSIE lens with distortions in shape, substructures and stars included. More...
#include <analytic_lens.h>
Public Member Functions | |
~LensHaloAnaNSIE () | |
Creates a AnaLens which initially has no mass, Use FindLensSimple() to give it mass. | |
void | assignParams (InputParams ¶ms) |
Reads in a parameter file and sets up an analytic lens. | |
void | PrintLens (bool show_substruct, bool show_stars) |
void | setCosmology (const COSMOLOGY &cosmo) |
Sets parameters within BaseLens that depend on the source redshift - Dl,Sigma_crit,etc. | |
void | RandomizeHost (long *seed, bool tables) |
void | RandomizeSigma (long *seed, bool tables) |
void | RandomlyDistortLens (long *seed, int Nmodes) |
void | AlignedRandomlyDistortLens (long *seed, double theta, int n) |
virtual PosType | get_sigma () |
get the velocity dispersion | |
virtual PosType | get_fratio () |
get the NSIE radius | |
virtual PosType | get_pa () |
get the position angle | |
virtual PosType | get_rcore () |
get the core radius | |
A NSIE lens with distortions in shape, substructures and stars included.
The lens consists of a "host" lens which is a non-singular isothermal ellipsoid (NSIE) plus axial distortion modes, substructures and stars. LensHaloAnaNSIE differs from a LensHaloBaseNSIE in that there are additional functions for fitting the lens to image positions and for giving the lens random substructures and distortions.
Input Parameters: **** NSIE parameters main_sigma Velocity dispersion of host NSIE. main_core Core size main_axis_ratio Axis ratio of mass main_pos_angle Position angle in radiants main_z_lens Redshift of lens **** Distortion parameters main_NDistortionModes Number of distortion modes to be used. If zero the other distortion parameters are not needed. main_perturb_beta kappa_peturb gamma_peturb monopole_peturb quadrapole_peturb hexopole_peturb octopole_peturb **** Substructure parameters main_sub_Ndensity Number density of substructures. They are distributed uniformly. If zero the other substructure parameters are not needed. main_sub_beta Logarithmic slope of the internal clump profile. Used if main_sub_type == powerlaw main_sub_alpha Logarithmic slope of the mass function. main_sub_Rsize Maximum radius of most massive substructure (see Metcalf & Amara 2012) main_sub_mass_max Maximum mass main_sub_mass_min Minimum mass main_sub_type Mass profile of clumps - 0 or nfw,1 or powerlaw, 2 or pointmass **** Stars parameters main_stars_N Total number of stars that will be used in the simulation. If zero the other star parameters are not needed. main_stars_fraction Fraction of surface density in stars. main_stars_mass Mass of stars. The stars are not initially present. They must be implanted later. *
void LensHaloAnaNSIE::AlignedRandomlyDistortLens | ( | long * | seed, |
double | theta, | ||
int | Npole ) |
\ingEinstein_roup ChangeLens
make a random realization of the perturbations to the lens the normalization is such that the rms maximum surface density of the k-th mode is rms[i] times the surface density of the host at the Einstein radius if it were a SIS, if beta=1 this is true at all radii. This is for randomly distorting a mode but maintaining its alignment with the ellipticity for example.
void LensHaloAnaNSIE::assignParams | ( | InputParams & | params | ) |
Reads in a parameter file and sets up an analytic lens.
Sets many parameters within the lens model, source model and force calculation.
|
inlinevirtual |
get the NSIE radius
get the axis ratio
void LensHaloAnaNSIE::RandomlyDistortLens | ( | long * | seed, |
int | Nmodes ) |
\ingEinstein_roup ChangeLens
|
virtual |
Sets parameters within BaseLens that depend on the source redshift - Dl,Sigma_crit,etc.
Reimplemented from LensHalo.