cfitsTK
FPAOloopControl.h
Go to the documentation of this file.
1 #ifndef _FPAOLOOPCONTROL_H
2 #define _FPAOLOOPCONTROL_H
3 
4 
5 
6 
7 typedef struct
8 {
9  char name[80];
10 
11  // DM stream
12  char dmCname[80];
13  char dmRMname[80];
14  long sizexDM;
15  long sizeyDM;
16  long sizeDM;
17  long long DMupdatecnt;
18 
19  // Focal plane image stream
20  char WFSname[80];
21  long sizexWFS;
22  long sizeyWFS;
23  long sizeWFS;
24  long long WFScnt;
25 
26  // timing info
27  float loopfrequ; // Hz
28  float hardwlatency; // hardware latency between DM command and WFS response [sec]
29  float hardwlatency_frame; // hardware latency between DM command and WFS response
30 
31 
32  // ============= RESPONSE CALIBRATION ===================
33  float fpim_normFlux; // total focal plane flux in the absence of a coronagraph
34  float fpim_Xcent;
35  float fpim_Ycent;
36 
37 
38  // ======= LEVEL 1 CALIBRATION ==============
39  // Each actuator influence function has the same amplitude, phase is ramp set accordingly to actuator position
40  // to be acquired without coronagraph
41 
42 
43 
44 
46 
47 
48 
50 
51 
52 
53 
55 int FPAOloopControl_loadconfigure(long loop, int mode, int level);
56 
57 
58 
59 int FPAOloopControl_showparams(long loop);
60 
61 int FPAOloopControl_set_hardwlatency_frame(float hardwlatency_frame);
62 
63 
64 
65 
66 
67 // RM Calibration
68 
69 long FPAO_Measure_WFSrespC(long loop, long delayfr, long delayRM1us, long NBave, long NBexcl, char *IDpokeC_name, char *IDoutC_name, int FPAOinitMode, long NBcycle);
70 
71 
72 // level 1
73 // Each actuator influence function has the same amplitude, phase is ramp set accordingly to actuator position
74 // to be acquired without coronagraph
75 long FPAOloopControl_MeasureResp_level1(float ampl, long delayfr, long delayRM1us, long NBave, long NBexcl, int FPAOinitMode, long NBiter);
76 
77 long FPAOloopControl_MakeLinComb_seq(char *IDpC_name, long xsize0, long ysize0, long NBmaster0, long N, char *IDout_name);
78 
79 #endif
float hardwlatency
Definition: FPAOloopControl.h:28
long sizexWFS
Definition: FPAOloopControl.h:21
int FPAOloopControl_set_hardwlatency_frame(float hardwlatency_frame)
Definition: FPAOloopControl.c:598
long FPAOloopControl_InitializeMemory(int mode)
Definition: FPAOloopControl.c:245
Definition: FPAOloopControl.h:7
float fpim_Ycent
Definition: FPAOloopControl.h:35
int init_FPAOloopControl()
Definition: FPAOloopControl.c:202
long FPAOloopControl_MakeLinComb_seq(char *IDpC_name, long xsize0, long ysize0, long NBmaster0, long N, char *IDout_name)
Definition: FPAOloopControl.c:1092
long sizeyWFS
Definition: FPAOloopControl.h:22
float fpim_normFlux
Definition: FPAOloopControl.h:33
float hardwlatency_frame
Definition: FPAOloopControl.h:29
long FPAO_Measure_WFSrespC(long loop, long delayfr, long delayRM1us, long NBave, long NBexcl, char *IDpokeC_name, char *IDoutC_name, int FPAOinitMode, long NBcycle)
Definition: FPAOloopControl.c:793
long sizeyDM
Definition: FPAOloopControl.h:15
long sizexDM
Definition: FPAOloopControl.h:14
long long DMupdatecnt
Definition: FPAOloopControl.h:17
long sizeDM
Definition: FPAOloopControl.h:16
int FPAOloopControl_showparams(long loop)
Definition: FPAOloopControl.c:567
long sizeWFS
Definition: FPAOloopControl.h:23
float fpim_Xcent
Definition: FPAOloopControl.h:34
int FPAOloopControl_loadconfigure(long loop, int mode, int level)
Definition: FPAOloopControl.c:341
float loopfrequ
Definition: FPAOloopControl.h:27
long long WFScnt
Definition: FPAOloopControl.h:24
long FPAOloopControl_MeasureResp_level1(float ampl, long delayfr, long delayRM1us, long NBave, long NBexcl, int FPAOinitMode, long NBiter)
Definition: FPAOloopControl.c:1028