COMPASS  5.4.4
End-to-end AO simulation tool using GPU acceleration
sutraWrap.Sensors Class Reference
Collaboration diagram for sutraWrap.Sensors:

Public Member Functions

None __init__ (self, carmaWrap.context context, Telescope d_tel, typing.List[str] type, int nwfs, numpy.ndarray[numpy.int64] nxsub, numpy.ndarray[numpy.int64] nvalid, numpy.ndarray[numpy.int64] npupils, numpy.ndarray[numpy.int64] npix, numpy.ndarray[numpy.int64] nphase, numpy.ndarray[numpy.int64] nrebin, numpy.ndarray[numpy.int64] nfft, numpy.ndarray[numpy.int64] ntot, numpy.ndarray[numpy.int64] npup, numpy.ndarray[numpy.float32] pdiam, numpy.ndarray[numpy.float32] nphot, numpy.ndarray[numpy.float32] nphot4imat, numpy.ndarray[numpy.int32] lgs, numpy.ndarray[bool] fakecam, numpy.ndarray[numpy.int32] max_flux_per_pix, numpy.ndarray[numpy.int32] max_pix_value, int device, bool roket)
 Create and initialise a sensors object. More...
 
int initgs (self, numpy.ndarray[numpy.float32] xpos, numpy.ndarray[numpy.float32] ypos, numpy.ndarray[numpy.float32] lambda_um, numpy.ndarray[numpy.float32] mag, float zerop, numpy.ndarray[numpy.int64] sizes, numpy.ndarray[numpy.float32] noise, numpy.ndarray[numpy.int64] seeds, numpy.ndarray[numpy.float32] G, numpy.ndarray[numpy.float32] thetaML, numpy.ndarray[numpy.float32] dx, numpy.ndarray[numpy.float32] dy)
 Initializes the guide stars of all WFS. More...
 
int set_field_stop (self, int nwfs, numpy.ndarray[numpy.float32] field_stop, int N)
 Set new field stop for the specified SH WFS. More...
 

Properties

 d_camplifoc = property
 Complex amplitude in the focal plane. More...
 
 d_camplipup = property
 Complex amplitude in the pupil. More...
 
 d_ftlgskern = property
 Convolution kernel for LGS spot. More...
 
 d_fttotim = property
 Buffer for FFT computation. More...
 
 d_lgskern = property
 LGS spot. More...
 
 d_wfs = property
 Vector of WFS. More...
 
 device = property
 GPU device index. More...
 
 nsensors = property
 Number of WFS. More...
 
 roket = property
 ROKET flag. More...
 

Detailed Description

Definition at line 7879 of file sutraWrap.py.

Constructor & Destructor Documentation

◆ __init__()

None sutraWrap.Sensors.__init__ (   self,
carmaWrap.context  context,
Telescope  d_tel,
typing.List[str]  type,
int  nwfs,
numpy.ndarray[numpy.int64]  nxsub,
numpy.ndarray[numpy.int64]  nvalid,
numpy.ndarray[numpy.int64]  npupils,
numpy.ndarray[numpy.int64]  npix,
numpy.ndarray[numpy.int64]  nphase,
numpy.ndarray[numpy.int64]  nrebin,
numpy.ndarray[numpy.int64]  nfft,
numpy.ndarray[numpy.int64]  ntot,
numpy.ndarray[numpy.int64]  npup,
numpy.ndarray[numpy.float32]  pdiam,
numpy.ndarray[numpy.float32]  nphot,
numpy.ndarray[numpy.float32]  nphot4imat,
numpy.ndarray[numpy.int32]  lgs,
numpy.ndarray[bool]  fakecam,
numpy.ndarray[numpy.int32]  max_flux_per_pix,
numpy.ndarray[numpy.int32]  max_pix_value,
int  device,
bool  roket 
)

Create and initialise a sensors object.

Parameters
context(CarmaContext) : current carma context
d_tel(SutraTelescope) : SutraTelescope object
type(list of string): WFS types
nwfs(int) : number of WFS
nxsub(np.ndarray[ndim=1, dtype=np.int64]) : number of ssp in the diameter for each WFS
nvalid(np.ndarray[ndim=1, dtype=np.int64]) : number of valid ssp for each WFS
npupils(np.ndarray[ndim=1, dtype=np.int64]) : number of pupil images for each WFS
npix(np.ndarray[ndim=1,dtype=np.int64]) : number of pix per ssp for each WFS
nphase(np.ndarray[ndim=1,dtype=np.int64]) : number of phase points per ssp for each WFS
nrebin(np.ndarray[ndim=1,dtype=np.int64]) : rebin factor for each WFS
nfft(np.ndarray[ndim=1,dtype=np.int64]) : FFT support size for each WFS
ntot(np.ndarray[ndim=1,dtype=np.int64]) : HR support size for each WFS
npup(np.ndarray[ndim=1,dtype=np.int64]) : Pupil support size for each WFS
pdiam(np.ndarray[ndim=1,dtype=np.float32]) : ssp diameter in pixels for each WFS
nphot(np.ndarray[ndim=1,dtype=np.float32]) : photons per subap per iter for each WFS
nphot4imat(np.ndarray[ndim=1,dtype=np.float32]) : photons per subap per iter for each WFS (for imat computation only)
lgs(np.ndarray[ndim=1,dtype=np.int64]) : LGS flag for each WFS
fakecam(bool): if True, image is computed in uint16
max_flux_per_pix(np.ndarray[ndim=1, dtype=np.int32]): maximum number of photons a pixel can handle before saturation
max_pix_value(np.ndarray[ndim=1, dtype=np.int32]): maximum number of ADU possible in the uint16 image
device(int): GPU device index
roket(bool): flag for enabling ROKET

