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

Public Member Functions

None __init__ (self, carmaWrap.context context, int device, str type, int nactus, int nmodes, int niter, numpy.ndarray[numpy.float32] IFvalue, numpy.ndarray[numpy.int32] IFrowind, numpy.ndarray[numpy.int32] IFcolind, int IFnz, numpy.ndarray[numpy.float32] TT, numpy.ndarray[numpy.float32] spupil, int size, int Npts, float scale, numpy.ndarray[numpy.float32] Btt, numpy.ndarray[numpy.float32] covmodes)
 Initializes Gamora. More...
 
int psf_rec_Vii (self)
 Vii PSF reconstruction. More...
 
int psf_rec_roket (self, numpy.ndarray[numpy.float32] err)
 Reconstruct the PSF from ROKET error buffer. More...
 

Properties

 Npts = property
 number of points in the pupil More...
 
 d_Btt = property
 Btt modal basis. More...
 
 d_Dphi = property
 Structure function. More...
 
 d_IF = property
 sparse IF matrix More...
 
 d_TT = property
 tip-tilt IF matrix More...
 
 d_amplipup = property
 Complex amplitude in the pupil. More...
 
 d_covmodes = property
 error covariance marix on the modes More...
 
 d_eigenvals = property
 Eigenvalues of Vii diago. More...
 
 d_err = property
 Error buffer. More...
 
 d_mask = property
 Mask. More...
 
 d_newmodek = property
 Mode k from Vii. More...
 
 d_otfVii = property
 OTF reconstructed from Vii. More...
 
 d_otftel = property
 OTF of the telescope. More...
 
 d_phase = property
 Residual phase. More...
 
 d_psf = property
 Reconstructed PSF. More...
 
 d_pupfft = property
 FFT of the pupil. More...
 
 d_term1 = property
 Buffer for Vii computation. More...
 
 d_term2 = property
 Buffer for Vii computation. More...
 
 d_wherephase = property
 index of valid point More...
 
 device = property
 GPU device. More...
 
 nactus = property
 Number of actuators. More...
 
 niter = property
 number of iterations More...
 
 nmodes = property
 number of modes More...
 
 scale = property
 Scale factor. More...
 
 size = property
 Pupil support size. More...
 

Detailed Description

Definition at line 5205 of file sutraWrap.py.

Constructor & Destructor Documentation

◆ __init__()

None sutraWrap.Gamora.__init__ (   self,
carmaWrap.context  context,
int  device,
str  type,
int  nactus,
int  nmodes,
int  niter,
numpy.ndarray[numpy.float32]  IFvalue,
numpy.ndarray[numpy.int32]  IFrowind,
numpy.ndarray[numpy.int32]  IFcolind,
int  IFnz,
numpy.ndarray[numpy.float32]  TT,
numpy.ndarray[numpy.float32]  spupil,
int  size,
int  Npts,
float  scale,
numpy.ndarray[numpy.float32]  Btt,
numpy.ndarray[numpy.float32]  covmodes 
)

Initializes Gamora.

Parameters
context(CarmaContext): context
device(int): context active device
type(str) : reconstruction method used ("roket" or "Vii")
nactus(int) : number of actuators
nmodesnumber of modes
niter(int) : number of iterations performed with roket
IFvalue(np.ndarray[ndim=1,dtype=float32_t]) : Non zeros values of pzt influence function matrix
IFrowind(np.ndarray[ndim=1,dtype=int32_t]) : Row indices of nnz values (csr sparse format)
IFcolind(np.ndarray[ndim=1,dtype=int32_t]) : Column indices of nnz values (csr sparse format)
IFnz(int): number of non zero element in IF
TT(np.ndarray[ndim=1,dtype=float32_t])np.ndarray[ndim=1,dtype=float32_t]) : Tip-tilt influence functions
spupil(np.ndarray[ndim=2,dtype=float32_t]) : Small pupil
size(int): pupil size
Npts(int): number of points in the pupil
scale(float) : 2*pi/lambda_target with lambda_target expressed in microns
Btt(np.ndarray[ndim=2, dtype=np.float32_t]) : Volts to Btt modes matrix
covmodes(np.ndarray[ndim=2, dtype=np.float32_t]) : error covariance matrix expressed in a modal basis

Definition at line 5245 of file sutraWrap.py.

Member Function Documentation

◆ psf_rec_roket()

int sutraWrap.Gamora.psf_rec_roket (   self,
numpy.ndarray[numpy.float32]  err 
)

Reconstruct the PSF from ROKET error buffer.

Parameters
err(np.array[ndim=2,dtype=np.float32]): ROKET error buffer

Definition at line 5256 of file sutraWrap.py.

◆ psf_rec_Vii()

int sutraWrap.Gamora.psf_rec_Vii (   self)

