![]() |
COMPASS
5.4.4
End-to-end AO simulation tool using GPU acceleration
|
Public Member Functions | |
int | comp_dphi (self, Source source, bool wfs_direction) |
Get the pupil phase and remove piston before projection. More... | |
int | init_proj_sparse (self, Dms dms, numpy.ndarray[numpy.int32] indx_dm, numpy.ndarray[numpy.float32] unitpervolt, numpy.ndarray[numpy.int32] indx_pup, numpy.ndarray[numpy.int32] indx_mpup, bool roket) |
Initializes projection matrices. More... | |
int | load_Btt (self, numpy.ndarray[numpy.float32] Btt_pzt, numpy.ndarray[numpy.float32] Btt_tt) |
Load the Btt modal basis in the geo controller for ROKET. More... | |
int | load_mgain (self, numpy.ndarray[numpy.float32] mgain) |
Set the controller modal gains. More... | |
![]() | |
int | add_perturb (self) |
Add the perturbation voltage to the command. More... | |
int | add_perturb_voltage (self, str name, numpy.ndarray[numpy.float32] perturb, int N) |
Add a new perturbation voltage buffer. More... | |
int | clip_commands (self) |
Clip the commands between volt_min and volt_max (values set in the controller) More... | |
int | command_delay (self) |
Delay the command. More... | |
int | comp_voltage (self) |
Computes the final voltage to send to the DM. More... | |
int | disable_perturb_voltage (self, str name) |
Disable a perturbation voltage buffer. More... | |
int | enable_perturb_voltage (self, str name) |
Enable a perturbation voltage buffer. More... | |
int | remove_perturb_voltage (self, str name) |
Remove a perturbation voltage buffer. More... | |
int | reset_coms (self) |
Reset the commands circular buffer. More... | |
int | reset_perturb_voltage (self) |
Remove all perturbation voltage buffers. More... | |
int | set_com (self, numpy.ndarray[numpy.float32] com, int nElem) |
Set the command vector of the controller. More... | |
None | set_comRange (self, float volt_min, float volt_max) |
Set the volt_min and volt_max value for command clipping. More... | |
int | set_delay (self, float delay) |
Set the delay. More... | |
int | set_gain (self, float gain) |
Set the gain. More... | |
int | set_open_loop (self, int status, bool rst=True) |
Open (1) or close (0) the loop. More... | |
int | set_perturb_voltage (self, str name, numpy.ndarray[numpy.float32] perturb, int N) |
Set an existing perturbation voltage buffer. More... | |
int | set_val_max (self, float val_max) |
Set the val_max value for command conversion. More... | |
int | set_volt_max (self, float volt_max) |
Set the volt_max value for command clipping. More... | |
Properties | |
Nphi = property | |
Number of points in the pupil. More... | |
Ntt = property | |
Number of tip-tilt mirror. More... | |
d_IFsparse = property | |
Influence functions in the pupil (sparse representation. More... | |
d_TT = property | |
Tip-tilt influence functions. More... | |
d_compdouble = property | |
Buffer for computation (double precision) More... | |
d_compfloat = property | |
Buffer for computation (simple precision) More... | |
d_gain = property | |
vector of modal gains More... | |
d_geocov = property | |
Geometric covariance matrix. More... | |
d_geocovTT = property | |
Geometric covariance matrix for TT mirror. More... | |
d_indx_mpup = property | |
Indices of the valid pixels in mpupil. More... | |
d_indx_pup = property | |
Indices of the valid pixels in spupil. More... | |
d_phi = property | |
Phase in the pupil without piston (double) More... | |
d_phif = property | |
Phase in the pupil without piston (float) More... | |
![]() | |
centro_idx = property | |
Indices of the handled centroiders. More... | |
comRange = property | |
type of : typing.Tuple[float, float] More... | |
context = property | |
GPU context. More... | |
d_centroids = property | |
Slopes vector. More... | |
d_circularComs0 = property | |
Oldest command vector in the circular buffer. More... | |
d_circularComs1 = property | |
Second oldest Command vector in the circular buffer. More... | |
d_com = property | |
Current command vector. More... | |
d_com1 = property | |
Command vector at iteration k-1. More... | |
d_com_clipped = property | |
Delayed commands. More... | |
d_dmseen = property | |
Vector of SutraDm commanded. More... | |
d_perturb_map = property | |
Perturbation voltage buffers. More... | |
d_voltage = property | |
Total voltage to apply on the DMs. More... | |
delay = property | |
Loop delay. More... | |
device = property | |
GPU device index. More... | |
gain = property | |
Controller gain. More... | |
nactu = property | |
Number of actuators to control. More... | |
nslope = property | |
Number of slopes. More... | |
open_loop = property | |
Open loop flag. More... | |
type = property | |
Controller type. More... | |
val_max = property | |
Maximum value for d_voltage (ADU). More... | |
Definition at line 3062 of file sutraWrap.py.
int sutraWrap.ControllerGEO_FF.comp_dphi | ( | self, | |
Source | source, | ||
bool | wfs_direction | ||
) |
Get the pupil phase and remove piston before projection.
source | (SutraSource): Phase source |
wfs_direction | (bool): Must be True if the source is a WFS GS |
Definition at line 3071 of file sutraWrap.py.
int sutraWrap.ControllerGEO_FF.init_proj_sparse | ( | self, | |
Dms | dms, | ||
numpy.ndarray[numpy.int32] | indx_dm, | ||
numpy.ndarray[numpy.float32] | unitpervolt, | ||
numpy.ndarray[numpy.int32] | indx_pup, | ||
numpy.ndarray[numpy.int32] | indx_mpup, | ||
bool | roket | ||
) |
Initializes projection matrices.
dms | (SutraDms): SutraDms object |
indx_dm | (np.array[ndim=1,dtype=np.int64]): Indices of valid pixels of the pupil in the DM support |
unitpervolt | (np.array[ndim=1,dtype=np.float32]): Unit per volt of each DM |
indx_pup | (np.array[ndim=1,dtype=np.int64]): Indices of valid pixels of the small pupil |
indx_mpup | (np.array[ndim=1,dtype=np.int64]): Indices of valid pixels of the medium pupil |
roket | (bool): ROKET flag |
Definition at line 3087 of file sutraWrap.py.
int sutraWrap.ControllerGEO_FF.load_Btt | ( | self, | |
numpy.ndarray[numpy.float32] | Btt_pzt, | ||
numpy.ndarray[numpy.float32] | Btt_tt | ||
) |
Load the Btt modal basis in the geo controller for ROKET.
Btt_pzt | (np.array[ndim=2,dtype=np.float32]) : PZT DM component |
Btt_tt | (np.array[ndim=2,dtype=np.float32]) : TT mirror component |
Definition at line 3097 of file sutraWrap.py.
int sutraWrap.ControllerGEO_FF.load_mgain | ( | self, | |
numpy.ndarray[numpy.float32] | mgain | ||
) |
Set the controller modal gains.
mgain | (np.array[ndim1,dtype=np.float32]): modal gains to set |
Definition at line 3104 of file sutraWrap.py.
|
static |
Buffer for computation (double precision)
@n type of : carmaWrap.obj_double
Definition at line 3147 of file sutraWrap.py.
|
static |
Buffer for computation (simple precision)
@n type of : carmaWrap.obj_float
Definition at line 3156 of file sutraWrap.py.
|
static |
vector of modal gains
@n type of : carmaWrap.obj_float
Definition at line 3165 of file sutraWrap.py.
|
static |
Geometric covariance matrix.
@n type of : carmaWrap.obj_float
Definition at line 3174 of file sutraWrap.py.
|
static |
Geometric covariance matrix for TT mirror.
@n type of : carmaWrap.obj_float
Definition at line 3183 of file sutraWrap.py.
|
static |
Influence functions in the pupil (sparse representation.
@n type of : carmaWrap.sparse_obj_double
Definition at line 3129 of file sutraWrap.py.
|
static |
Indices of the valid pixels in mpupil.
@n type of : carmaWrap.obj_int
Definition at line 3192 of file sutraWrap.py.
|
static |
Indices of the valid pixels in spupil.
@n type of : carmaWrap.obj_int
Definition at line 3201 of file sutraWrap.py.
|
static |
Phase in the pupil without piston (double)
@n type of : carmaWrap.obj_double
Definition at line 3210 of file sutraWrap.py.
|
static |
Phase in the pupil without piston (float)
@n type of : carmaWrap.obj_float
Definition at line 3219 of file sutraWrap.py.
|
static |
Tip-tilt influence functions.
@n type of : carmaWrap.obj_float
Definition at line 3138 of file sutraWrap.py.
|
static |
|
static |