Definition at line 7929 of file sutraWrap.py.

Member Function Documentation

◆ initgs()

int sutraWrap.Sensors.initgs (   self,
numpy.ndarray[numpy.float32]  xpos,
numpy.ndarray[numpy.float32]  ypos,
numpy.ndarray[numpy.float32]  lambda_um,
numpy.ndarray[numpy.float32]  mag,
float  zerop,
numpy.ndarray[numpy.int64]  sizes,
numpy.ndarray[numpy.float32]  noise,
numpy.ndarray[numpy.int64]  seeds,
numpy.ndarray[numpy.float32]  G,
numpy.ndarray[numpy.float32]  thetaML,
numpy.ndarray[numpy.float32]  dx,
numpy.ndarray[numpy.float32]  dy 
)

Initializes the guide stars of all WFS.

Parameters
xpos(np.array(ndim=1,dtype=np.float32)): X position of the GSs [arcsec]
ypos(np.array(ndim=1,dtype=np.float32)): Y position of the GSs [arcsec]
lambda_um(np.array(ndim=1,dtype=np.float32)): Wavelength of the GSs [µm]
mag(np.array(ndim=1,dtype=np.float32)): Magnitude of the GSs
zerop(float): Flux at magnitude 0
sizes(np.array(ndim=1,dtype=np.int64)): Support size of the GSs
noise(np.array(ndim=1,dtype=np.float32)): Noise of the WFS [e-]
seeds(np.array(ndim=1,dtype=np.int64)): seeds for noise generation
G(np.array(ndim=1,dtype=np.float32)): Magnification factors for WFS misalignment
thetaML(np.array(ndim=1,dtype=np.float32)): Pupil rotation angle for WFS misalignment
dx(np.array(ndim=1,dtype=np.float32)): X axis misalignment for WFS
dy(np.array(ndim=1,dtype=np.float32)): Y axis misalignment for WFS

Definition at line 7959 of file sutraWrap.py.

◆ set_field_stop()

int sutraWrap.Sensors.set_field_stop (   self,
int  nwfs,
numpy.ndarray[numpy.float32]  field_stop,
int  N 
)

Set new field stop for the specified SH WFS.

Parameters
nwfs(int): WFS index
field_stop(np.array(ndim=2,dtype=np.float32)): Field stop to use
N(int): Size of the field stop array along one axis

Definition at line 7970 of file sutraWrap.py.

Property Documentation

◆ d_camplifoc

sutraWrap.Sensors.d_camplifoc = property
static

Complex amplitude in the focal plane.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 7977 of file sutraWrap.py.

◆ d_camplipup

sutraWrap.Sensors.d_camplipup = property
static

Complex amplitude in the pupil.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 7986 of file sutraWrap.py.

◆ d_ftlgskern

sutraWrap.Sensors.d_ftlgskern = property
static

Convolution kernel for LGS spot.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 7995 of file sutraWrap.py.

◆ d_fttotim

sutraWrap.Sensors.d_fttotim = property
static

Buffer for FFT computation.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 8004 of file sutraWrap.py.

◆ d_lgskern

sutraWrap.Sensors.d_lgskern = property
static

LGS spot.

   @n type of :  carmaWrap.obj_float

Definition at line 8013 of file sutraWrap.py.

◆ d_wfs

sutraWrap.Sensors.d_wfs = property
static

Vector of WFS.

   @n type of :  typing.List[SutraWfs]

Definition at line 8022 of file sutraWrap.py.

◆ device

sutraWrap.Sensors.device = property
static

GPU device index.

   @n type of :  int

Definition at line 8031 of file sutraWrap.py.

◆ nsensors

sutraWrap.Sensors.nsensors = property
static

Number of WFS.

   @n type of :  int

Definition at line 8040 of file sutraWrap.py.

◆ roket

sutraWrap.Sensors.roket = property
static

ROKET flag.

   @n type of :  bool

Definition at line 8049 of file sutraWrap.py.


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