cfitsTK
|
#include <AOloopControl.h>
Data Fields | |
uint64_t | LOOPiteration |
AOLOOPCONTROL_CONF: TIMING | |
LOOP Timing info | |
float | loopfrequ |
float | hardwlatency |
float | hardwlatency_frame |
float | complatency |
float | complatency_frame |
float | wfsmextrlatency |
float | wfsmextrlatency_frame |
int_fast8_t | status |
int_fast8_t | statusM |
int_fast8_t | statusM1 |
int_fast8_t | GPUstatus [50] |
uint_fast16_t | NBtimer |
struct timespec | timer [MAX_NUMBER_TIMER] |
AOLOOPCONTROL_CONF: SETUP & INITIALIZATION STATE | |
int_fast8_t | init |
uint_fast64_t | cnt |
uint_fast64_t | cntmax |
uint_fast64_t | DMupdatecnt |
int_fast8_t | kill |
char | name [80] |
int_fast8_t | init_RM |
int_fast8_t | init_CM |
int_fast8_t | init_CMc |
int_fast8_t | initmapping |
char | respMname [80] |
char | contrMname [80] |
AOLOOPCONTROL_CONF: WFS CAMERA | |
char | WFSname [80] |
WFS stream name. More... | |
uint_fast32_t | sizexWFS |
uint_fast32_t | sizeyWFS |
uint_fast32_t | sizeWFS |
uint_fast32_t | activeWFScnt |
uint_fast32_t | sizeWFS_active [100] |
uint_fast64_t | WFScnt |
uint_fast64_t | WFScntRM |
int_fast8_t | WFSnormalize |
float | WFSnormfloor |
float | WFStotalflux |
AOLOOPCONTROL_CONF: DEFORMABLE MIRROR | |
char | dmCname [80] |
char | dmdispname [80] |
char | dmRMname [80] |
uint_fast8_t | DMMODE |
uint_fast32_t | sizexDM |
uint_fast32_t | sizeyDM |
uint_fast32_t | sizeDM |
uint_fast32_t | activeDMcnt |
uint_fast32_t | sizeDM_active |
AOLOOPCONTROL_CONF: CONTROL MODES | |
char | DMmodesname [80] |
uint_fast16_t | DMmodesNBblock |
uint_fast16_t | NBmodes_block [100] |
uint_fast16_t | modeBlockIndex [MAXNBMODES] |
uint_fast16_t | indexmaxMB [maxNBMB] |
uint_fast16_t | NBDMmodes |
int_fast8_t | init_wfsref0 |
float | maxlimit |
float | mult |
AOLOOPCONTROL_CONF: LOOP CONTROL | |
int_fast8_t | on |
float | gain |
uint_fast16_t | framesAve |
int_fast8_t | DMprimaryWriteON |
int_fast8_t | CMMODE |
int_fast8_t | DMfilteredWriteON |
int_fast8_t | AUTOTUNE_LIMITS_ON |
float | AUTOTUNE_LIMITS_perc |
float | AUTOTUNE_LIMITS_mcoeff |
float | AUTOTUNE_LIMITS_delta |
int_fast8_t | AUTOTUNE_GAINS_ON |
float | AUTOTUNEGAINS_updateGainCoeff |
float | AUTOTUNEGAINS_evolTimescale |
long | AUTOTUNEGAINS_NBsamples |
AOLOOPCONTROL_CONF: PREDICTIVE CONTROL | |
int_fast8_t | ARPFon |
float | ARPFgain |
float | ARPFgainAutoMin |
float | ARPFgainAutoMax |
AOLOOPCONTROL_CONF: COMPUTATION MODES | |
int_fast8_t | GPU0 |
int_fast8_t | GPU1 |
int_fast8_t | GPU2 |
int_fast8_t | GPU3 |
int_fast8_t | GPU4 |
int_fast8_t | GPU5 |
int_fast8_t | GPU6 |
int_fast8_t | GPU7 |
int_fast8_t | GPUall |
int_fast8_t | GPUusesem |
int_fast8_t | AOLCOMPUTE_TOTAL_ASYNC |
AOLOOPCONTROL_CONF: BASIC LOOP TELEMETRY AND PERFORMANCE | |
double | RMSmodes |
double | RMSmodesCumul |
uint_fast64_t | RMSmodesCumulcnt |
double | block_PFresrms [100] |
double | block_OLrms [100] |
double | block_Crms [100] |
double | block_WFSrms [100] |
double | block_WFSnoise [100] |
double | block_limFrac [100] |
double | ALL_OLrms |
double | ALL_Crms |
double | ALL_WFSrms |
double | ALL_WFSnoise |
double | ALL_limFrac |
uint_fast32_t | AveStats_NBpt |
double | blockave_PFresrms [100] |
double | blockave_OLrms [100] |
double | blockave_Crms [100] |
double | blockave_WFSrms [100] |
double | blockave_WFSnoise [100] |
double | blockave_limFrac [100] |
double | ALLave_OLrms |
double | ALLave_Crms |
double | ALLave_WFSrms |
double | ALLave_WFSnoise |
double | ALLave_limFrac |
Main AOloopControl structure.
Holds key parameters for the AO engine as well as higher level variables describing the state of the control loop
uint_fast32_t AOLOOPCONTROL_CONF::activeDMcnt |
number of active actuators
uint_fast32_t AOLOOPCONTROL_CONF::activeWFScnt |
Number of active WFS pixels
double AOLOOPCONTROL_CONF::ALL_Crms |
double AOLOOPCONTROL_CONF::ALL_limFrac |
double AOLOOPCONTROL_CONF::ALL_OLrms |
double AOLOOPCONTROL_CONF::ALL_WFSnoise |
double AOLOOPCONTROL_CONF::ALL_WFSrms |
double AOLOOPCONTROL_CONF::ALLave_Crms |
double AOLOOPCONTROL_CONF::ALLave_limFrac |
double AOLOOPCONTROL_CONF::ALLave_OLrms |
double AOLOOPCONTROL_CONF::ALLave_WFSnoise |
double AOLOOPCONTROL_CONF::ALLave_WFSrms |
int_fast8_t AOLOOPCONTROL_CONF::AOLCOMPUTE_TOTAL_ASYNC |
float AOLOOPCONTROL_CONF::ARPFgain |
float AOLOOPCONTROL_CONF::ARPFgainAutoMax |
float AOLOOPCONTROL_CONF::ARPFgainAutoMin |
int_fast8_t AOLOOPCONTROL_CONF::ARPFon |
int_fast8_t AOLOOPCONTROL_CONF::AUTOTUNE_GAINS_ON |
float AOLOOPCONTROL_CONF::AUTOTUNE_LIMITS_delta |
float AOLOOPCONTROL_CONF::AUTOTUNE_LIMITS_mcoeff |
int_fast8_t AOLOOPCONTROL_CONF::AUTOTUNE_LIMITS_ON |
float AOLOOPCONTROL_CONF::AUTOTUNE_LIMITS_perc |
float AOLOOPCONTROL_CONF::AUTOTUNEGAINS_evolTimescale |
Evolution timescale, beyond which errors stop growing
long AOLOOPCONTROL_CONF::AUTOTUNEGAINS_NBsamples |
Number of samples
float AOLOOPCONTROL_CONF::AUTOTUNEGAINS_updateGainCoeff |
Averaging coefficient (usually about 0.1)
uint_fast32_t AOLOOPCONTROL_CONF::AveStats_NBpt |
double AOLOOPCONTROL_CONF::block_Crms |
double AOLOOPCONTROL_CONF::block_limFrac |
double AOLOOPCONTROL_CONF::block_OLrms |
double AOLOOPCONTROL_CONF::block_PFresrms |
double AOLOOPCONTROL_CONF::block_WFSnoise |
double AOLOOPCONTROL_CONF::block_WFSrms |
double AOLOOPCONTROL_CONF::blockave_Crms |
double AOLOOPCONTROL_CONF::blockave_limFrac |
double AOLOOPCONTROL_CONF::blockave_OLrms |
double AOLOOPCONTROL_CONF::blockave_PFresrms |
double AOLOOPCONTROL_CONF::blockave_WFSnoise |
double AOLOOPCONTROL_CONF::blockave_WFSrms |
int_fast8_t AOLOOPCONTROL_CONF::CMMODE |
Combined matrix. 0: matrix is WFS pixels -> modes, 1: matrix is WFS pixels -> DM actuators
uint_fast64_t AOLOOPCONTROL_CONF::cnt |
loop step counter, set to zero every time loop is stopped
uint_fast64_t AOLOOPCONTROL_CONF::cntmax |
max value of counter, used to step loop
float AOLOOPCONTROL_CONF::complatency |
Computation latency [sec]
float AOLOOPCONTROL_CONF::complatency_frame |
Computation latency (main loop) from WFS image reception to DM command output [frame]
char AOLOOPCONTROL_CONF::contrMname |
char AOLOOPCONTROL_CONF::dmCname |
char AOLOOPCONTROL_CONF::dmdispname |
int_fast8_t AOLOOPCONTROL_CONF::DMfilteredWriteON |
Filtered write to DM
uint_fast8_t AOLOOPCONTROL_CONF::DMMODE |
0: zonal DM, 1: modal DM
char AOLOOPCONTROL_CONF::DMmodesname |
uint_fast16_t AOLOOPCONTROL_CONF::DMmodesNBblock |
number of mode blocks (read from parameter)
int_fast8_t AOLOOPCONTROL_CONF::DMprimaryWriteON |
primary DM write
char AOLOOPCONTROL_CONF::dmRMname |
uint_fast64_t AOLOOPCONTROL_CONF::DMupdatecnt |
uint_fast16_t AOLOOPCONTROL_CONF::framesAve |
number of WFS frames to average
float AOLOOPCONTROL_CONF::gain |
overall loop gain
int_fast8_t AOLOOPCONTROL_CONF::GPU0 |
int_fast8_t AOLOOPCONTROL_CONF::GPU1 |
int_fast8_t AOLOOPCONTROL_CONF::GPU2 |
int_fast8_t AOLOOPCONTROL_CONF::GPU3 |
int_fast8_t AOLOOPCONTROL_CONF::GPU4 |
int_fast8_t AOLOOPCONTROL_CONF::GPU5 |
int_fast8_t AOLOOPCONTROL_CONF::GPU6 |
int_fast8_t AOLOOPCONTROL_CONF::GPU7 |
int_fast8_t AOLOOPCONTROL_CONF::GPUall |
int_fast8_t AOLOOPCONTROL_CONF::GPUstatus |
GPU status index
int_fast8_t AOLOOPCONTROL_CONF::GPUusesem |
float AOLOOPCONTROL_CONF::hardwlatency |
hardware latency between DM command and WFS response [sec]
float AOLOOPCONTROL_CONF::hardwlatency_frame |
hardware latency between DM command and WFS response [frame]
uint_fast16_t AOLOOPCONTROL_CONF::indexmaxMB |
int_fast8_t AOLOOPCONTROL_CONF::init |
Has the structure been initialized ?
int_fast8_t AOLOOPCONTROL_CONF::init_CM |
Control Matrix loaded
int_fast8_t AOLOOPCONTROL_CONF::init_CMc |
Combined control matrix computed
int_fast8_t AOLOOPCONTROL_CONF::init_RM |
Response Matrix loaded
int_fast8_t AOLOOPCONTROL_CONF::init_wfsref0 |
int_fast8_t AOLOOPCONTROL_CONF::initmapping |
int_fast8_t AOLOOPCONTROL_CONF::kill |
set to 1 to kill computation loop
float AOLOOPCONTROL_CONF::loopfrequ |
Loop frequency [Hz]
uint64_t AOLOOPCONTROL_CONF::LOOPiteration |
Loop iteration - set to zero on creation on aolrun start
float AOLOOPCONTROL_CONF::maxlimit |
uint_fast16_t AOLOOPCONTROL_CONF::modeBlockIndex |
block index to which each mode belongs (computed by AOloopControl_loadconfigure)
float AOLOOPCONTROL_CONF::mult |
char AOLOOPCONTROL_CONF::name |
uint_fast16_t AOLOOPCONTROL_CONF::NBDMmodes |
uint_fast16_t AOLOOPCONTROL_CONF::NBmodes_block |
number of modes within each block (computed from files by AOloopControl_loadconfigure)
uint_fast16_t AOLOOPCONTROL_CONF::NBtimer |
Number of active timers - 1 timer per status value
int_fast8_t AOLOOPCONTROL_CONF::on |
goes to 1 when loop starts, put to 0 to turn loop off
char AOLOOPCONTROL_CONF::respMname |
double AOLOOPCONTROL_CONF::RMSmodes |
double AOLOOPCONTROL_CONF::RMSmodesCumul |
uint_fast64_t AOLOOPCONTROL_CONF::RMSmodesCumulcnt |
uint_fast32_t AOLOOPCONTROL_CONF::sizeDM |
DM total image (= x size * y size)
uint_fast32_t AOLOOPCONTROL_CONF::sizeDM_active |
only takes into account DM actuators that are active/in use
uint_fast32_t AOLOOPCONTROL_CONF::sizeWFS |
WFS total image (= x size * y size)
uint_fast32_t AOLOOPCONTROL_CONF::sizeWFS_active |
Only takes into account WFS pixels in use/active for each slice
uint_fast32_t AOLOOPCONTROL_CONF::sizexDM |
DM x size
uint_fast32_t AOLOOPCONTROL_CONF::sizexWFS |
WFS image x size
uint_fast32_t AOLOOPCONTROL_CONF::sizeyDM |
DM y size
uint_fast32_t AOLOOPCONTROL_CONF::sizeyWFS |
WFS image y size
int_fast8_t AOLOOPCONTROL_CONF::status |
loop status for main loop
int_fast8_t AOLOOPCONTROL_CONF::statusM |
loop status for modal loop
int_fast8_t AOLOOPCONTROL_CONF::statusM1 |
loop status for modal loop
struct timespec AOLOOPCONTROL_CONF::timer |
Timers
uint_fast64_t AOLOOPCONTROL_CONF::WFScnt |
WFS stream counter 0 value at WFS image read
uint_fast64_t AOLOOPCONTROL_CONF::WFScntRM |
WFS stream counter 0 value at WFS image read (RM acqu mode)
float AOLOOPCONTROL_CONF::wfsmextrlatency |
WFS mode extraction latency [sec]
float AOLOOPCONTROL_CONF::wfsmextrlatency_frame |
WFS mode extraction latency [frame]
char AOLOOPCONTROL_CONF::WFSname |
WFS stream name.
Usually set to aol_wfsim by function AOloopControl_loadconfigure
int_fast8_t AOLOOPCONTROL_CONF::WFSnormalize |
1 if each WFS frame should be normalized to 1
float AOLOOPCONTROL_CONF::WFSnormfloor |
normalized by dividing by (total + AOconf[loop].WFSnormfloor)*AOconf[loop].WFSsize
float AOLOOPCONTROL_CONF::WFStotalflux |
Total WFS flux after dark subtraction