GLAMERDOC++
Gravitational Lensing Code Library
Public Member Functions | Static Public Member Functions | List of all members
SourceOverzierPlus Class Reference

Adds some extra features to the SourceOverzier source like spiral arms, and randomizations. More...

#include <overzier_source.h>

Inheritance diagram for SourceOverzierPlus:
Inheritance graph
[legend]
Collaboration diagram for SourceOverzierPlus:
Collaboration graph
[legend]

Public Member Functions

 SourceOverzierPlus (PosType my_mag, PosType my_mag_bulge, Band band, PosType mag_zero_point, PosType my_Reff, PosType my_bulge_q, PosType my_bulge_index, PosType my_Rdisk, PosType my_PA, PosType inclination, unsigned long my_id, PosType my_z, const PosType *theta, Utilities::RandomNumbers_NR &ran)
 
 SourceOverzierPlus (PosType my_mag, PosType my_mag_bulge, Band band, PosType mag_zero_point, PosType my_Reff, PosType my_Rdisk, PosType my_PA, PosType inclination, unsigned long my_id, PosType my_z, const PosType *theta, Utilities::RandomNumbers_NR &ran)
 
 SourceOverzierPlus (const SourceOverzierPlus &p)
 
SourceOverzierPlusoperator= (const SourceOverzierPlus &p)
 
PosType SurfaceBrightness (const PosType *y) const
 Surface brightness in erg/cm^2/sec/rad^2/Hz. More...
 
void setMag (PosType my_mag, Band band, double zeropoint)
 magnitude in specific band
 
void setMagBulge (PosType my_mag, Band band, double zeropoint)
 magnitude in specific band
 
PosType getPA () const
 position angle in radians
 
void setPA (double pa)
 
int getNarms () const
 
PosType getArmAmplitude () const
 
PosType getArmAlpha () const
 
PosType getSphIndex () const
 
PosType getSphAxisRatio () const
 
void changeBand (Band band)
 change the working band
 
virtual void setTheta (PosType *xx)
 Reset the position of the source in radians.
 
virtual void setTheta (PosType my_x, PosType my_y)
 
virtual void setTheta (const Point_2d &p)
 
void setBulgeAxisRatio (PosType q)
 
void setBulgeSersicIndex (double index)
 
void randomize (Utilities::RandomNumbers_NR &ran)
 Randomly change some of the internal paramters and angles of the source.
 
- Public Member Functions inherited from SourceOverzier
 SourceOverzier (PosType mag, PosType mag_bulge, Band band, double zero_point, PosType Reff, PosType Rdisk, PosType PA, PosType inclination, unsigned long my_id, PosType my_z, const PosType *theta)
 
 SourceOverzier (const SourceOverzier &s)
 
SourceOverzieroperator= (const SourceOverzier &s)
 
void setInternals (PosType mag, PosType mag_bulge, Band band, PosType Reff, PosType Rdisk, PosType PA, PosType inclination, unsigned long my_id, PosType my_z, const PosType *my_theta)
 Sets internal variables. If default constructor is used this must be called before the surface brightness function.
 
PosType getTotalFlux () const
 
void printSource ()
 
PosType getMag () const
 get magnitude of whole galaxy. Which band this is in depends on which was passed in the constructor
 
PosType getMag (Band band) const
 
PosType getMagBulge () const
 
PosType getMagBulge (Band band) const
 
PosType getReff () const
 bulge half light radius in arcseconds
 
PosType getRdisk () const
 disk scale height in arcseconds
 
PosType getBtoT () const
 the bulge to total flux ratio
 
PosType getPA () const
 position angle in radians
 
PosType getInclination () const
 inclination in radians
 
float getSEDtype () const
 
void setSEDtype (float s)
 
PosType getMinSize (PosType f)
 
- Public Member Functions inherited from Source
 Source (PosType r, Point_2d x, PosType z, PosType SBlimit, PosType zero_point)
 shell constructor
 
 Source (const Source &s)
 
Sourceoperator= (const Source &s)
 
double SBlimit_magarcsec (double limit)
 convert mag/arcsec^2 to flux units
 
PosType getSBlimit ()
 Gets sb_limit in erg/cm^2/sec/rad^2/Hz.
 
PosType getSBlimit_magarcsec ()
 Gets sb_limit in mag/arcsec^2.
 
PosType getZ () const
 Redshift of source.
 
void setZ (PosType my_z)
 
PosType getRadius () const
 Radius of source in radians.
 
