Mercurial > hg > fxanalyse
diff FXAnalyse.c @ 161:6ee23cb3d6bb
Coding style fixes
author | Daniele Nicolodi <daniele.nicolodi@obspm.fr> |
---|---|
date | Tue, 04 Feb 2014 17:07:59 +0100 |
parents | f609fb29536b |
children | 1517a56163de |
line wrap: on
line diff
--- a/FXAnalyse.c Tue Feb 04 12:48:37 2014 +0100 +++ b/FXAnalyse.c Tue Feb 04 17:07:59 2014 +0100 @@ -62,7 +62,7 @@ }; -#define ADEV_INIT(__channel, __normalization) \ +#define ADEV(__channel, __normalization) \ { \ .data = & ## __channel, \ .title = #__channel, \ @@ -90,15 +90,15 @@ struct adev adevs[] = { - ADEV_INIT(Ch1, 1.84e12), - ADEV_INIT(Ch2, 10.0e3), - ADEV_INIT(Ch3, 429.228e12), - ADEV_INIT(Ch4, 275.0e3), - ADEV_INIT(Math1, 250.0e6), - ADEV_INIT(Math2, 194.395e12), - ADEV_INIT(Math3, 282.143e12), - ADEV_INIT(Math4, 429.228e12), - ADEV_INIT(Math5, 1.0), + ADEV(Ch1, 1.84e12), + ADEV(Ch2, 10.0e3), + ADEV(Ch3, 429.228e12), + ADEV(Ch4, 275.0e3), + ADEV(Math1, 250.0e6), + ADEV(Math2, 194.395e12), + ADEV(Math3, 282.143e12), + ADEV(Math4, 429.228e12), + ADEV(Math5, 1.0), { NULL } }; @@ -113,7 +113,7 @@ }; -#define PLOT_INIT(__channel, __min, __max) \ +#define PLOT(__channel, __min, __max) \ { \ .data = & ## __channel, \ .title = #__channel, \ @@ -141,15 +141,15 @@ } struct plot plots[] = { - PLOT_INIT(Ch1, 54.999e6, 55.001e6), - PLOT_INIT(Ch2, 0.0, 0.0), - PLOT_INIT(Ch3, 0.0, 0.0), - PLOT_INIT(Ch4, 0.0, 0.0), - PLOT_INIT(Math1, 0.0, 0.0), - PLOT_INIT(Math2, 0.0, 0.0), - PLOT_INIT(Math3, 0.0, 0.0), - PLOT_INIT(Math4, 0.0, 0.0), - PLOT_INIT(Math5, 0.0, 0.0), + PLOT(Ch1, 54.999e6, 55.001e6), + PLOT(Ch2, 0.0, 0.0), + PLOT(Ch3, 0.0, 0.0), + PLOT(Ch4, 0.0, 0.0), + PLOT(Math1, 0.0, 0.0), + PLOT(Math2, 0.0, 0.0), + PLOT(Math3, 0.0, 0.0), + PLOT(Math4, 0.0, 0.0), + PLOT(Math5, 0.0, 0.0), { NULL } }; @@ -162,10 +162,9 @@ muParserHandle_t MathParser1, MathParser2, MathParser3, MathParser4, MathParser5; enum { - N_NONE, - N_LO, - N_HG, - N_SR, + LO = 1, + HG = 2, + SR = 4, }; enum { @@ -195,7 +194,6 @@ double SlopeTime3=40.0, DeltaT_3=20.0, delta_f_lock_3=500.0; double DeltaDDS3=0.0; -double Nu1=0.0, Nu2= 200000-147000+282143746.557455e6; double t1, t2, t3; double f_rep_slope, f_beat_slope; @@ -215,6 +213,11 @@ // dedrift +enum { + DEDRIFT_REFERENCE_MICROWAVE = 0, + DEDRIFT_REFERENCE_HG = 1, +}; + struct dedrift { int enabled; // dedrift enabled int reference; // reference frequency @@ -229,11 +232,6 @@ double t0; // beginning of currrent measurement interval }; -enum { - DEDRIFT_REFERENCE_MICROWAVE = 0, - DEDRIFT_REFERENCE_HG = 1, -}; - struct dedrift dedrift = { .enabled = FALSE, .reference = DEDRIFT_REFERENCE_MICROWAVE, @@ -278,15 +276,23 @@ int write; }; +#define DATAFILE(__name, __data, __nchan, __control, __write) \ + { \ + .name = __name, \ + .data = __data, \ + .nchan = __nchan, \ + .control = __control, \ + .write = __write \ + } struct datafile datafiles[] = { - { "Raw", event.data, 4, PANEL_SAVE_RAW, TRUE }, - { "DDS", DDS4xAD9912.frequency, 4, PANEL_SAVE_DDS, FALSE }, - { "Lo", &Math2, 1, PANEL_SAVE_LO, FALSE }, - { "Hg", &Math3, 1, PANEL_SAVE_HG, FALSE }, - { "Sr", &Math4, 1, PANEL_SAVE_SR, FALSE }, - { "Ex", &Math5, 1, PANEL_SAVE_EXTRA, FALSE }, - { NULL, } + DATAFILE("Raw", event.data, 4, PANEL_SAVE_RAW, TRUE), + DATAFILE("DDS", DDS4xAD9912.frequency, 4, PANEL_SAVE_DDS, FALSE), + DATAFILE("Lo", &Math2, 1, PANEL_SAVE_LO, FALSE), + DATAFILE("Hg", &Math3, 1, PANEL_SAVE_HG, FALSE), + DATAFILE("Sr", &Math4, 1, PANEL_SAVE_SR, FALSE), + DATAFILE("Ex", &Math5, 1, PANEL_SAVE_EXTRA, FALSE), + { NULL, } }; @@ -453,8 +459,6 @@ // initialyze 1x AD9956 DDS box DDSFox_Initialize(&DDS1xAD9956, "145.238.205.58", 6665, dedrift.freq0); - Ch1 = Ch2 = Ch3 = Ch4 = 0.0; - GetCtrlVal(MainPanel, PANEL_N1CHOICE, &N1); GetCtrlVal(MainPanel, PANEL_N2CHOICE, &N2); GetCtrlVal(MainPanel, PANEL_N3CHOICE, &N3); @@ -520,83 +524,45 @@ int CVICALLBACK CB_OnEventMain(int panel, int event, void *callbackData, int eventData1, int eventData2) { - int ActiveControl ; - int StepIndex ; - double Step ; + int control, index; + double step; + +#define do_arrow(__DDS, __STEP) \ + do { \ + GetCtrlIndex(MainPanel, __STEP, &index); \ + if ((eventData1 == VAL_RIGHT_ARROW_VKEY) && (index < 14)) \ + SetCtrlIndex(MainPanel, __STEP, index + 1); \ + if ((eventData1 == VAL_LEFT_ARROW_VKEY) && (index > 0)) \ + SetCtrlIndex(MainPanel, __STEP, index - 1); \ + GetCtrlVal(MainPanel, __STEP, &step); \ + SetCtrlAttribute(MainPanel, __DDS, ATTR_INCR_VALUE, step); \ + } while (0) switch (event) { case EVENT_KEYPRESS: - switch (eventData1) // ie the code of the key which has been stroke - { - case VAL_RIGHT_ARROW_VKEY : - ActiveControl = GetActiveCtrl(panel); - if (ActiveControl==PANEL_DDS1 || ActiveControl==PANEL_DDS1STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS1STEP, &StepIndex); - if (StepIndex<14){ - SetCtrlIndex(MainPanel, PANEL_DDS1STEP, ++StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS1STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS1, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS2 || ActiveControl==PANEL_DDS2STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS2STEP, &StepIndex); - if (StepIndex<14){ - SetCtrlIndex(MainPanel, PANEL_DDS2STEP, ++StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS2STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS2, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS3|| ActiveControl==PANEL_DDS3STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS3STEP, &StepIndex); - if (StepIndex<14){ - SetCtrlIndex(MainPanel, PANEL_DDS3STEP, ++StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS3STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS3, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS4|| ActiveControl==PANEL_DDS4STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS4STEP, &StepIndex); - if (StepIndex<14){ - SetCtrlIndex(MainPanel, PANEL_DDS4STEP, ++StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS4STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS4, ATTR_INCR_VALUE, Step) ; - }; - }; - break; - case VAL_LEFT_ARROW_VKEY : - ActiveControl = GetActiveCtrl(panel); - if (ActiveControl==PANEL_DDS1 || ActiveControl==PANEL_DDS1STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS1STEP, &StepIndex); - if (StepIndex>0){ - SetCtrlIndex(MainPanel, PANEL_DDS1STEP, --StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS1STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS1, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS2 || ActiveControl==PANEL_DDS2STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS2STEP, &StepIndex); - if (StepIndex>0){ - SetCtrlIndex(MainPanel, PANEL_DDS2STEP, --StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS2STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS2, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS3 || ActiveControl==PANEL_DDS3STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS3STEP, &StepIndex); - if (StepIndex>0){ - SetCtrlIndex(MainPanel, PANEL_DDS3STEP, --StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS3STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS3, ATTR_INCR_VALUE, Step) ; - }; - }; - if (ActiveControl==PANEL_DDS4 || ActiveControl==PANEL_DDS4STEP) { - GetCtrlIndex(MainPanel, PANEL_DDS4STEP, &StepIndex); - if (StepIndex>0){ - SetCtrlIndex(MainPanel, PANEL_DDS4STEP, --StepIndex) ; - GetCtrlVal(MainPanel, PANEL_DDS4STEP, &Step); - SetCtrlAttribute(MainPanel, PANEL_DDS4, ATTR_INCR_VALUE, Step) ; - }; - }; + /* key code */ + switch (eventData1) { + case VAL_RIGHT_ARROW_VKEY: + case VAL_LEFT_ARROW_VKEY: + control = GetActiveCtrl(panel); + switch (control) { + case PANEL_DDS1: + case PANEL_DDS1STEP: + do_arrow(PANEL_DDS1, PANEL_DDS1STEP); + break; + case PANEL_DDS2: + case PANEL_DDS2STEP: + do_arrow(PANEL_DDS2, PANEL_DDS2STEP); + break; + case PANEL_DDS3: + case PANEL_DDS3STEP: + do_arrow(PANEL_DDS3, PANEL_DDS3STEP); + break; + case PANEL_DDS4: + case PANEL_DDS4STEP: + do_arrow(PANEL_DDS4, PANEL_DDS4STEP); + break; + } break; case VAL_F2_VKEY : SetActiveCtrl(MainPanel, PANEL_DDS1); @@ -610,9 +576,8 @@ case VAL_F5_VKEY : SetActiveCtrl(MainPanel, PANEL_DDS4); break; - }; + } break; - } return 0; } @@ -969,7 +934,12 @@ nobs = 0; // compute N2 - double delta_f_rep = f_rep_minus - f_rep_plus; + double delta_f_rep_m = f_rep_minus - f_rep_plus; + double delta_f_rep = Sign1 * Ndiv * 2.0 * delta_f_lock_3 / N1; + + logmsg("delta frep: measured=%e expected=%e difference=%e", + delta_f_rep_m, delta_f_rep, delta_f_rep_m - delta_f_rep); + N_2 = -Sign2 * (DeltaDDS3 + f_beat_minus - f_beat_plus) / delta_f_rep; SetCtrlVal(CalcNPanel, CALCN_N, N_2); @@ -1116,20 +1086,24 @@ // check delta frep double delta_f_rep_m = f_rep_plus - f_rep_minus; double delta_f_rep = Sign1 * Ndiv * 2.0 * delta_f_lock_3 / N1; - logmsg("delta frep: measured=%.12e Hz expected=%.12e Hz difference=%.12e", + + logmsg("delta frep: measured=%e expected=%e difference=%e", delta_f_rep_m, delta_f_rep, delta_f_rep_m - delta_f_rep); - logmsg("f_beat_minus=%.12e", f_beat_minus); - logmsg("f_beat_plus =%.12e", f_beat_plus); + logmsg("f_beat_minus=%e", f_beat_minus); + logmsg("f_beat_plus =%e", f_beat_plus); // compute N3 double delta_f_beat = f_beat_plus - f_beat_minus + 2.0 * Sign1 * Sign3 * N3/N1 * Ndiv * delta_f_lock_3; double delta_f_beat_expected = delta_f_rep * N3; - logmsg("delta fbeat: measured=%.12e expected=%.12e difference=%.12e", + + logmsg("delta fbeat: measured=%e expected=%e difference=%e", delta_f_beat, delta_f_beat_expected, delta_f_beat - delta_f_beat_expected); + N_3 = delta_f_beat / delta_f_rep; + SetCtrlVal(CalcNPanel, CALCN_N, N_3); + logmsg("measured N3=%.3f", N_3); - SetCtrlVal(CalcNPanel, CALCN_N, N_3); // back to nominal frep DDS4xAD9912_RampFrequency(&DDS4xAD9912, 1, f0_DDS1, FREP_STEP_SIZE); @@ -1561,15 +1535,15 @@ case EVENT_COMMIT: GetPanelAttribute(panel, ATTR_CALLBACK_DATA, &measure); switch (measure) { - case N_LO: + case LO: N1 = round(N_1); SetCtrlVal(MainPanel, PANEL_N1CHOICE, N1); break; - case N_HG: + case HG: N2 = round(N_2); SetCtrlVal(MainPanel, PANEL_N2CHOICE, N2); break; - case N_SR: + case SR: N3 = round(N_3); SetCtrlVal(MainPanel, PANEL_N3CHOICE, N3); break; @@ -1591,7 +1565,7 @@ case PANEL_N1CALCULUS: GetPanelAttribute(CalcNPanel, ATTR_VISIBLE, &visible); if (! visible) { - SetPanelAttribute(panel, ATTR_CALLBACK_DATA, N_LO); + SetPanelAttribute(panel, ATTR_CALLBACK_DATA, LO); SetPanelAttribute(CalcNPanel, ATTR_TITLE, "Measure N_Lo"); SetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, DeltaT_1); SetCtrlVal(CalcNPanel, CALCN_SLOPETIME, SlopeTime1); @@ -1603,7 +1577,7 @@ case PANEL_N2CALCULUS: GetPanelAttribute(CalcNPanel, ATTR_VISIBLE, &visible); if (! visible) { - SetPanelAttribute(panel, ATTR_CALLBACK_DATA, N_HG); + SetPanelAttribute(panel, ATTR_CALLBACK_DATA, HG); SetPanelAttribute(CalcNPanel, ATTR_TITLE, "Measure N_Hg"); SetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, DeltaT_2); SetCtrlVal(CalcNPanel, CALCN_SLOPETIME, SlopeTime2); @@ -1615,7 +1589,7 @@ case PANEL_N3CALCULUS: GetPanelAttribute(CalcNPanel, ATTR_VISIBLE, &visible); if (! visible) { - SetPanelAttribute(panel, ATTR_CALLBACK_DATA, N_SR); + SetPanelAttribute(panel, ATTR_CALLBACK_DATA, SR); SetPanelAttribute(CalcNPanel, ATTR_TITLE, "Measure N_Sr"); SetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, DeltaT_3); SetCtrlVal(CalcNPanel, CALCN_SLOPETIME, SlopeTime3); @@ -1639,7 +1613,7 @@ case EVENT_COMMIT: GetPanelAttribute(panel, ATTR_CALLBACK_DATA, &measuring); switch (measuring) { - case N_LO: + case LO: GetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, &DeltaT_1); GetCtrlVal(CalcNPanel, CALCN_SLOPETIME, &SlopeTime1); GetCtrlVal(CalcNPanel, CALCN_DELTAFREQ, &delta_f_lock_1); @@ -1647,7 +1621,7 @@ delta_f_lock_1 = delta_f_lock_1 * 1000.0; Measuring_1 = TRUE; break; - case N_HG: + case HG: GetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, &DeltaT_2); GetCtrlVal(CalcNPanel, CALCN_SLOPETIME, &SlopeTime2); GetCtrlVal(CalcNPanel, CALCN_DELTAFREQ, &delta_f_lock_2); @@ -1655,7 +1629,7 @@ delta_f_lock_2 = delta_f_lock_2 * 1000.0; Measuring_2 = TRUE; break; - case N_SR: + case SR: GetCtrlVal(CalcNPanel, CALCN_INTEGRATIONTIME, &DeltaT_3); GetCtrlVal(CalcNPanel, CALCN_SLOPETIME, &SlopeTime3); GetCtrlVal(CalcNPanel, CALCN_DELTAFREQ, &delta_f_lock_3); @@ -1679,18 +1653,18 @@ HidePanel(CalcNPanel); GetPanelAttribute(panel, ATTR_CALLBACK_DATA, &measuring); switch (measuring) { - case N_LO: + case LO: Measuring_1 = FALSE; DDS4xAD9912_RampFrequency(&DDS4xAD9912, 1, f0_DDS1, FREP_STEP_SIZE); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 2, f0_DDS2); break; - case N_HG: + case HG: Measuring_2 = FALSE; DDS4xAD9912_RampFrequency(&DDS4xAD9912, 1, f0_DDS1, FREP_STEP_SIZE); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 2, f0_DDS2); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 3, f0_DDS3); break; - case N_SR: + case SR: Measuring_3 = FALSE; DDS4xAD9912_RampFrequency(&DDS4xAD9912, 1, f0_DDS1, FREP_STEP_SIZE); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 2, f0_DDS2); @@ -1933,12 +1907,12 @@ case PANEL_ESTIMATE_N2: SetCtrlVal(EstimateNPanel, ESTIMATEN_WAVELENGTH, HG_WAVELENGTH); SetPanelAttribute(panel, ATTR_TITLE, "Estimate N_Hg"); - SetPanelAttribute(panel, ATTR_CALLBACK_DATA, N_HG); + SetPanelAttribute(panel, ATTR_CALLBACK_DATA, HG); break; case PANEL_ESTIMATE_N3: SetCtrlVal(EstimateNPanel, ESTIMATEN_WAVELENGTH, SR_WAVELENGTH); SetPanelAttribute(panel, ATTR_TITLE, "Estimate N_Sr"); - SetPanelAttribute(panel, ATTR_CALLBACK_DATA, N_SR); + SetPanelAttribute(panel, ATTR_CALLBACK_DATA, SR); break; } break; @@ -1972,11 +1946,11 @@ case EVENT_COMMIT: GetPanelAttribute(panel, ATTR_CALLBACK_DATA, &estimate); switch (estimate) { - case N_HG: + case HG: GetCtrlVal(panel, ESTIMATEN_N, &N2); SetCtrlVal(MainPanel, PANEL_N3CHOICE, N2); break; - case N_SR: + case SR: GetCtrlVal(panel, ESTIMATEN_N, &N3); SetCtrlVal(MainPanel, PANEL_N3CHOICE, N3); break;