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

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

#include <sutra_lgs.h>

Collaboration diagram for SutraLGS:

Public Member Functions

 SutraLGS (CarmaContext *context, CarmaObj< float > *d_lgskern, CarmaObj< cuFloatComplex > *d_ftlgskern, map< vector< int >, cufftHandle * > ftlgskern_plans, long nvalid, long npix, long nmaxhr)
 
 ~SutraLGS ()
 
int lgs_init (int nprof, float hg, float h0, float deltah, float pixsie, float *doffaxis, float *prof1d, float *profcum, float *beam, cuFloatComplex *ftbeam, float *azimuth)
 
int load_prof (float *prof1d, float *profcum, float hg, float h0, float deltah)
 
int lgs_update (CarmaDevice *device)
 
int lgs_makespot (CarmaDevice *device, int nin)
 
int load_kernels (float *h_lgskern, CarmaDevice *device)
 

Public Attributes

int device
 
long nvalid
 
long npix
 
long nmaxhr
 
float hg
 
float h0
 
float deltah
 
float pixsize
 
long nprof
 
cufftHandle * ftlgskern_plan
 
CarmaObj< float > * d_doffaxis
 
CarmaObj< float > * d_azimuth
 
CarmaObj< float > * d_prof1d
 
CarmaObj< float > * d_profcum
 
CarmaObj< cuFloatComplex > * d_prof2d
 
CarmaObj< float > * d_beam
 
CarmaObj< cuFloatComplex > * d_ftbeam
 
CarmaObj< float > * d_lgskern
 
CarmaObj< cuFloatComplex > * d_ftlgskern
 
CarmaContextcurrent_context
 

Detailed Description

this class provides the lgs features to COMPASS

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

Definition at line 28 of file sutra_lgs.h.

Constructor & Destructor Documentation

◆ SutraLGS()

SutraLGS::SutraLGS ( CarmaContext context,
CarmaObj< float > *  d_lgskern,
CarmaObj< cuFloatComplex > *  d_ftlgskern,
map< vector< int >, cufftHandle * >  ftlgskern_plans,
long  nvalid,
long  npix,
long  nmaxhr 
)

◆ ~SutraLGS()

SutraLGS::~SutraLGS ( )

Member Function Documentation

◆ lgs_init()

int SutraLGS::lgs_init ( int  nprof,
float  hg,
float  h0,
float  deltah,
float  pixsie,
float *  doffaxis,
float *  prof1d,
float *  profcum,
float *  beam,
cuFloatComplex *  ftbeam,
float *  azimuth 
)

◆ lgs_makespot()

int SutraLGS::lgs_makespot ( CarmaDevice device,
int  nin 
)

◆ lgs_update()

int SutraLGS::lgs_update ( CarmaDevice device)

◆ load_kernels()

int SutraLGS::load_kernels ( float *  h_lgskern,
CarmaDevice device 
)

◆ load_prof()

int SutraLGS::load_prof ( float *  prof1d,
float *  profcum,
float  hg,
float  h0,
float  deltah 
)

Member Data Documentation

◆ current_context

CarmaContext* SutraLGS::current_context

Definition at line 51 of file sutra_lgs.h.

◆ d_azimuth

CarmaObj<float>* SutraLGS::d_azimuth

Definition at line 42 of file sutra_lgs.h.

◆ d_beam

CarmaObj<float>* SutraLGS::d_beam

Definition at line 46 of file sutra_lgs.h.

◆ d_doffaxis

CarmaObj<float>* SutraLGS::d_doffaxis

Definition at line 41 of file sutra_lgs.h.

◆ d_ftbeam

CarmaObj<cuFloatComplex>* SutraLGS::d_ftbeam

Definition at line 47 of file sutra_lgs.h.

◆ d_ftlgskern

CarmaObj<cuFloatComplex>* SutraLGS::d_ftlgskern

Definition at line 49 of file sutra_lgs.h.

◆ d_lgskern

CarmaObj<float>* SutraLGS::d_lgskern

Definition at line 48 of file sutra_lgs.h.

◆ d_prof1d

CarmaObj<float>* SutraLGS::d_prof1d

Definition at line 43 of file sutra_lgs.h.

◆ d_prof2d

CarmaObj<cuFloatComplex>* SutraLGS::d_prof2d

Definition at line 45 of file sutra_lgs.h.

◆ d_profcum

CarmaObj<float>* SutraLGS::d_profcum

Definition at line 44 of file sutra_lgs.h.

◆ deltah

float SutraLGS::deltah

Definition at line 36 of file sutra_lgs.h.

◆ device

int SutraLGS::device

Definition at line 30 of file sutra_lgs.h.

◆ ftlgskern_plan

cufftHandle* SutraLGS::ftlgskern_plan

Definition at line 40 of file sutra_lgs.h.

◆ h0

float SutraLGS::h0

Definition at line 35 of file sutra_lgs.h.

◆ hg

float SutraLGS::hg

Definition at line 34 of file sutra_lgs.h.

◆ nmaxhr

long SutraLGS::nmaxhr

Definition at line 33 of file sutra_lgs.h.

◆ npix

long SutraLGS::npix

Definition at line 32 of file sutra_lgs.h.

◆ nprof

long SutraLGS::nprof

Definition at line 38 of file sutra_lgs.h.

◆ nvalid

long SutraLGS::nvalid

Definition at line 31 of file sutra_lgs.h.

◆ pixsize

float SutraLGS::pixsize

Definition at line 37 of file sutra_lgs.h.


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