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

Class for reading in and handling an array of SourceShapelets, made on the model of SourceMultiAnaGalaxy Galaxies are read from files in a predifined directory and put into a std::vector that allows sorting in redshift and magnitude. An individual object can be get via CurrentGalaxy() or the overloaded operator []. More...

#include <sourceAnaGalaxy.h>

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

Public Member Functions

 SourceMultiShapelets (double mag_zero_point)
 
 SourceMultiShapelets (const std::string &my_shapelets_folder, Band my_band, double my_max_mag_limit, double my_min_mag_limit, double my_z_max, double my_sb_limit, double maximum_radius, double zero_point)
 Reads in sources from a catalog. More...
 
void input (const std::string &my_shapelets_folder, Band my_band, double my_max_mag_limit, double my_min_mag_limit, double my_z_max, double my_sb_limit, double maximum_radius, double zero_point)
 
void sortInRedshift ()
 Sort the sources by redshift in assending order.
 
void sortInMag ()
 Sort the sources by magnitude in assending order.
 
PosType SurfaceBrightness (const PosType *x) const
 Surface brightness of current galaxy.
 
void printSource ()
 Print info on current source parameters.
 
std::size_t getNumberOfGalaxies () const
 
std::size_t size () const
 number of galaxies
 
PosType getTotalFlux () const
 Total flux coming from the current galaxy in erg/sec/Hz/cm^2.
 
Point_2d getTheta () const
 Return angular position of current source.
 
void setTheta (PosType my_theta[2])
 Set angular position of current source.
 
void setTheta (PosType my_x, PosType my_y)
 
void setTheta (const Point_2d &p)
 
PosType getZ () const
 Return redshift of current source.
 
PosType getRadius () const
 
SourceShapeletssetIndex (std::size_t i)
 
size_t getIndex () const
 
SourceShapeletsoperator[] (std::size_t i)
 
SourceShapeletsback ()
 
const SourceShapeletsoperator[] (std::size_t i) const
 
SourceShapeletsCurrentGalaxy ()
 
SourceShapeletssetBand (Band b, double zeropoint)
 Sets the active band for all the objects.
 
int locateZ (PosType z) const
 If the sources are already sorted by redshift this will find the index of the first galaxy with redshift above z.
 
int getCurrentID ()
 
- 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)
 

Public Attributes

std::vector< SourceShapeletsgalaxies
 

Additional Inherited Members

- Static Public Member Functions inherited from Source
static PosType * getx (Source &source)
 
- Protected Member Functions inherited from Source
double flux_to_mag (double flux) const
 
- 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
 

Detailed Description

Class for reading in and handling an array of SourceShapelets, made on the model of SourceMultiAnaGalaxy Galaxies are read from files in a predifined directory and put into a std::vector that allows sorting in redshift and magnitude. An individual object can be get via CurrentGalaxy() or the overloaded operator [].

Constructor & Destructor Documentation

◆ SourceMultiShapelets()

SourceMultiShapelets::SourceMultiShapelets ( const std::string &  my_shapelets_folder,
Band  my_band,
double  my_max_mag_limit,
double  my_min_mag_limit,
double  my_z_max,
double  my_sb_limit,
double  maximum_radius,
double  zero_point 
)

Reads in sources from a catalog.

Parameters
my_shapelets_folderdirectory where shapelet files are located
my_bandband that will be used as default
my_max_mag_limitmagnitude limit in that band
my_min_mag_limitmagnitude limit in that band
my_z_maxmaximum redshift
my_sb_limitsurface brightness limit
maximum_radiusmaximum radius (as defined in shapelet expansion) in radians
zero_pointmagnitude zreo point

Member Function Documentation

◆ input()

void SourceMultiShapelets::input ( const std::string &  my_shapelets_folder,
Band  my_band,
double  my_max_mag_limit,
double  my_min_mag_limit,
double  my_z_max,
double  my_sb_limit,
double  maximum_radius,
double  zero_point 
)

maximum redshift

Parameters
my_shapelets_folderdirectory where shapelet files are located
my_bandband that will be used as default
my_max_mag_limitmagnitude limit in that band
my_min_mag_limitmagnitude limit in that band
my_z_maxmaximum redshift
my_sb_limitsurface brightness limit
maximum_radiusmaximum radius (as defined in shapelet expansion) in radians
zero_pointmagnitude zero point

◆ operator[]()

SourceShapelets& SourceMultiShapelets::operator[] ( std::size_t  i)
inline

The indexing operator can be used to change the "current" source that is returned when the surface brightness is subsequently called.

◆ setIndex()

SourceShapelets& SourceMultiShapelets::setIndex ( std::size_t  i)
inline

Used to change the "current" source that is returned when the surface brightness is subsequently called.


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