void setRadius (PosType my_radius)
 Reset the radius of the source in radians.
 
Point_2d getTheta () const
 position of source in radians
 
void getTheta (PosType *x) const
 position of source in radians
 
void getTheta (Point_2d &x) const
 position of source in radians
 
void setTheta (PosType *xx)
 Reset the position of the source in radians.
 
void setTheta (PosType my_x, PosType my_y)
 
void setTheta (const Point_2d &p)
 
void setSBlimit (float limit)
 Sets sb_limit in erg/cm^2/sec/rad^2/Hz.
 
void setMagZeroPoint (float zeropoint)
 
double getMagZeroPoint ()
 
PosType changeFilter (std::string filter_in, std::string filter_out, std::string sed)
 Calculates the difference in magnitude when changing the observing filter. More...
 
PosType integrateFilter (std::vector< PosType > wavel_fil, std::vector< PosType > fil)
 Calculates the integral of the filter curve given as an array of (x,y) values. More...
 
PosType integrateFilterSED (std::vector< PosType > wavel_fil, std::vector< PosType > fil, std::vector< PosType > wavel_sed, std::vector< PosType > sed)
 Calculates the integral of the sed multiplied by the filter curve. More...
 
double TEST_surface_brightness (double res, int N)
 test if flux in pixels matches total flux
 
long getID () const
 
void setID (long i)
 

Static Public Member Functions

static PosType * getx (SourceOverzierPlus &sourceo)
 
- Static Public Member Functions inherited from SourceOverzier
static PosType * getx (SourceOverzier &sourceo)
 
- Static Public Member Functions inherited from Source
static PosType * getx (Source &source)
 

Additional Inherited Members

- Protected Member Functions inherited from SourceOverzier
void renormalize_current ()
 
void assignParams (InputParams &params)
 
- Protected Member Functions inherited from Source
double flux_to_mag (double flux) const
 
- Protected Attributes inherited from SourceOverzier
SourceSersic spheroid
 
float sedtype = -1
 
Params current
 
- Protected Attributes inherited from Source
PosType source_r
 charactoristic source size
 
Point_2d source_x
 center of source
 
PosType zsource
 redshift of source
 
PosType sb_limit
 
long id
 
double mag_zero_point
 
- Static Protected Attributes inherited from SourceOverzier
static std::map< Band, PosType > zeropoints
 

Detailed Description

Adds some extra features to the SourceOverzier source like spiral arms, and randomizations.

Constructor & Destructor Documentation

◆ SourceOverzierPlus() [1/2]

SourceOverzierPlus::SourceOverzierPlus ( PosType  my_mag,
PosType  my_mag_bulge,
Band  band,
PosType  mag_zero_point,
PosType  my_Reff,
PosType  my_bulge_q,
PosType  my_bulge_index,
PosType  my_Rdisk,
PosType  my_PA,
PosType  inclination,
unsigned long  my_id,
PosType  my_z,
const PosType *  theta,
Utilities::RandomNumbers_NR ran 
)
Parameters
my_magtotal magnitude
my_mag_bulgemagnitude of bulge
mag_zero_pointmagnitude zero point
my_Reffeffective radius of bulge
my_bulge_qbulge axis ratio
my_bulge_indexbulge sersic index
my_Rdiskscale hight of disk
my_PAposition angle
inclinationinclination in radians
my_zredshift
thetaangular position

◆ SourceOverzierPlus() [2/2]

SourceOverzierPlus::SourceOverzierPlus ( PosType  my_mag,
PosType  my_mag_bulge,
Band  band,
PosType  mag_zero_point,
PosType  my_Reff,
PosType  my_Rdisk,
PosType  my_PA,
PosType  inclination,
unsigned long  my_id,
PosType  my_z,
const PosType *  theta,
Utilities::RandomNumbers_NR ran 
)
Parameters
my_magtotal magnitude
my_mag_bulgemagnitude of bulge
mag_zero_pointmagnitude zero point
my_Reffeffective radius of bulge
my_Rdiskscale hight of disk
my_PAposition angle
inclinationinclination in radians
my_zredshift
thetaangular position

Member Function Documentation

◆ SurfaceBrightness()

PosType SourceOverzierPlus::SurfaceBrightness ( const PosType *  y) const
virtual

Surface brightness in erg/cm^2/sec/rad^2/Hz.

Parameters
yposition in radians

Reimplemented from SourceOverzier.


The documentation for this class was generated from the following files: