![]() |
COMPASS
5.4.4
End-to-end AO simulation tool using GPU acceleration
|
Public Member Functions | |
int | build_cmat (self, int nfilt) |
Computes the command matrix after imat SVD. More... | |
int | init_modalOpti (self, int nmodes, int nrec, numpy.ndarray[numpy.float32] M2V, float gmin, float gmax, int ngain, float Fs) |
Initialize modal optimization control. More... | |
int | loadopen_loopSlp (self, numpy.ndarray[numpy.float32] slopes) |
Load recorded open loop slopes for modal optimization initialization. More... | |
int | modalControlOptimization (self) |
TODO docstring. More... | |
int | set_cmat (self, numpy.ndarray[numpy.float32] cmat) |
Set the command matrix. More... | |
int | set_imat (self, numpy.ndarray[numpy.float32] imat) |
Set the interaction matrix. More... | |
int | set_modal_gains (self, numpy.ndarray[numpy.float32] mgain) |
Set the controller modal gains. More... | |
int | svdec_imat (self) |
Performs interaction matrix SVD. 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 | |
Fs = property | |
Sampling frequency for modal optimization. More... | |
cpt_rec = property | |
Counter for modal gains refresh. More... | |
d_Hcor = property | |
Transfer function for modal optimization. More... | |
d_M2V = property | |
Modes to volt matrix for modal optimization. More... | |
d_S2M = property | |
Slopes to modes matrix for modal optimization. More... | |
d_U = property | |
Eigen modes of the imat. More... | |
d_cenbuff = property | |
Centroids circular buffer. More... | |
d_cmat = property | |
Control matrix. More... | |
d_compbuff = property | |
Buffer for POLC computation. More... | |
d_compbuff2 = property | |
Buffer for POLC computation. More... | |
d_eigenvals = property | |
Eigen values of the imat. More... | |
d_err = property | |
Current increment on the command. More... | |
d_gain = property | |
vector of modal gains More... | |
d_imat = property | |
Interaction matrix. More... | |
d_slpol = property | |
Open loop slopes for modal optimization. More... | |
gmax = property | |
Maximal gain for modal optimization. More... | |
gmin = property | |
Minimal gain for modal optimization. More... | |
is_modopti = property | |
Falg for modal optimization. More... | |
ngain = property | |
Number of gain values to test between gmin and gmax for modal optimization. More... | |
nmodes = property | |
Number of modes for modal optimization. More... | |
nrec = property | |
Number of open loop slopes to take for modal optimization. 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 3637 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.build_cmat | ( | self, | |
int | nfilt | ||
) |
Computes the command matrix after imat SVD.
nfilt | (int): number of modes to filter |
Definition at line 3644 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.init_modalOpti | ( | self, | |
int | nmodes, | ||
int | nrec, | ||
numpy.ndarray[numpy.float32] | M2V, | ||
float | gmin, | ||
float | gmax, | ||
int | ngain, | ||
float | Fs | ||
) |
Initialize modal optimization control.
nmodes | (int): number of modes to control |
nrec | (int): number of open loop slopes to consider |
M2V | (np.array[ndim=2,dtype=np.float32]): Modes to Volt matrix |
gmin | (float): Minimal gain |
gmax | (float): Maximal gain |
ngain | (int): Number of gain values to test between gmin and gmax |
Fs | (float): Sampling frequency [Hz] |
Definition at line 3663 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.loadopen_loopSlp | ( | self, | |
numpy.ndarray[numpy.float32] | slopes | ||
) |
Load recorded open loop slopes for modal optimization initialization.
slopes | (np.array[ndim=2,dtype=np.float32]): Open loop slopes |
Definition at line 3670 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.modalControlOptimization | ( | self | ) |
TODO docstring.
Definition at line 3674 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.set_cmat | ( | self, | |
numpy.ndarray[numpy.float32] | cmat | ||
) |
Set the command matrix.
cmat | (np.array[ndim=2,dtype=np.float32]): command matrix to set |
Definition at line 3681 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.set_imat | ( | self, | |
numpy.ndarray[numpy.float32] | imat | ||
) |
Set the interaction matrix.
imat | (np.array[ndim=2,dtype=np.float32]): interaction matrix to set |
Definition at line 3688 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.set_modal_gains | ( | 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 3695 of file sutraWrap.py.
int sutraWrap.ControllerLS_FU.svdec_imat | ( | self | ) |
Performs interaction matrix SVD.
Definition at line 3699 of file sutraWrap.py.
|
static |
|
static |
Centroids circular buffer.
@n type of : carmaWrap.obj_float
Definition at line 3760 of file sutraWrap.py.
|
static |
|
static |
Buffer for POLC computation.
@n type of : carmaWrap.obj_float
Definition at line 3778 of file sutraWrap.py.
|
static |
Buffer for POLC computation.
@n type of : carmaWrap.obj_float
Definition at line 3787 of file sutraWrap.py.
|
static |
Eigen values of the imat.
@n type of : carmaWrap.obj_float
Definition at line 3796 of file sutraWrap.py.
|
static |
Current increment on the command.
@n type of : carmaWrap.obj_float
Definition at line 3805 of file sutraWrap.py.
|
static |
vector of modal gains
@n type of : carmaWrap.obj_float
Definition at line 3814 of file sutraWrap.py.
|
static |
Transfer function for modal optimization.
@n type of : carmaWrap.obj_float
Definition at line 3724 of file sutraWrap.py.
|
static |
|
static |
Modes to volt matrix for modal optimization.
@n type of : carmaWrap.obj_float
Definition at line 3733 of file sutraWrap.py.
|
static |
Slopes to modes matrix for modal optimization.
@n type of : carmaWrap.obj_float
Definition at line 3742 of file sutraWrap.py.
|
static |
Open loop slopes for modal optimization.
@n type of : carmaWrap.obj_float
Definition at line 3832 of file sutraWrap.py.
|
static |
Eigen modes of the imat.
@n type of : carmaWrap.obj_float
Definition at line 3751 of file sutraWrap.py.
|
static |
Sampling frequency for modal optimization.
@n type of : float
Definition at line 3706 of file sutraWrap.py.
|
static |
Maximal gain for modal optimization.
@n type of : float
Definition at line 3841 of file sutraWrap.py.
|
static |
Minimal gain for modal optimization.
@n type of : float
Definition at line 3850 of file sutraWrap.py.
|
static |
|
static |
Number of gain values to test between gmin and gmax for modal optimization.
@n type of : int
Definition at line 3868 of file sutraWrap.py.
|
static |
Number of modes for modal optimization.
@n type of : int
Definition at line 3877 of file sutraWrap.py.
|
static |
Number of open loop slopes to take for modal optimization.
@n type of : int
Definition at line 3886 of file sutraWrap.py.