COMPASS  5.4.4
End-to-end AO simulation tool using GPU acceleration
SutraStellarCoronagraph Class Reference

this class provides the coronograph features to COMPASS More...

#include <sutra_stellarCoronagraph.h>

Inheritance diagram for SutraStellarCoronagraph:
Collaboration diagram for SutraStellarCoronagraph:

Public Member Functions

 SutraStellarCoronagraph (CarmaContext *context, SutraSource *d_source, int im_dimx, int im_dimy, int fpm_dimx, int fpm_dimy, float *wavelength, int nWavelength, bool babinet, int device)
 
 ~SutraStellarCoronagraph ()=default
 
int compute_image (bool accumulate)
 
int compute_psf (bool accumulate)
 
int compute_image_normalization ()
 
int set_mft (cuFloatComplex *A, cuFloatComplex *B, float *norm, std::string mftType)
 
int set_focal_plane_mask (float *mask)
 
int set_apodizer (float *apodizer)
 
int set_lyot_stop (float *lyot_stop)
 
- Public Member Functions inherited from SutraCoronagraph
virtual ~SutraCoronagraph ()=default
 
int reset ()
 
int compute_electric_field (int wavelengthIndex)
 
int set_amplitude (float *amplitude)
 

Public Attributes

bool babinet
 
int fpmDimx
 
int fpmDimy
 
map< string, mftTupleAA
 
map< string, mftTupleBB
 
map< string, vector< float > > norm
 
map< string, tuple< CarmaObj< cuFloatComplex > *, vector< long > > > tmp_mft
 
CarmaObj< float > * d_lyot_stop
 
CarmaObj< float > * d_apodizer
 
vector< CarmaObj< float > * > focal_plane_mask
 
CarmaObj< cuFloatComplex > * d_electric_field_fpm
 
CarmaObj< cuFloatComplex > * d_electric_field_babinet
 
- Public Attributes inherited from SutraCoronagraph
int device
 
std::string type
 
long cntPsf
 
long cntImg
 
int imageDimx
 
int imageDimy
 
int pupDimx
 
int pupDimy
 
std::vector< float > wavelength
 
CarmaContextcurrent_context
 
CarmaObj< float > * d_image_se
 
CarmaObj< float > * d_image_le
 
CarmaObj< float > * d_psf_se
 
CarmaObj< float > * d_psf_le
 
std::vector< CarmaObj< float > * > amplitude
 
CarmaObj< cuFloatComplex > * d_electric_field
 
CarmaObj< cuFloatComplex > * d_complex_image
 
CarmaObj< float > * d_pupil
 
SutraSourced_source
 

Additional Inherited Members

- Protected Member Functions inherited from SutraCoronagraph
 SutraCoronagraph (CarmaContext *context, std::string type, SutraSource *d_source, int dimx, int dimy, float *wavelength, int nWavelength, int device)
 
int mft (CarmaObj< cuFloatComplex > *A, CarmaObj< cuFloatComplex > *B, CarmaObj< cuFloatComplex > *Ainput, CarmaObj< cuFloatComplex > *input, CarmaObj< cuFloatComplex > *output, float norm)
 

Detailed Description

this class provides the coronograph features to COMPASS

Author
COMPASS Team https://github.com/ANR-COMPASS
Version
5.4.4
Date
2022/01/24

Definition at line 32 of file sutra_stellarCoronagraph.h.

Constructor & Destructor Documentation

◆ SutraStellarCoronagraph()

SutraStellarCoronagraph::SutraStellarCoronagraph ( CarmaContext context,
SutraSource d_source,
int  im_dimx,
int  im_dimy,
int  fpm_dimx,
int  fpm_dimy,
float *  wavelength,
int  nWavelength,
bool  babinet,
int  device 
)

◆ ~SutraStellarCoronagraph()

SutraStellarCoronagraph::~SutraStellarCoronagraph ( )
default

Member Function Documentation

◆ compute_image()

int SutraStellarCoronagraph::compute_image ( bool  accumulate)
virtual

Implements SutraCoronagraph.

◆ compute_image_normalization()

int SutraStellarCoronagraph::compute_image_normalization ( )

◆ compute_psf()

int SutraStellarCoronagraph::compute_psf ( bool  accumulate)
virtual

Implements SutraCoronagraph.

Here is the caller graph for this function:

◆ set_apodizer()

int SutraStellarCoronagraph::set_apodizer ( float *  apodizer)

◆ set_focal_plane_mask()

int SutraStellarCoronagraph::set_focal_plane_mask ( float *  mask)

◆ set_lyot_stop()

int SutraStellarCoronagraph::set_lyot_stop ( float *  lyot_stop)

◆ set_mft()

int SutraStellarCoronagraph::set_mft ( cuFloatComplex *  A,
cuFloatComplex *  B,
float *  norm,
std::string  mftType 
)

Member Data Documentation

◆ AA

map<string, mftTuple> SutraStellarCoronagraph::AA

Definition at line 37 of file sutra_stellarCoronagraph.h.

◆ babinet

bool SutraStellarCoronagraph::babinet

Definition at line 34 of file sutra_stellarCoronagraph.h.

◆ BB

map<string, mftTuple> SutraStellarCoronagraph::BB

Definition at line 38 of file sutra_stellarCoronagraph.h.

◆ d_apodizer

CarmaObj<float>* SutraStellarCoronagraph::d_apodizer

Definition at line 43 of file sutra_stellarCoronagraph.h.

◆ d_electric_field_babinet

CarmaObj<cuFloatComplex>* SutraStellarCoronagraph::d_electric_field_babinet

Definition at line 46 of file sutra_stellarCoronagraph.h.

◆ d_electric_field_fpm

CarmaObj<cuFloatComplex>* SutraStellarCoronagraph::d_electric_field_fpm

Definition at line 45 of file sutra_stellarCoronagraph.h.

◆ d_lyot_stop

CarmaObj<float>* SutraStellarCoronagraph::d_lyot_stop

Definition at line 42 of file sutra_stellarCoronagraph.h.

◆ focal_plane_mask

vector<CarmaObj<float>*> SutraStellarCoronagraph::focal_plane_mask

Definition at line 44 of file sutra_stellarCoronagraph.h.

◆ fpmDimx

int SutraStellarCoronagraph::fpmDimx

Definition at line 35 of file sutra_stellarCoronagraph.h.

◆ fpmDimy

int SutraStellarCoronagraph::fpmDimy

Definition at line 36 of file sutra_stellarCoronagraph.h.

◆ norm

map<string, vector<float> > SutraStellarCoronagraph::norm

Definition at line 39 of file sutra_stellarCoronagraph.h.

◆ tmp_mft

map<string, tuple<CarmaObj<cuFloatComplex>*, vector<long> > > SutraStellarCoronagraph::tmp_mft

Definition at line 40 of file sutra_stellarCoronagraph.h.


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