Vii PSF reconstruction.

Definition at line 5249 of file sutraWrap.py.

Property Documentation

◆ d_amplipup

sutraWrap.Gamora.d_amplipup = property
static

Complex amplitude in the pupil.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 5308 of file sutraWrap.py.

◆ d_Btt

sutraWrap.Gamora.d_Btt = property
static

Btt modal basis.

   @n type of :  carmaWrap.obj_float

Definition at line 5272 of file sutraWrap.py.

◆ d_covmodes

sutraWrap.Gamora.d_covmodes = property
static

error covariance marix on the modes

   @n type of :  carmaWrap.obj_float

Definition at line 5317 of file sutraWrap.py.

◆ d_Dphi

sutraWrap.Gamora.d_Dphi = property
static

Structure function.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 5281 of file sutraWrap.py.

◆ d_eigenvals

sutraWrap.Gamora.d_eigenvals = property
static

Eigenvalues of Vii diago.

   @n type of :  carmaWrap.obj_float

Definition at line 5326 of file sutraWrap.py.

◆ d_err

sutraWrap.Gamora.d_err = property
static

Error buffer.

   @n type of :  carmaWrap.obj_float

Definition at line 5335 of file sutraWrap.py.

◆ d_IF

sutraWrap.Gamora.d_IF = property
static

sparse IF matrix

   @n type of :  carmaWrap.sparse_obj_float

Definition at line 5290 of file sutraWrap.py.

◆ d_mask

sutraWrap.Gamora.d_mask = property
static

Mask.

   @n type of :  carmaWrap.obj_float

Definition at line 5344 of file sutraWrap.py.

◆ d_newmodek

sutraWrap.Gamora.d_newmodek = property
static

Mode k from Vii.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 5353 of file sutraWrap.py.

◆ d_otftel

sutraWrap.Gamora.d_otftel = property
static

OTF of the telescope.

   @n type of :  carmaWrap.obj_float

Definition at line 5371 of file sutraWrap.py.

◆ d_otfVii

sutraWrap.Gamora.d_otfVii = property
static

OTF reconstructed from Vii.

   @n type of :  carmaWrap.obj_float

Definition at line 5362 of file sutraWrap.py.

◆ d_phase

sutraWrap.Gamora.d_phase = property
static

Residual phase.

   @n type of :  carmaWrap.obj_float

Definition at line 5380 of file sutraWrap.py.

◆ d_psf

sutraWrap.Gamora.d_psf = property
static

Reconstructed PSF.

   @n type of :  carmaWrap.obj_float

Definition at line 5389 of file sutraWrap.py.

◆ d_pupfft

sutraWrap.Gamora.d_pupfft = property
static

FFT of the pupil.

   @n type of :  carmaWrap.obj_float_complex

Definition at line 5398 of file sutraWrap.py.

◆ d_term1

sutraWrap.Gamora.d_term1 = property
static

Buffer for Vii computation.

   @n type of :  carmaWrap.obj_float

Definition at line 5407 of file sutraWrap.py.

◆ d_term2

sutraWrap.Gamora.d_term2 = property
static

Buffer for Vii computation.

   @n type of :  carmaWrap.obj_float

Definition at line 5416 of file sutraWrap.py.

◆ d_TT

sutraWrap.Gamora.d_TT = property
static

tip-tilt IF matrix

   @n type of :  carmaWrap.obj_float

Definition at line 5299 of file sutraWrap.py.

◆ d_wherephase

sutraWrap.Gamora.d_wherephase = property
static

index of valid point

   @n type of :  carmaWrap.obj_int

Definition at line 5425 of file sutraWrap.py.

◆ device

sutraWrap.Gamora.device = property
static

GPU device.

   @n type of :  int

Definition at line 5434 of file sutraWrap.py.

◆ nactus

sutraWrap.Gamora.nactus = property
static

Number of actuators.

   @n type of :  int

Definition at line 5443 of file sutraWrap.py.

◆ niter

sutraWrap.Gamora.niter = property
static

number of iterations

   @n type of :  int

Definition at line 5452 of file sutraWrap.py.

◆ nmodes

sutraWrap.Gamora.nmodes = property
static

number of modes

   @n type of :  int

Definition at line 5461 of file sutraWrap.py.

◆ Npts

sutraWrap.Gamora.Npts = property
static

number of points in the pupil

   @n type of :  int

Definition at line 5263 of file sutraWrap.py.

◆ scale

sutraWrap.Gamora.scale = property
static

Scale factor.

   @n type of :  float

Definition at line 5470 of file sutraWrap.py.

◆ size

sutraWrap.Gamora.size = property
static

Pupil support size.

   @n type of :  int

Definition at line 5479 of file sutraWrap.py.


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