Subversion Repositories f9daq

Compare Revisions

Ignore whitespace Rev 286 → Rev 285

/cvi/apps/fds100-cal.txt
0,0 → 1,76
3500 0.16651385
3600 0.15362182
3700 0.144777999
3800 0.15336802
3900 0.173599546
4000 0.199639477
4100 0.228038427
4200 0.25685647
4300 0.284622511
4400 0.309999189
4500 0.336176898
4600 0.358520801
4700 0.379913899
4800 0.400415618
4900 0.420080533
5000 0.438958851
5100 0.457096843
5200 0.474537219
5300 0.493659085
5400 0.509776443
5500 0.525307716
5600 0.5402843
5700 0.55473539
5800 0.568688167
5900 0.582167968
6000 0.595198442
6100 0.609834469
6200 0.621998372
6300 0.635744368
6400 0.647123306
6500 0.660059811
6600 0.670725517
6700 0.682923585
6800 0.692939363
6900 0.704461924
7000 0.713883846
7100 0.723040361
7200 0.731942528
7300 0.740600801
7400 0.749025066
7500 0.755571355
7600 0.763576949
7700 0.769764219
7800 0.775792841
7900 0.78166884
8000 0.787397939
8100 0.792985579
8200 0.796924743
8300 0.800768988
8400 0.804521704
8500 0.80818612
8600 0.811765317
8700 0.81383695
8800 0.815861501
8900 0.819233811
9000 0.819775632
9100 0.821668179
9200 0.822171761
9300 0.823997843
9400 0.823146781
9500 0.822313637
9600 0.820206186
9700 0.814307147
9800 0.804732587
9900 0.787836322
10000 0.762598004
10100 0.7218991
10200 0.666194335
10300 0.593513009
10400 0.506729443
10500 0.413332251
10600 0.319357655
10700 0.247999351
10800 0.197480965
10900 0.155852803
11000 0.120617866
/cvi/apps/m1.txt
0,0 → 1,36
3000 1.494e-12 2.03731e-12 19.01 25.9233
3100 2.38067e-12 3.60732e-12 18.46 27.9717
3200 2.96733e-12 6.02067e-12 18.07 36.6637
3300 4.814e-12 9.39732e-12 17.72 34.5909
3400 6.42067e-12 1.34573e-11 17.54 36.7628
3500 9.59733e-12 1.9574e-11 17.4 35.4877
3600 1.20807e-11 2.53473e-11 17.26 36.2145
3700 1.46407e-11 3.05873e-11 17.12 35.7672
3800 1.89407e-11 3.9674e-11 17.23 36.0908
3900 2.64307e-11 5.3594e-11 16.63 33.721
4000 3.47073e-11 7.01173e-11 16.24 32.8088
4100 4.41773e-11 8.78273e-11 15.88 31.5704
4200 5.33707e-11 1.06077e-10 15.27 30.35
4300 6.3134e-11 1.24971e-10 14.58 28.8604
4400 7.29173e-11 1.44551e-10 13.88 27.5156
4500 8.3004e-11 1.62571e-10 13.02 25.5008
4600 9.2724e-11 1.76557e-10 12.31 23.4397
4700 1.03264e-10 1.91194e-10 11.57 21.4219
4800 1.15857e-10 2.12091e-10 10.87 19.8988
4900 1.25024e-10 2.26841e-10 10.29 18.6699
5000 1.32181e-10 2.38694e-10 9.68 17.4803
5100 1.38334e-10 2.29851e-10 9.1 15.1202
5200 1.44581e-10 1.92624e-10 8.59 11.4444
5300 1.50304e-10 1.63564e-10 8.12 8.83635
5400 1.55291e-10 1.47404e-10 7.59 7.20453
5500 1.59387e-10 1.35497e-10 7.2 6.12082
5600 1.62277e-10 1.23847e-10 6.8 5.18964
5700 1.63841e-10 1.11047e-10 6.36 4.31066
5800 1.65431e-10 9.6454e-11 5.97 3.4808
5900 1.64894e-10 8.09873e-11 5.62 2.76025
6000 1.63471e-10 6.55107e-11 5.34 2.14
6100 1.59831e-10 5.0794e-11 5.03 1.59853
6200 1.60004e-10 3.7424e-11 4.76 1.11334
6300 1.55271e-10 2.6284e-11 4.48 0.758368
6400 1.50237e-10 1.79007e-11 4.21 0.501618
6500 1.45201e-10 1.2134e-11 3.97 0.331761
/cvi/apps/m2.dat
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: mcp_positions.txt
===================================================================
--- mcp_positions.txt (nonexistent)
+++ mcp_positions.txt (revision 285)
@@ -0,0 +1,122 @@
+30000 124000
+130000 115000
+130000 130000
+130000 145000
+130000 160000
+130000 175000
+130000 190000
+130000 205000
+130000 220000
+130000 235000
+130000 250000
+130000 265000
+145000 115000
+145000 130000
+145000 145000
+145000 160000
+145000 175000
+145000 190000
+145000 205000
+145000 220000
+145000 235000
+145000 250000
+145000 265000
+160000 115000
+160000 130000
+160000 145000
+160000 160000
+160000 175000
+160000 190000
+160000 205000
+160000 220000
+160000 235000
+160000 250000
+160000 265000
+175000 115000
+175000 130000
+175000 145000
+175000 160000
+175000 175000
+175000 190000
+175000 205000
+175000 220000
+175000 235000
+175000 250000
+175000 265000
+190000 115000
+190000 130000
+190000 145000
+190000 160000
+190000 175000
+190000 190000
+190000 205000
+190000 220000
+190000 235000
+190000 250000
+190000 265000
+205000 115000
+205000 130000
+205000 145000
+205000 160000
+205000 175000
+205000 190000
+205000 205000
+205000 220000
+205000 235000
+205000 250000
+205000 265000
+220000 115000
+220000 130000
+220000 145000
+220000 160000
+220000 175000
+220000 190000
+220000 205000
+220000 220000
+220000 235000
+220000 250000
+220000 265000
+235000 115000
+235000 130000
+235000 145000
+235000 160000
+235000 175000
+235000 190000
+235000 205000
+235000 220000
+235000 235000
+235000 250000
+235000 265000
+250000 115000
+250000 130000
+250000 145000
+250000 160000
+250000 175000
+250000 190000
+250000 205000
+250000 220000
+250000 235000
+250000 250000
+250000 265000
+265000 115000
+265000 130000
+265000 145000
+265000 160000
+265000 175000
+265000 190000
+265000 205000
+265000 220000
+265000 235000
+265000 250000
+265000 265000
+280000 115000
+280000 130000
+280000 145000
+280000 160000
+280000 175000
+280000 190000
+280000 205000
+280000 220000
+280000 235000
+280000 250000
+280000 265000
Index: plot.cpp
===================================================================
--- plot.cpp (nonexistent)
+++ plot.cpp (revision 285)
@@ -0,0 +1,58 @@
+void plot(char *fname="photopentode_000")
+{
+ const int wl_n = 36;
+ const double wl_min = 3000;
+ const double wl_max = 6500;
+
+ const int nx = 10;
+ const int ny = 10;
+ int nrows = (nx+1)*(ny+1);
+
+ char sbuff[256];
+ sprintf(sbuff, "%s.dat", fname);
+ FILE *fp=fopen(sbuff,"r");
+ if (!fp) {
+ printf("Error opening input file!\n");
+ return -1;
+ }
+
+ int nb;
+ int hdr[10];
+ int hdrp[10];
+ float *fhdr=(float *) hdrp;
+ float sdata[5];
+
+ while(!feof(fp)) {
+ for(int j=1;j<nrows;j++) {
+ nb=fread(hdr,sizeof(int),5,fp);
+ if (nb!=5) break;
+ printf("[%d] hdr[0]=%u [1]=%u [2]=%u [3]=%u [4]=%u\n",j, hdr[0],hdr[1],hdr[2],hdr[3],hdr[4]);
+ switch (hdr[0]) {
+ case 3:{
+ nb=fread(hdrp,sizeof(int),5,fp);
+ //~ printf("x=%u y=%u | i0=%g i1=%g t=%u\n",hdrp[0],hdrp[1],fhdr[2],fhdr[3],hdrp[4]);
+ //~ hdr[3]=hdrp[0];
+ //~ hdr[4]=hdrp[1];
+ //~ noise->SetPoint(icount++,hdrp[4],-fhdr[3]);
+
+ for (int i=0;i<wl_n;i++) {
+ nb=fread(sdata,sizeof(float),5,fp);
+
+ //~ // j=pointXY, i=wl
+ //~ sdata[0]=wl[0][i];
+ //~ sdata[1]=tok[0][i];
+ //~ sdata[2]=tok[j][i];
+ //~ sdata[3]=qe[0][i];
+ //~ sdata[4]=qe[j][i];
+
+ //~ printf("sdata[0]=%f [1]=%g [2]=%g [3]=%f [4]=%f\n", sdata[0], sdata[1], sdata[2], sdata[3], sdata[4]);
+ printf(" [%d] sdata[0]=%f [3]=%f [4]=%f\n", i, sdata[0], sdata[3], sdata[4]);
+ }
+ }
+ break;
+ }//switch (hdr[0])
+ }//for(int j=0;j<nrows;j++)
+ }//while(!feof(fp))
+
+ fclose(fp);
+}
Index: positions.cpp
===================================================================
--- positions.cpp (nonexistent)
+++ positions.cpp (revision 285)
@@ -0,0 +1,21 @@
+int positions() {
+
+ FILE *fp=fopen("positions.txt","w");
+ int i=0,j=0;
+ int nx=20;
+ int ny=20;
+ int minx=145000;
+ int maxx=295000;
+ int miny=85000;
+ int maxy=235000;
+ //~ fprintf(fp,"30000 124000\n");
+ fprintf(fp,"48000 110000\n");
+ for (i=0; i<nx+1; i++) for (j=0; j<ny+1; j++)
+ fprintf(fp,"%d %d\n",minx+i*(maxx-minx)/nx, miny+j*(maxy-miny)/ny);
+
+ fprintf(fp,"-1 -1\n");
+ fclose(fp);
+
+ gSystem->Exit(0);
+ return 0;
+}
Index: positions_test.txt
===================================================================
--- positions_test.txt (nonexistent)
+++ positions_test.txt (revision 285)
@@ -0,0 +1,6 @@
+30000 124000
+167500 152500
+167500 227500
+242500 152500
+242500 227500
+-1 -1
Index: qe2d.c
===================================================================
--- qe2d.c (nonexistent)
+++ qe2d.c (revision 285)
@@ -0,0 +1,736 @@
+#include <ansi_c.h>
+/* Program qe2d.c za testiranje povrsinske obcutljivosti
+
+Avtor: Samo Korpar
+Verzija:
+ 1.00 28.9.2009
+ -
+*/
+#include <utility.h>
+#include <userint.h>
+#include "K617.h"
+#include <cvirte.h>
+#include "qe2d_ui.h"
+
+#define uSMC_USB
+#ifdef uSMC_USB
+# include "uSMC.h"
+# define uSMC_SERIAL_X "0000000000004925"
+# define uSMC_SERIAL_Y "0000000000006030"
+# define uSMC_SERIAL_Z "0000000000002894"
+const char serials[3][16]= {uSMC_SERIAL_X,uSMC_SERIAL_Y,uSMC_SERIAL_Z};
+#endif /* uSMC_USB */
+
+//#define MIKRO_COM 6
+#ifdef MIKRO_COM
+# include "MIKRO.h"
+#endif /* MIKRO_COM */
+
+#define SP2155_PORT 4
+#ifdef SP2155_PORT
+# include "SP2155.h"
+#endif /* SP2155_PORT */
+
+#define PROLOGIX_PORT 5
+#define K617_ADDR 3
+
+#define MAXXY 1000
+#define MAXWL 1000
+const int PosCtrl[3]= {P1_X,P1_Y,P1_Z};
+const int ncurroff=10;
+const int ncurrmes=3;
+
+static int node[3];
+static int CurPos[3]= {0,0,0};
+static int p1h,pID,rID,tfID,plh[MAXXY],plqeh[MAXXY];
+static int wl[MAXXY][MAXWL];
+static float tok[MAXXY][MAXWL],qe[MAXXY][MAXWL],tokoff[MAXXY];
+
+//static float
+
+float getavg(int n) {
+ int i;
+ float tok;
+
+ tok=0;
+ for (i=0; i<n; i++)
+ tok+=K617_get(NULL, NULL);
+ return (tok/(float)n);
+}
+
+int CVICALLBACK cb_timer (int panel, int control, int event, void *callbackData,
+ int eventData1, int eventData2) {
+ QueueUserEvent (9000, p1h, P1_TIMER);
+ return (0);
+}
+
+
+int MDelay(double t) {
+ while (0.5<t) {
+ ProcessSystemEvents();
+ GetUserEvent (0, &pID, &rID);
+ switch (rID) {
+ case P1_STOP:
+ return 1;
+ break;
+ }
+
+ Delay(0.5);
+ t-=0.5;
+ SetCtrlVal(p1h,P1_TOUT,t);
+ }
+ Delay(t);
+ SetCtrlVal(p1h,P1_TOUT,0.0);
+ return 0;
+}
+
+int qescan() {
+ int i;
+ int npos,nref;
+ float wait;
+ int icwl;
+ double rcurr;
+
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 0);
+ GetCtrlVal (p1h, P1_POSITION, &npos);
+#ifdef MIKRO_COM
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,npos+1),&CurPos[i]);
+ MIKRO_MoveTo(node[i],CurPos[i]);
+ MIKRO_GetPosition(node[i],&CurPos[i]);
+ SetCtrlVal(p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,npos+1),&CurPos[i]);
+ uSMC_MoveTo(node[i],CurPos[i]);
+ uSMC_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal(p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* uSMC_USB */
+ K617_trigger_mode(1);
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength(1000);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+
+
+ GetCtrlVal (p1h, P1_WAIT0, &wait);
+ if (MDelay(wait*60.)) return 1;
+
+ GetCtrlVal (p1h, P1_WAIT, &wait);
+ tokoff[npos]=getavg(ncurroff);
+ SetCtrlVal (p1h, P1_BGRCUR1,tokoff[npos]);
+ GetCtrlVal (p1h, P1_NREF, &nref);
+ for (i=0; i<nref; i++) {
+ icwl=wl[0][i];
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength(icwl);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ SetCtrlVal (p1h, P1_CWL, icwl);
+ if (MDelay(wait)) return 1;
+ rcurr=getavg(ncurrmes);
+ SetCtrlVal (p1h, P1_CURR, rcurr);
+ wl[npos][i]=icwl;
+ tok[npos][i]=-(rcurr-tokoff[npos]);
+
+ }
+ if (plh[npos]) DeleteGraphPlot (p1h, P1_GSAMPLE, plh[npos], VAL_IMMEDIATE_DRAW);
+ plh[npos] = PlotXY (p1h, P1_GSAMPLE, wl[npos], tok[npos], nref, VAL_INTEGER, VAL_FLOAT,
+ VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);
+
+ for (i=0; i<nref; i++)
+ if (tok[0][i]>1e-12)
+ qe[npos][i]=qe[0][i]*tok[npos][i]/tok[0][i];
+ else
+ qe[npos][i]=0.;
+
+ if (plqeh[npos]) DeleteGraphPlot (p1h, P1_GQE, plqeh[npos], VAL_IMMEDIATE_DRAW);
+ plqeh[npos] = PlotXY (p1h, P1_GQE, wl[npos], qe[npos], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLUE);
+
+ K617_trigger_mode(0);
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 1);
+#ifdef MIKRO_COM
+ SetCtrlVal (p1h, P1_STAGELED, 1);
+ for (i=0; i<2; i++) {
+ MIKRO_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal (p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal (p1h, P1_STAGELED, 0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<2; i++) {
+ uSMC_GetPosition(node[i],&CurPos[i]);
+ SetCtrlVal(p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal (p1h, P1_STAGELED, 0);
+#endif /* uSMC_USB */
+ return 0;
+
+}
+
+
+int mcp_positions() {
+
+ FILE *fp=fopen("mcp_positions.txt","w");
+ int i=0,j=0;
+ int nx=10;
+ int ny=10;
+ int minx=130000;
+ int maxx=280000;
+ int miny=115000;
+ int maxy=265000;
+ fprintf(fp,"30000 124000\n");
+ for (i=0; i<nx+1; i++) for (j=0; j<ny+1; j++)
+ fprintf(fp,"%d %d\n",minx+i*(maxx-minx)/nx, miny+j*(maxy-miny)/ny);
+ fclose(fp);
+ return 0;
+}
+
+int __stdcall WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
+ LPSTR lpszCmdLine, int nCmdShow) {
+
+ int i,j,iret,nb;
+ int npos,nref,nrows;
+ int igr,iwl0,idwl,inwl,ilwl,icwl;
+ int scan_on;
+ int irange,vsource;
+ float vout,wait;
+ double rcurr;
+ int hdr[10];
+ float *fhdr;
+ float sdata[5];
+// char cpref[100];
+ char pfile[300];
+ FILE *fp;
+
+ scan_on=0;
+ fhdr=(float *)&hdr[0];
+
+ if (InitCVIRTE (hInstance, 0, 0) == 0) return -1; /* out of memory */
+
+ mcp_positions();
+ for (i=0; i<MAXXY; i++) {
+ tokoff[i]=0;
+ plh[i]=0;
+ plqeh[i]=0;
+ for (j=0; j<MAXWL; j++) {
+ tok[i][j]=0.;
+ wl[i][j]=0;
+ qe[i][j]=0.;
+ }
+ }
+
+#ifdef MIKRO_COM
+ MIKRO_Open(MIKRO_COM);
+ for (i=0; i<3; i++) {
+ node[i]=i+1;
+ MIKRO_Init(node[i],0);
+ }
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ uSMC_Open();
+ for (i=0; i<3; i++) {
+ node[i]=uSMC_FindSerial(serials[i])+1;
+ uSMC_Init(node[i],1);
+ }
+#endif /* uSMC_USB */
+#ifdef SP2155_PORT
+ SP2155_Open (SP2155_PORT);
+#endif /* SP2155_PORT */
+
+ if ((p1h = LoadPanel (0, "qe2d_ui.uir", P1)) < 0) return -1;
+ DisplayPanel (p1h);
+
+ K617_open(1,PROLOGIX_PORT,K617_ADDR,0,13);
+ K617_clear();
+ GetCtrlVal(p1h,P1_RANGE_R,&irange);
+ K617_current_mode(irange);
+ K617_zero_correct(1);
+ K617_data_format(0);
+ K617_trigger_mode(1);
+
+#ifdef SP2155_PORT
+ igr=SP2155_GetGrating();
+ SetCtrlVal (p1h, P1_GRATING, igr);
+ icwl = SP2155_GetWavelength ();
+ SetCtrlVal (p1h, P1_CWL, icwl);
+#endif /* SP2155_PORT */
+
+ QueueUserEvent (1000, p1h, P1_VOUT);
+ QueueUserEvent (1000, p1h, P1_VSOURCE);
+ QueueUserEvent (1000, p1h, P1_TIMER);
+ QueueUserEvent (1000, p1h, P1_WL0);
+ QueueUserEvent (1000, p1h, P1_POSITION);
+
+ fp = fopen ("refqe.txt", "r");
+ nref=0;
+ while(1) {
+ iret=fscanf (fp, " %d %f", &wl[0][nref], &qe[0][nref]);
+ if (iret==2) nref++;
+ else break;
+ }
+ fclose (fp);
+ SetCtrlVal (p1h, P1_NREF, nref);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+
+#ifdef MIKRO_COM
+ SetCtrlVal(p1h, P1_STAGELED,1);
+ for (i=0; i<3; i++) {
+ MIKRO_GetPosition(node[i],&CurPos[i]);
+ SetCtrlVal(p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h, P1_STAGELED,1);
+ for (i=0; i<3; i++) {
+ uSMC_GetPosition(node[i],&CurPos[i]);
+ SetCtrlVal(p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h, P1_STAGELED,0);
+#endif /* uSMC_USB */
+
+ do {
+ GetUserEvent (1, &pID, &rID);
+ switch (rID) {
+ case P1_TIMER:
+ rcurr=K617_get(NULL, NULL);
+ SetCtrlVal (p1h, P1_CURR, rcurr);
+ K617_status ();
+ SetCtrlVal (p1h, P1_VSOURCE, K617Stat.vsource_operate);
+ break;
+ case P1_GRATING:
+ GetCtrlVal (p1h, P1_GRATING, &igr);
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetGrating (igr);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ MessagePopup ("Reminder", "1.Switch the light source!\n2.Adjust the slit!\n3.Load the range file!");
+ break;
+ case P1_WL0:
+ case P1_DWL:
+ case P1_NWL:
+ GetCtrlVal (p1h, P1_WL0, &iwl0);
+ GetCtrlVal (p1h, P1_DWL, &idwl);
+ GetCtrlVal (p1h, P1_NWL, &inwl);
+ ilwl=iwl0+(inwl-1)*idwl;
+ SetCtrlVal (p1h, P1_LWL, ilwl);
+ break;
+ case P1_CWL:
+ GetCtrlVal (p1h, P1_CWL, &icwl);
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength (icwl);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ break;
+ case P1_SCAN:
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 0);
+ GetCtrlVal (p1h, P1_WL0, &iwl0);
+ GetCtrlVal (p1h, P1_DWL, &idwl);
+ GetCtrlVal (p1h, P1_NWL, &inwl);
+ GetCtrlVal (p1h, P1_WAIT, &wait);
+ K617_trigger_mode(1);
+ MDelay(2);
+ for (i=0; i<inwl; i++) {
+ icwl=iwl0+i*idwl;
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength(icwl);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ SetCtrlVal (p1h, P1_CWL, icwl);
+ MDelay(wait);
+ rcurr=K617_get(NULL, NULL);
+ SetCtrlVal (p1h, P1_CURR, rcurr);
+ wl[1][i]=icwl;
+ tok[1][i]=-rcurr;
+ }
+ if (plh[1]) DeleteGraphPlot (p1h, P1_GSAMPLE, plh[1], VAL_IMMEDIATE_DRAW);
+ plh[1] = PlotXY (p1h, P1_GSAMPLE, wl[1], tok[1], inwl, VAL_INTEGER, VAL_FLOAT,
+ VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);
+
+ K617_trigger_mode(0);
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 1);
+ break;
+ case P1_READREFCURR:
+ iret = FileSelectPopup ("", "*.dat", ".dat",
+ "Izberi binarno datoteko za meritve",
+ VAL_SELECT_BUTTON, 0, 0, 1, 1, pfile);
+
+ if (iret==1) {
+ fp = fopen (pfile, "rb");
+ nb=fread(hdr,sizeof(int),5,fp);
+ //printf("[%d] %d %d %d %d %d\n",nb, hdr[0], hdr[1], hdr[2], hdr[3],hdr[4]);
+ switch (hdr[0]) {
+ case 3: {
+ nb=fread(&hdr[5],sizeof(int),5,fp);
+ //printf("x=%u y=%u | i0=%g i1=%g t=%u\t",hdr[5],hdr[6],fhdr[7],fhdr[8],hdr[9]);
+ }
+ case 2:
+ case 1:
+ nref=hdr[1]/sizeof(int)/5-1;
+ if (hdr[0]==3) nref--;
+ //printf("%d [%d] x=%d y=%d\n",hdr[2],nref, hdr[3],hdr[4]);
+ for (i=0; i<nref; i++) {
+ nb=fread(sdata,sizeof(float),5,fp);
+ wl[0][i]=sdata[0];
+ tok[0][i]=sdata[1];
+ qe[0][i]=sdata[3];
+ }
+ SetCtrlVal (p1h, P1_NREF, nref);
+ if (plqeh[0]) DeleteGraphPlot (p1h, P1_GQE, plqeh[0], VAL_IMMEDIATE_DRAW);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+ if (plh[0]) DeleteGraphPlot (p1h, P1_GREF, plh[0], VAL_IMMEDIATE_DRAW);
+ plh[0] = PlotXY (p1h, P1_GREF, wl[0], tok[0], nref, VAL_INTEGER, VAL_FLOAT,
+ VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);
+ break;
+ }
+ fclose(fp);
+ }
+ break;
+ case P1_REFSCAN:
+ MessagePopup ("Reminder", "Switch the cable to measure the reference PMT current!");
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 0);
+#ifdef MIKRO_COM
+ SetCtrlVal (p1h, P1_STAGELED, 1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,1),&CurPos[i]);
+ MIKRO_MoveTo(node[i],CurPos[i]);
+ MIKRO_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal (p1h, PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal (p1h, P1_STAGELED, 0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal (p1h, P1_STAGELED, 1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,1),&CurPos[i]);
+ uSMC_MoveTo(node[i],CurPos[i]);
+ uSMC_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal (p1h, PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal (p1h, P1_STAGELED, 0);
+#endif /* uSMC_USB */
+ K617_trigger_mode(1);
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength(1000);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ GetCtrlVal (p1h, P1_WAIT0, &wait);
+ if (MDelay(wait*60.)) break;
+ GetCtrlVal (p1h, P1_WAIT, &wait);
+ tokoff[0]=getavg(ncurroff);
+ SetCtrlVal (p1h, P1_BGRCUR0,tokoff[0]);
+ for (i=0; i<nref; i++) {
+ icwl=wl[0][i];
+#ifdef SP2155_PORT
+ SetCtrlVal (p1h, P1_GLED, 1);
+ SP2155_SetWavelength(icwl);
+ SetCtrlVal (p1h, P1_GLED, 0);
+#endif /* SP2155_PORT */
+ SetCtrlVal (p1h, P1_CWL, icwl);
+ if (MDelay(wait)) break;
+ rcurr=getavg(ncurrmes);
+ SetCtrlVal (p1h, P1_CURR, rcurr);
+ tok[0][i]=-(rcurr-tokoff[0]);
+ }
+ if (plh[0]) DeleteGraphPlot (p1h, P1_GREF, plh[0], VAL_IMMEDIATE_DRAW);
+ plh[0] = PlotXY (p1h, P1_GREF, wl[0], tok[0], nref, VAL_INTEGER, VAL_FLOAT,
+ VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);
+
+ K617_trigger_mode(0);
+ SetCtrlAttribute (p1h, P1_TIMER, ATTR_ENABLED, 1);
+ break;
+ case P1_QESCAN:
+ MessagePopup ("Reminder", "Switch the cable to measure the sample detector current!");
+ // moved the delay into qescan()
+ //GetCtrlVal (p1h, P1_WAIT0, &wait);
+ //if (MDelay(wait*60)) break;
+
+ // reset plots for new scan
+ for (i=1; i<MAXXY; i++) {
+ if(plqeh[i]) SetPlotAttribute (p1h, P1_GQE, plqeh[i], ATTR_TRACE_COLOR, VAL_LT_GRAY);
+ if(plh[i]) SetPlotAttribute (p1h, P1_GSAMPLE, plh[i], ATTR_TRACE_COLOR, VAL_LT_GRAY);
+
+ plh[i]=0;
+ plqeh[i]=0;
+ }
+ if(plqeh[0]) DeleteGraphPlot (p1h, P1_GQE, plqeh[0], VAL_IMMEDIATE_DRAW);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+ RefreshGraph (p1h, P1_GQE);
+ RefreshGraph (p1h, P1_GSAMPLE);
+
+ qescan();
+ break;
+ case P1_QESCANALL:
+ MessagePopup ("Reminder", "Switch the cable to measure the sample detector current!");
+ iret=FileSelectPopup ("", "*.dat", ".dat",
+ "Izberi binarno datoteko za meritve",
+ VAL_SAVE_BUTTON, 0, 0, 1, 1, pfile);
+
+ if (iret==1||(iret==2)) {
+ // moved the delay into qescan()
+ //GetCtrlVal (p1h, P1_WAIT0, &wait);
+ //if (MDelay(wait*60)) break;
+
+ // reset plots for new scan
+ /*DeleteGraphPlot (p1h, P1_GQE, -1, VAL_IMMEDIATE_DRAW);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+ DeleteGraphPlot (p1h, P1_GSAMPLE, -1, VAL_IMMEDIATE_DRAW);
+ for (i=0; i<MAXXY; i++) {
+ plh[i]=0;
+ plqeh[i]=0;
+ }
+ */
+ for (i=1; i<MAXXY; i++) {
+ if(plqeh[i]) SetPlotAttribute (p1h, P1_GQE, plqeh[i], ATTR_TRACE_COLOR, VAL_LT_GRAY);
+ if(plh[i]) SetPlotAttribute (p1h, P1_GSAMPLE, plh[i], ATTR_TRACE_COLOR, VAL_LT_GRAY);
+
+ plh[i]=0;
+ plqeh[i]=0;
+ }
+ if(plqeh[0]) DeleteGraphPlot (p1h, P1_GQE, plqeh[0], VAL_IMMEDIATE_DRAW);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+ RefreshGraph (p1h, P1_GQE);
+ RefreshGraph (p1h, P1_GSAMPLE);
+
+
+
+ fp = fopen (pfile, "wb");
+
+ GetNumTableRows(p1h, P1_POINTS, &nrows);
+ for (j=1; j<nrows; j++) {
+ SetCtrlVal (p1h, P1_POSITION, j);
+ SetTableSelection (p1h, P1_POINTS, MakeRect(j+1,1,1,2));
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (1,j+1), &CurPos[0]);
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (2,j+1), &CurPos[1]);
+ if (CurPos[0] <= 0 && CurPos[1]<= 0) {
+ j=nrows ;
+ continue;
+ }
+ iret=qescan();
+ if (iret) break;
+ GetCtrlVal (p1h, P1_X, &CurPos[0]);
+ GetCtrlVal (p1h, P1_Y, &CurPos[1]);
+
+ hdr[0]=3;//recid 1,2= hdr len=5, 3=hdr len=10
+ hdr[1]=(nref*5+10)*sizeof(int);
+ hdr[2]=j;
+ hdr[3]=CurPos[0];
+ hdr[4]=CurPos[1];
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (1,j+1), &CurPos[0]);
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (2,j+1), &CurPos[1]);
+ hdr[5]=CurPos[0];
+ hdr[6]=CurPos[1];
+ fhdr[7]=tokoff[0];
+ fhdr[8]=tokoff[j];
+ hdr[9]=time(NULL);
+ //printf("--> %d %d %d %d %d\n", hdr[0],hdr[1],hdr[2],hdr[3],hdr[4]);
+ fwrite (hdr, sizeof(int), 10, fp);
+ for (i=0; i<nref; i++) {
+ sdata[0]=wl[0][i];
+ sdata[1]=tok[0][i];
+ sdata[2]=tok[j][i];
+ sdata[3]=qe[0][i];
+ sdata[4]=qe[j][i];
+
+ fwrite (sdata, sizeof(float), 5, fp);
+ }
+ }
+ fclose (fp);
+
+
+ }
+
+ break;
+ case P1_HO:
+// if (!daq_on) {
+ SetWaitCursor (1);
+#ifdef MIKRO_COM
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<3; i++) MIKRO_ReferenceMove(node[i]);
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<3; i++)uSMC_ReferenceMove(node[i]);
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* uSMC_USB */
+ SetWaitCursor (0);
+// }
+ break;
+ case P1_GOXY:
+ GetCtrlVal(p1h,P1_POSITION,&npos);
+#ifdef MIKRO_COM
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,npos+1),&CurPos[i]);
+ MIKRO_MoveTo(node[i],CurPos[i]);
+ MIKRO_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal (p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ for (i=0; i<2; i++) {
+ GetTableCellVal(p1h,P1_POINTS,MakePoint(i+1,npos+1),&CurPos[i]);
+ uSMC_MoveTo(node[i],CurPos[i]);
+ uSMC_GetPosition (node[i],&CurPos[i]);
+ SetCtrlVal (p1h,PosCtrl[i],CurPos[i]);
+ }
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* uSMC_USB */
+ break;
+ case P1_ZC:
+ K617_zero_correct(1);
+ break;
+ case P1_VOUT:
+ GetCtrlVal (p1h, P1_VOUT, &vout);
+ K617_vsource_set (vout);
+ break;
+ case P1_VSOURCE:
+ GetCtrlVal (p1h, P1_VSOURCE, &vsource);
+ K617_vsource_operate (vsource);
+ break;
+ case P1_RANGE_R:
+ GetCtrlVal(p1h,P1_RANGE_R,&irange);
+ K617_current_mode(irange);
+ break;
+ case P1_LOADPOINTS:
+ iret = FileSelectPopup ("", "*.txt", ".txt",
+ "Izberi datoteko s pozicijami",
+ VAL_LOAD_BUTTON, 0, 0, 1, 0, pfile);
+ if (iret==1) {
+ fp = fopen (pfile, "r");
+ i=1;
+ while(1) {
+ iret=fscanf (fp, " %d %d", &CurPos[0], &CurPos[1]);
+ if (iret==2) {
+ SetTableCellVal (p1h, P1_POINTS, MakePoint (1,i), CurPos[0]);
+ SetTableCellVal (p1h, P1_POINTS, MakePoint (2,i), CurPos[1]);
+ i++;
+ } else
+ break;
+ }
+ fclose (fp);
+ }
+ break;
+ case P1_SAVEPOINTS:
+ iret=FileSelectPopup ("", "*.txt", ".txt",
+ "Izberi datoteko s pozicijami",
+ VAL_SAVE_BUTTON, 0, 0, 1, 1, pfile);
+ if ((iret==1)||(iret==2)) {
+ fp=fopen(pfile,"w");
+ GetNumTableRows(p1h, P1_POINTS, &i);
+ for (j=0; j<i;) {
+ j++;
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (1,j), &CurPos[0]);
+ GetTableCellVal (p1h, P1_POINTS, MakePoint (2,j), &CurPos[1]);
+ fprintf(fp,"%d %d\n", CurPos[0], CurPos[1]);
+ }
+ fclose (fp);
+ }
+ break;
+ case P1_SAVEQE:
+ iret=FileSelectPopup ("", "*.txt", ".txt",
+ "Izberi datoteko za meritve",
+ VAL_SAVE_BUTTON, 0, 0, 1, 1, pfile);
+ if (iret==1||(iret==2)) {
+ fp = fopen (pfile, "w");
+ GetCtrlVal (p1h, P1_POSITION, &npos);
+ for (i=0; i<nref; i++)
+ fprintf(fp,"%d %g %g %g %g\n",
+ wl[0][i],tok[0][i],tok[npos][i],qe[0][i],qe[npos][i]);
+ fclose (fp);
+ }
+ break;
+ case P1_POSITION:
+ GetCtrlVal(p1h,P1_POSITION,&npos);
+ SetTableSelection (p1h, P1_POINTS, MakeRect(npos+1,1,1,2));
+ break;
+ case P1_READQE:
+ iret = FileSelectPopup ("", "*.txt", ".txt",
+ "Izberi referencni QE",
+ VAL_LOAD_BUTTON, 0, 0, 1, 0, pfile);
+ if (iret==1) {
+ fp = fopen (pfile, "r");
+ nref=0;
+ while(1) {
+ iret=fscanf (fp, " %d %f", &wl[0][nref], &qe[0][nref]);
+ if (iret==2) nref++;
+ else break;
+ }
+ fclose (fp);
+ SetCtrlVal (p1h, P1_NREF, nref);
+ if (plqeh[0]) DeleteGraphPlot (p1h, P1_GQE, plqeh[0], VAL_IMMEDIATE_DRAW);
+ plqeh[0] = PlotXY (p1h, P1_GQE, wl[0], qe[0], nref, VAL_INTEGER,
+ VAL_FLOAT, VAL_THIN_LINE, VAL_EMPTY_SQUARE,
+ VAL_SOLID, 1, VAL_BLACK);
+ }
+ break;
+ case P1_GLED:
+ break;
+ case P1_ZSET:
+ GetCtrlVal(p1h,P1_ZSETTO,&CurPos[2]);
+#ifdef MIKRO_COM
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ MIKRO_MoveTo(node[2],CurPos[2]);
+ MIKRO_GetPosition (node[2],&CurPos[2]);
+ SetCtrlVal (p1h,PosCtrl[2],CurPos[2]);
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ SetCtrlVal(p1h,P1_STAGELED,1);
+ uSMC_MoveTo(node[2],CurPos[2]);
+ uSMC_GetPosition (node[2],&CurPos[2]);
+ SetCtrlVal (p1h,PosCtrl[2],CurPos[2]);
+ SetCtrlVal(p1h,P1_STAGELED,0);
+#endif /* uSMC_USB */
+ break;
+ }
+
+ } while ((rID != P1_EXIT)||scan_on);
+
+ DiscardPanel (p1h);
+
+ K617_trigger_mode (0);
+ K617_close ();
+#ifdef SP2155_PORT
+ SP2155_Close ();
+#endif /* SP2155_PORT */
+#ifdef MIKRO_COM
+ MIKRO_Close ();
+#endif /* MIKRO_COM */
+#ifdef uSMC_USB
+ for (i=0; i<3; i++) uSMC_PowerOff(node[i]);
+ uSMC_Close();
+#endif /* uSMC_USB */
+
+ return 0;
+}
Index: qe2d.cws
===================================================================
--- qe2d.cws (nonexistent)
+++ qe2d.cws (revision 285)
@@ -0,0 +1,610 @@
+[Workspace Header]
+Version = 1302
+Pathname = "/c/home/rokd/qe2d/qe2d.cws"
+CVI Dir = "/c/program files/national instruments/cvi2013"
+CVI Shared Dir = "/C/Program Files/National Instruments/Shared/CVI"
+CVI Pub Local Dir = "/C/ProgramData/National Instruments/CVI2013"
+CVI Pub Global Dir = "/C/ProgramData/National Instruments/CVI"
+IVI Standard Root Dir = "/C/Program Files/IVI Foundation/IVI"
+IVI Standard Root 64-bit Dir = "/C/Program Files/IVI Foundation/IVI"
+VXIplug&play Framework Dir = "/C/Program Files/IVI Foundation/VISA/winnt"
+VXIplug&play Framework 64-bit Dir = "/C/Program Files/IVI Foundation/VISA/win64"
+Number of Projects = 4
+Active Project = 1
+Project 0001 = "qe2d.prj"
+Project 0002 = "/c/home/cvi/instr/uSMC/uSMC.prj"
+Project 0003 = "/c/home/cvi/instr/K617/K617.prj"
+Project 0003 Collapsed = True
+Project 0004 = "/c/home/cvi/instr/PROLOGIX/prologix.prj"
+Drag Bar Left = 174
+Window Top = 31
+Window Left = 135
+Window Bottom = 1009
+Window Right = 1587
+Maximized = False
+Maximized Children = True
+Max32 Number Of Errors = 20
+Track Include File Dependencies = True
+Prompt For Missing Includes = True
+Stop On First Error File = False
+Bring Up Err Win At Start = True
+Bring Up Err Win For Errors = False
+Save Changes Before Running = "Always"
+Save Changes Before Compiling = "Always"
+Hide Windows = False
+Break At First Statement = False
+Sort Type = "File Name"
+Number of Opened Files = 2
+Window Confinement Region Enabled = True
+MainColumnWidth = 157
+FileDateColumnWidth = 70
+FileSizeColumnWidth = 70
+
+[Project Header 0001]
+Version = 1302
+Don't Update DistKit = False
+Platform Code = 4
+Build Configuration = "Debug"
+Warn User If Debugging Release = 1
+Batch Build Release = False
+Batch Build Debug = False
+
+[Project Header 0002]
+Version = 1302
+Don't Update DistKit = False
+Platform Code = 4
+Build Configuration = "Debug"
+Warn User If Debugging Release = 1
+Batch Build Release = False
+Batch Build Debug = False
+
+[Project Header 0003]
+Version = 1302
+Don't Update DistKit = False
+Platform Code = 4
+Build Configuration = "Debug"
+Warn User If Debugging Release = 1
+Batch Build Release = False
+Batch Build Debug = False
+
+[Project Header 0004]
+Version = 1302
+Don't Update DistKit = False
+Platform Code = 4
+Build Configuration = "Debug"
+Warn User If Debugging Release = 1
+Batch Build Release = False
+Batch Build Debug = False
+
+[File 0001]
+Path = "/c/home/cvi/instr/K617/K617.fp"
+File Type = "Function Panel"
+Disk Date = 3500223566
+In Projects = "1,3,"
+Window Top = 281
+Window Left = 138
+Window Height = 400
+Window Width = 400
+
+[File 0002]
+Path = "/c/home/cvi/instr/MIKRO/MIKRO.fp"
+File Type = "Function Panel"
+Disk Date = 3555480934
+In Projects = "1,"
+
+[File 0003]
+Path = "/c/home/cvi/instr/PROLOGIX/prologix.fp"
+File Type = "Function Panel"
+Disk Date = 3566734754
+In Projects = "1,3,4,"
+Window Top = 95
+Window Left = 42
+Window Height = 400
+Window Width = 400
+
+[File 0004]
+Path = "/c/home/cvi/instr/SP2155/SP2155.fp"
+File Type = "Function Panel"
+Disk Date = 3565070985
+In Projects = "1,"
+
+[File 0005]
+Path = "/c/home/cvi/instr/uSMC/uSMC.fp"
+File Type = "Function Panel"
+Disk Date = 3566845955
+In Projects = "1,"
+Window Top = 33
+Window Left = 10
+Window Height = 400
+Window Width = 400
+
+[File 0006]
+Path = "/c/home/cvi/instr/PROLOGIX/prologix.h"
+File Type = "Include"
+Disk Date = 3566734799
+In Projects = "4,"
+Window Top = 64
+Window Left = 26
+Source Window State = "1,40,41,40,0,0,0,0,0,0,0,0,0,0,0,0,27,0,40,0,336,683,1,0,"
+Line Tags = "38,40,"
+
+[File 0007]
+Path = "/c/home/cvi/instr/uSMC/uSMC.c"
+File Type = "CSource"
+Disk Date = 3567504716
+In Projects = "2,"
+Window Top = 157
+Window Left = 74
+Source Window State = "1,701,701,701,13,18,18,0,0,0,0,0,0,0,0,0,223,0,242,21,349,683,1,0,"
+Line Tags = "385,415,"
+
+[File 0008]
+Path = "/c/home/rokd/qe2d/qe2d.c"
+File Type = "CSource"
+Disk Date = 3567505737
+In Projects = "1,"
+Window Top = 95
+Window Left = 42
+Window Height = -16281
+Window Z-Order = 1
+Source Window State = "1,615,617,615,0,0,0,0,0,155,0,0,0,0,0,47,662,0,701,147,349,683,1,0,"
+
+[File 0009]
+Path = "/c/home/rokd/qe2d/qe2d_ui.uir"
+File Type = "User Interface Resource"
+Disk Date = 3567505808
+In Projects = "1,"
+Window Top = 126
+Window Left = 58
+Window Height = 349
+Window Width = 683
+Window Z-Order = 2
+
+[File 0010]
+Path = "/c/home/cvi/instr/uSMC/msvc/USMCDLL.lib"
+File Type = "Library"
+Disk Date = 3453981150
+In Projects = "2,"
+
+[File 0011]
+Path = "/c/home/cvi/instr/uSMC/Test MicroSMC.c"
+File Type = "CSource"
+Disk Date = 3453816226
+In Projects = "2,"
+Source Window State = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"
+
+[File 0012]
+Path = "/c/home/cvi/instr/uSMC/uSMCctrl.c"
+File Type = "CSource"
+Disk Date = 3565072026
+In Projects = "2,"
+Source Window State = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"
+
+[File 0013]
+Path = "/c/home/cvi/instr/uSMC/uSMC_ui.uir"
+File Type = "User Interface Resource"
+Disk Date = 3555480934
+In Projects = "2,"
+Window Top = 95
+Window Left = 42
+Window Height = 349
+Window Width = 683
+
+[File 0014]
+Path = "/c/home/cvi/instr/uSMC/uSMC.h"
+File Type = "Include"
+Disk Date = 3566846010
+In Projects = "2,"
+Window Top = 126
+Window Left = 58
+Source Window State = "1,45,45,45,13,26,26,0,3,0,0,0,0,0,0,0,24,0,45,13,349,683,1,0,"
+
+[File 0015]
+Path = "/c/home/cvi/instr/uSMC/uSMCctrl.h"
+File Type = "Include"
+Disk Date = 3368073847
+In Projects = "2,"
+Source Window State = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"
+
+[File 0016]
+Path = "/c/home/cvi/instr/uSMC/USMCDLL.h"
+File Type = "Include"
+Disk Date = 3438609818
+In Projects = "2,"
+Window Top = 64
+Window Left = 26
+Source Window State = "1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,0,21,8,349,683,1,0,"
+
+[File 0017]
+Path = "/c/home/cvi/instr/K617/K617.c"
+File Type = "CSource"
+Disk Date = 3566842407
+In Projects = "3,"
+Window Top = 374
+Window Left = 186
+Source Window State = "1,288,289,288,0,0,0,0,0,0,0,0,0,0,0,0,180,0,102,9,349,683,1,0,"
+
+[File 0018]
+Path = "/c/home/cvi/instr/K617/K617.h"
+File Type = "Include"
+Disk Date = 3566720287
+In Projects = "3,"
+Window Top = 343
+Window Left = 170
+Source Window State = "1,30,30,30,14,31,31,0,3,0,0,0,0,0,0,0,18,0,30,14,349,683,1,0,"
+
+[File 0019]
+Path = "/c/home/cvi/instr/PROLOGIX/prologix.c"
+File Type = "CSource"
+Disk Date = 3566769377
+In Projects = "4,"
+Window Top = 95
+Window Left = 42
+Source Window State = "1,158,159,158,0,0,0,0,0,0,0,0,0,0,0,0,149,0,189,0,336,683,1,0,"
+
+[File 0020]
+Path = "/c/home/cvi/instr/PROLOGIX/prologix_ui.uir"
+File Type = "User Interface Resource"
+Disk Date = 3566769037
+In Projects = "4,"
+Window Top = 95
+Window Left = 42
+Window Height = 349
+Window Width = 683
+
+[Tab Order]
+Tab 0001 = "/c/home/rokd/qe2d/qe2d.c"
+Tab 0002 = "/c/home/rokd/qe2d/qe2d_ui.uir"
+
+[Default Build Config 0001 Debug]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0001 Release]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0001 Debug64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0001 Release64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Build Dependencies 0001]
+Number of Dependencies = 0
+
+[Build Options 0001]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Execution Trace = "Disabled"
+Profile = "Disabled"
+Debugging Level = "Standard"
+Break On Library Errors = True
+Break On First Chance Exceptions = False
+
+[Execution Target 0001]
+Execution Target Address = "Local desktop computer"
+Execution Target Port = 0
+Execution Target Type = 0
+
+[SCC Options 0001]
+Use global settings = True
+SCC Provider = ""
+SCC Project = ""
+Local Path = ""
+Auxiliary Path = ""
+Perform Same Action For .h File As For .uir File = "Ask"
+Perform Same Action For .cds File As For .prj File = "Ask"
+Username = ""
+Comment = ""
+Use Default Username = False
+Use Default Comment = False
+Suppress CVI Error Messages = False
+Always show confirmation dialog = True
+
+[DLL Debugging Support 0001]
+External Process Path = ""
+
+[Command Line Args 0001]
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+
+[Default Build Config 0002 Debug]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0002 Release]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0002 Debug64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0002 Release64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Build Dependencies 0002]
+Number of Dependencies = 0
+
+[Build Options 0002]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Execution Trace = "Disabled"
+Profile = "Disabled"
+Debugging Level = "Standard"
+Break On Library Errors = True
+Break On First Chance Exceptions = False
+
+[Execution Target 0002]
+Execution Target Address = "Local desktop computer"
+Execution Target Port = 0
+Execution Target Type = 0
+
+[SCC Options 0002]
+Use global settings = True
+SCC Provider = ""
+SCC Project = ""
+Local Path = ""
+Auxiliary Path = ""
+Perform Same Action For .h File As For .uir File = "Ask"
+Perform Same Action For .cds File As For .prj File = "Ask"
+Username = ""
+Comment = ""
+Use Default Username = False
+Use Default Comment = False
+Suppress CVI Error Messages = False
+Always show confirmation dialog = True
+
+[DLL Debugging Support 0002]
+External Process Path = ""
+
+[Command Line Args 0002]
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+
+[Default Build Config 0003 Debug]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0003 Release]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0003 Debug64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0003 Release64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Build Dependencies 0003]
+Number of Dependencies = 0
+
+[Build Options 0003]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Execution Trace = "Disabled"
+Profile = "Disabled"
+Debugging Level = "Standard"
+Break On Library Errors = True
+Break On First Chance Exceptions = False
+
+[Execution Target 0003]
+Execution Target Address = "Local desktop computer"
+Execution Target Port = 0
+Execution Target Type = 0
+
+[SCC Options 0003]
+Use global settings = True
+SCC Provider = ""
+SCC Project = ""
+Local Path = ""
+Auxiliary Path = ""
+Perform Same Action For .h File As For .uir File = "Ask"
+Perform Same Action For .cds File As For .prj File = "Ask"
+Username = ""
+Comment = ""
+Use Default Username = False
+Use Default Comment = False
+Suppress CVI Error Messages = False
+Always show confirmation dialog = True
+
+[DLL Debugging Support 0003]
+External Process Path = ""
+
+[Command Line Args 0003]
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+
+[Default Build Config 0004 Debug]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0004 Release]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0004 Debug64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Default Build Config 0004 Release64]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Batch Build = False
+Profile = "Disabled"
+Debugging Level = "Standard"
+Execution Trace = "Disabled"
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+External Process Path = ""
+
+[Build Dependencies 0004]
+Number of Dependencies = 0
+
+[Build Options 0004]
+Generate Browse Info = True
+Enable Uninitialized Locals Runtime Warning = True
+Execution Trace = "Disabled"
+Profile = "Disabled"
+Debugging Level = "Standard"
+Break On Library Errors = True
+Break On First Chance Exceptions = False
+
+[Execution Target 0004]
+Execution Target Address = "Local desktop computer"
+Execution Target Port = 0
+Execution Target Type = 0
+
+[SCC Options 0004]
+Use global settings = True
+SCC Provider = ""
+SCC Project = ""
+Local Path = ""
+Auxiliary Path = ""
+Perform Same Action For .h File As For .uir File = "Ask"
+Perform Same Action For .cds File As For .prj File = "Ask"
+Username = ""
+Comment = ""
+Use Default Username = False
+Use Default Comment = False
+Suppress CVI Error Messages = False
+Always show confirmation dialog = True
+
+[DLL Debugging Support 0004]
+External Process Path = ""
+
+[Command Line Args 0004]
+Command Line Args = ""
+Working Directory = ""
+Environment Options = ""
+
Index: qe2d.prj
===================================================================
--- qe2d.prj (nonexistent)
+++ qe2d.prj (revision 285)
@@ -0,0 +1,493 @@
+[Project Header]
+Version = 1302
+Pathname = "/c/home/rokd/qe2d/qe2d.prj"
+CVI Dir = "/c/program files/national instruments/cvi2013"
+CVI Shared Dir = "/C/Program Files/National Instruments/Shared/CVI"
+CVI Pub Local Dir = "/C/ProgramData/National Instruments/CVI2013"
+CVI Pub Global Dir = "/C/ProgramData/National Instruments/CVI"
+IVI Standard Root Dir = "/C/Program Files/IVI Foundation/IVI"
+VXIplug&play Framework Dir = "/C/Program Files/IVI Foundation/VISA/winnt"
+IVI Standard Root 64-bit Dir = "/C/Program Files/IVI Foundation/IVI"
+VXIplug&play Framework 64-bit Dir = "/C/Program Files/IVI Foundation/VISA/win64"
+Number of Files = 8
+Target Type = "Executable"
+Flags = 16
+Copied From Locked InstrDrv Directory = False
+Copied from VXIPNP Directory = False
+Locked InstrDrv Name = ""
+Don't Display Deploy InstrDrv Dialog = False
+
+[Folders]
+Include Files Folder Not Added Yet = True
+Folder 0 = "Source Files"
+FolderEx 0 = "Source Files"
+Folder 1 = "User Interface Files"
+FolderEx 1 = "User Interface Files"
+Folder 2 = "Instrument Files"
+FolderEx 2 = "Instrument Files"
+Folder 3 = "Library Files"
+FolderEx 3 = "Library Files"
+
+[File 0001]
+File Type = "CSource"
+Res Id = 1
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "qe2d.c"
+Path = "/c/home/rokd/qe2d/qe2d.c"
+Exclude = False
+Compile Into Object File = False
+Project Flags = 0
+Folder = "Source Files"
+Folder Id = 0
+
+[File 0002]
+File Type = "User Interface Resource"
+Res Id = 2
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "qe2d_ui.uir"
+Path = "/c/home/rokd/qe2d/qe2d_ui.uir"
+Exclude = False
+Project Flags = 0
+Folder = "User Interface Files"
+Folder Id = 1
+
+[File 0003]
+File Type = "Function Panel"
+Res Id = 3
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/K617/K617.fp"
+Path = "/c/home/cvi/instr/K617/K617.fp"
+Exclude = False
+Project Flags = 0
+Folder = "Instrument Files"
+Folder Id = 2
+
+[File 0004]
+File Type = "Function Panel"
+Res Id = 4
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/MIKRO/MIKRO.fp"
+Path = "/c/home/cvi/instr/MIKRO/MIKRO.fp"
+Exclude = False
+Project Flags = 0
+Folder = "Instrument Files"
+Folder Id = 2
+
+[File 0005]
+File Type = "Function Panel"
+Res Id = 5
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/PROLOGIX/prologix.fp"
+Path = "/c/home/cvi/instr/PROLOGIX/prologix.fp"
+Exclude = False
+Project Flags = 0
+Folder = "Instrument Files"
+Folder Id = 2
+
+[File 0006]
+File Type = "Function Panel"
+Res Id = 6
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/SP2155/SP2155.fp"
+Path = "/c/home/cvi/instr/SP2155/SP2155.fp"
+Exclude = False
+Project Flags = 0
+Folder = "Instrument Files"
+Folder Id = 2
+
+[File 0007]
+File Type = "Function Panel"
+Res Id = 7
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/uSMC/uSMC.fp"
+Path = "/c/home/cvi/instr/uSMC/uSMC.fp"
+Exclude = False
+Project Flags = 0
+Folder = "Instrument Files"
+Folder Id = 2
+
+[File 0008]
+File Type = "Library"
+Res Id = 8
+Path Is Rel = True
+Path Rel To = "Project"
+Path Rel Path = "../../cvi/instr/uSMC/USMCDLL.lib"
+Path = "/c/home/cvi/instr/uSMC/USMCDLL.lib"
+Exclude = False
+Project Flags = 0
+Folder = "Library Files"
+Folder Id = 3
+
+[Custom Build Configs]
+Num Custom Build Configs = 0
+
+[Default Build Config Debug]
+Config Name = "Debug"
+Is 64-Bit = False
+Is Release = False
+Default Calling Convention = "cdecl"
+Optimization Level = "No optimizations"
+Require Prototypes = True
+Show Warning IDs in Build Output = False
+Selected Warning Level = "None"
+Warning List None = "4,9,84,105,106,107,108,109,110,111"
+Warning List Common = ""
+Warning List Extended = ""
+Warning List All = ""
+Warning Mode = 0
+Enable Unreferenced Identifiers Warning = False
+Enable Pointer Mismatch Warning = False
+Enable Unreachable Code Warning = False
+Enable Assignment In Conditional Warning = False
+Uninitialized Locals Compile Warning = "Aggressive"
+Require Return Values = True
+Enable C99 Extensions = False
+Enable OpenMP Extensions = False
+Stack Size = 250000
+Stack Reserve = 1048576
+Stack Commit = 4096
+Image Base Address = 4194304
+Image Base Address x64 = 4194304
+Compiler Defines = "/DWIN32_LEAN_AND_MEAN"
+Sign = False
+Sign Store = ""
+Sign Certificate = ""
+Sign Timestamp URL = ""
+Sign URL = ""
+Manifest Embed = False
+Icon File Is Rel = False
+Icon File = ""
+Application Title = ""
+Use IVI Subdirectories for Import Libraries = False
+Use VXIPNP Subdirectories for Import Libraries = False
+Use Dflt Import Lib Base Name = True
+Where to Copy DLL = "Do not copy"
+Custom Directory to Copy DLL Is Rel = False
+Custom Directory to Copy DLL = ""
+Generate Source Documentation = "None"
+Runtime Support = "Full Runtime Support"
+Runtime Binding = "Shared"
+Embed Project .UIRs = False
+Generate Map File = False
+Embed Timestamp = True
+Create Console Application = False
+Using LoadExternalModule = True
+DLL Exports = "Include File Symbols"
+Register ActiveX Server = False
+Numeric File Version = "1,0,0,0"
+Numeric Prod Version = "1,0,0,0"
+Comments = ""
+Comments Ex = ""
+Company Name = ""
+Company Name Ex = "%company"
+File Description = "qe2d_dbg (Debug x86)"
+File Description Ex = "%application (%rel_dbg %arch)"
+File Version = "1.0"
+File Version Ex = "%f1.%f2"
+Internal Name = "qe2d_dbg"
+Internal Name Ex = "%basename"
+Legal Copyright = "Copyright © 2017"
+Legal Copyright Ex = "Copyright © %company %Y"
+Legal Trademarks = ""
+Legal Trademarks Ex = ""
+Original Filename = "qe2d_dbg.exe"
+Original Filename Ex = "%filename"
+Private Build = ""
+Private Build Ex = ""
+Product Name = " qe2d_dbg"
+Product Name Ex = "%company %application"
+Product Version = "1.0"
+Product Version Ex = "%p1.%p2"
+Special Build = ""
+Special Build Ex = ""
+Add Type Lib To DLL = False
+Include Type Lib Help Links = False
+TLB Help Style = "HLP"
+Type Lib FP File Is Rel = False
+Type Lib FP File = ""
+
+[Default Build Config Release]
+Config Name = "Release"
+Is 64-Bit = False
+Is Release = True
+Default Calling Convention = "cdecl"
+Optimization Level = "No optimizations"
+Require Prototypes = True
+Show Warning IDs in Build Output = False
+Selected Warning Level = "None"
+Warning List None = "4,9,84,105,106,107,108,109,110,111"
+Warning List Common = ""
+Warning List Extended = ""
+Warning List All = ""
+Warning Mode = 0
+Enable Unreferenced Identifiers Warning = False
+Enable Pointer Mismatch Warning = False
+Enable Unreachable Code Warning = False
+Enable Assignment In Conditional Warning = False
+Uninitialized Locals Compile Warning = "Aggressive"
+Require Return Values = True
+Enable C99 Extensions = False
+Enable OpenMP Extensions = False
+Stack Size = 250000
+Stack Reserve = 1048576
+Stack Commit = 4096
+Image Base Address = 4194304
+Image Base Address x64 = 4194304
+Compiler Defines = "/DWIN32_LEAN_AND_MEAN"
+Sign = False
+Sign Store = ""
+Sign Certificate = ""
+Sign Timestamp URL = ""
+Sign URL = ""
+Manifest Embed = False
+Icon File Is Rel = False
+Icon File = ""
+Application Title = ""
+Use IVI Subdirectories for Import Libraries = False
+Use VXIPNP Subdirectories for Import Libraries = False
+Use Dflt Import Lib Base Name = True
+Where to Copy DLL = "Do not copy"
+Custom Directory to Copy DLL Is Rel = False
+Custom Directory to Copy DLL = ""
+Generate Source Documentation = "None"
+Runtime Support = "Full Runtime Support"
+Runtime Binding = "Shared"
+Embed Project .UIRs = False
+Generate Map File = False
+Embed Timestamp = True
+Create Console Application = False
+Using LoadExternalModule = True
+DLL Exports = "Include File Symbols"
+Register ActiveX Server = False
+Add Type Lib To DLL = False
+Include Type Lib Help Links = False
+TLB Help Style = "HLP"
+Type Lib FP File Is Rel = False
+Type Lib FP File = ""
+
+[Default Build Config Debug64]
+Config Name = "Debug64"
+Is 64-Bit = True
+Is Release = False
+Default Calling Convention = "cdecl"
+Optimization Level = "No optimizations"
+Require Prototypes = True
+Show Warning IDs in Build Output = False
+Selected Warning Level = "None"
+Warning List None = "4,9,84,105,106,107,108,109,110,111"
+Warning List Common = ""
+Warning List Extended = ""
+Warning List All = ""
+Warning Mode = 0
+Enable Unreferenced Identifiers Warning = False
+Enable Pointer Mismatch Warning = False
+Enable Unreachable Code Warning = False
+Enable Assignment In Conditional Warning = False
+Uninitialized Locals Compile Warning = "Aggressive"
+Require Return Values = True
+Enable C99 Extensions = False
+Enable OpenMP Extensions = False
+Stack Size = 250000
+Stack Reserve = 1048576
+Stack Commit = 4096
+Image Base Address = 4194304
+Image Base Address x64 = 4194304
+Compiler Defines = "/DWIN32_LEAN_AND_MEAN"
+Sign = False
+Sign Store = ""
+Sign Certificate = ""
+Sign Timestamp URL = ""
+Sign URL = ""
+Manifest Embed = False
+Icon File Is Rel = False
+Icon File = ""
+Application Title = ""
+Use IVI Subdirectories for Import Libraries = False
+Use VXIPNP Subdirectories for Import Libraries = False
+Use Dflt Import Lib Base Name = True
+Where to Copy DLL = "Do not copy"
+Custom Directory to Copy DLL Is Rel = False
+Custom Directory to Copy DLL = ""
+Generate Source Documentation = "None"
+Runtime Support = "Full Runtime Support"
+Runtime Binding = "Shared"
+Embed Project .UIRs = False
+Generate Map File = False
+Embed Timestamp = True
+Create Console Application = False
+Using LoadExternalModule = True
+DLL Exports = "Include File Symbols"
+Register ActiveX Server = False
+Add Type Lib To DLL = False
+Include Type Lib Help Links = False
+TLB Help Style = "HLP"
+Type Lib FP File Is Rel = False
+Type Lib FP File = ""
+
+[Default Build Config Release64]
+Config Name = "Release64"
+Is 64-Bit = True
+Is Release = True
+Default Calling Convention = "cdecl"
+Optimization Level = "No optimizations"
+Require Prototypes = True
+Show Warning IDs in Build Output = False
+Selected Warning Level = "None"
+Warning List None = "4,9,84,105,106,107,108,109,110,111"
+Warning List Common = ""
+Warning List Extended = ""
+Warning List All = ""
+Warning Mode = 0
+Enable Unreferenced Identifiers Warning = False
+Enable Pointer Mismatch Warning = False
+Enable Unreachable Code Warning = False
+Enable Assignment In Conditional Warning = False
+Uninitialized Locals Compile Warning = "Aggressive"
+Require Return Values = True
+Enable C99 Extensions = False
+Enable OpenMP Extensions = False
+Stack Size = 250000
+Stack Reserve = 1048576
+Stack Commit = 4096
+Image Base Address = 4194304
+Image Base Address x64 = 4194304
+Compiler Defines = "/DWIN32_LEAN_AND_MEAN"
+Sign = False
+Sign Store = ""
+Sign Certificate = ""
+Sign Timestamp URL = ""
+Sign URL = ""
+Manifest Embed = False
+Icon File Is Rel = False
+Icon File = ""
+Application Title = ""
+Use IVI Subdirectories for Import Libraries = False
+Use VXIPNP Subdirectories for Import Libraries = False
+Use Dflt Import Lib Base Name = True
+Where to Copy DLL = "Do not copy"
+Custom Directory to Copy DLL Is Rel = False
+Custom Directory to Copy DLL = ""
+Generate Source Documentation = "None"
+Runtime Support = "Full Runtime Support"
+Runtime Binding = "Shared"
+Embed Project .UIRs = False
+Generate Map File = False
+Embed Timestamp = True
+Create Console Application = False
+Using LoadExternalModule = True
+DLL Exports = "Include File Symbols"
+Register ActiveX Server = False
+Add Type Lib To DLL = False
+Include Type Lib Help Links = False
+TLB Help Style = "HLP"
+Type Lib FP File Is Rel = False
+Type Lib FP File = ""
+
+[Compiler Options]
+Default Calling Convention = "cdecl"
+Require Prototypes = True
+Require Return Values = True
+Enable Pointer Mismatch Warning = False
+Enable Unreachable Code Warning = False
+Enable Unreferenced Identifiers Warning = False
+Enable Assignment In Conditional Warning = False
+O Option Compatible With 5.0 = False
+Enable C99 Extensions = False
+Uninitialized Locals Compile Warning = "Aggressive"
+Precompile Prefix Header = False
+Prefix Header File = ""
+
+[Run Options]
+Stack Size = 250000
+Stack Commit = 4096
+Image Base Address = 4194304
+Image Base Address x64 = 4194304
+
+[Compiler Defines]
+Compiler Defines = "/DWIN32_LEAN_AND_MEAN"
+
+[Create Executable]
+Executable File_Debug Is Rel = True
+Executable File_Debug Rel To = "Project"
+Executable File_Debug Rel Path = "qe2d_dbg.exe"
+Executable File_Debug = "/c/home/rokd/qe2d/qe2d_dbg.exe"
+Executable File_Release Is Rel = True
+Executable File_Release Rel To = "Project"
+Executable File_Release Rel Path = "qe2d.exe"
+Executable File_Release = "/c/home/rokd/qe2d/qe2d.exe"
+Executable File_Debug64 Is Rel = True
+Executable File_Debug64 Rel To = "Project"
+Executable File_Debug64 Rel Path = "qe2d.exe"
+Executable File_Debug64 = "/c/home/rokd/qe2d/qe2d.exe"
+Executable File_Release64 Is Rel = True
+Executable File_Release64 Rel To = "Project"
+Executable File_Release64 Rel Path = "qe2d.exe"
+Executable File_Release64 = "/c/home/rokd/qe2d/qe2d.exe"
+Icon File Is Rel = False
+Icon File = ""
+Application Title = ""
+DLL Exports = "Include File Symbols"
+Use IVI Subdirectories for Import Libraries = False
+Use VXIPNP Subdirectories for Import Libraries = False
+Use Dflt Import Lib Base Name = True
+Where to Copy DLL = "Do not copy"
+Custom Directory to Copy DLL Is Rel = False
+Custom Directory to Copy DLL = ""
+Generate Source Documentation = "None"
+Add Type Lib To DLL = False
+Include Type Lib Help Links = False
+TLB Help Style = "HLP"
+Type Lib FP File Is Rel = False
+Type Lib FP File = ""
+Type Lib Guid = ""
+Runtime Support = "Full Runtime Support"
+Instrument Driver Support Only = False
+Embed Project .UIRs = False
+Generate Map File = False
+
+[External Compiler Support]
+UIR Callbacks File Option = 0
+Using LoadExternalModule = False
+Create Project Symbols File = True
+UIR Callbacks Obj File Is Rel = False
+UIR Callbacks Obj File = ""
+Project Symbols H File Is Rel = False
+Project Symbols H File = ""
+Project Symbols Obj File Is Rel = False
+Project Symbols Obj File = ""
+
+[ActiveX Server Options]
+Specification File Is Rel = False
+Specification File = ""
+Source File Is Rel = False
+Source File = ""
+Include File Is Rel = False
+Include File = ""
+IDL File Is Rel = False
+IDL File = ""
+Register ActiveX Server = False
+
+[Signing Info]
+Sign = False
+Sign Debug Build = False
+Store = ""
+Certificate = ""
+Timestamp URL = ""
+URL = ""
+
+[Manifest Info]
+Embed = False
+
+[tpcSection]
+tpcEnabled = 0
+tpcOverrideEnvironment = 0
+tpcEnabled x64 = 0
+tpcOverrideEnvironment x64 = 0
+
Index: qe2d_dbg.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/qe2d_dbg.exe
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: qe2d_ui.h
===================================================================
--- qe2d_ui.h (nonexistent)
+++ qe2d_ui.h (revision 285)
@@ -0,0 +1,81 @@
+/**************************************************************************/
+/* LabWindows/CVI User Interface Resource (UIR) Include File */
+/* */
+/* WARNING: Do not add to, delete from, or otherwise modify the contents */
+/* of this include file. */
+/**************************************************************************/
+
+#include <userint.h>
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+ /* Panels and Controls: */
+
+#define P1 1
+#define P1_GRATING 2 /* control type: ring, callback function: (none) */
+#define P1_NWL 3 /* control type: numeric, callback function: (none) */
+#define P1_DWL 4 /* control type: numeric, callback function: (none) */
+#define P1_CWL 5 /* control type: numeric, callback function: (none) */
+#define P1_LWL 6 /* control type: numeric, callback function: (none) */
+#define P1_WL0 7 /* control type: numeric, callback function: (none) */
+#define P1_STAGELED 8 /* control type: LED, callback function: (none) */
+#define P1_GLED 9 /* control type: LED, callback function: (none) */
+#define P1_SCAN 10 /* control type: command, callback function: (none) */
+#define P1_ZC 11 /* control type: command, callback function: (none) */
+#define P1_EXIT 12 /* control type: command, callback function: (none) */
+#define P1_CURR 13 /* control type: numeric, callback function: (none) */
+#define P1_ZSETTO 14 /* control type: numeric, callback function: (none) */
+#define P1_Z 15 /* control type: numeric, callback function: (none) */
+#define P1_Y 16 /* control type: numeric, callback function: (none) */
+#define P1_X 17 /* control type: numeric, callback function: (none) */
+#define P1_ZSET 18 /* control type: command, callback function: (none) */
+#define P1_GOXY 19 /* control type: command, callback function: (none) */
+#define P1_READREFCURR 20 /* control type: command, callback function: (none) */
+#define P1_READQE 21 /* control type: command, callback function: (none) */
+#define P1_STOP 22 /* control type: command, callback function: (none) */
+#define P1_SAVEQE 23 /* control type: command, callback function: (none) */
+#define P1_SAVEPOINTS 24 /* control type: command, callback function: (none) */
+#define P1_LOADPOINTS 25 /* control type: command, callback function: (none) */
+#define P1_HO 26 /* control type: command, callback function: (none) */
+#define P1_GSAMPLE 27 /* control type: graph, callback function: (none) */
+#define P1_GREF 28 /* control type: graph, callback function: (none) */
+#define P1_GQE 29 /* control type: graph, callback function: (none) */
+#define P1_POINTS 30 /* control type: table, callback function: (none) */
+#define P1_VSOURCE 31 /* control type: radioButton, callback function: (none) */
+#define P1_BGRCUR1 32 /* control type: numeric, callback function: (none) */
+#define P1_BGRCUR0 33 /* control type: numeric, callback function: (none) */
+#define P1_VOUT 34 /* control type: numeric, callback function: (none) */
+#define P1_NREF 35 /* control type: numeric, callback function: (none) */
+#define P1_TOUT 36 /* control type: numeric, callback function: (none) */
+#define P1_WAIT0 37 /* control type: numeric, callback function: (none) */
+#define P1_WAIT 38 /* control type: numeric, callback function: (none) */
+#define P1_QESCANALL 39 /* control type: command, callback function: (none) */
+#define P1_QESCAN 40 /* control type: command, callback function: (none) */
+#define P1_REFSCAN 41 /* control type: command, callback function: (none) */
+#define P1_POSITION 42 /* control type: numeric, callback function: (none) */
+#define P1_RANGE_R 43 /* control type: ring, callback function: (none) */
+#define P1_TIMER 44 /* control type: timer, callback function: cb_timer */
+#define P1_DECORATION 45 /* control type: deco, callback function: (none) */
+#define P1_DECORATION_2 46 /* control type: deco, callback function: (none) */
+
+
+ /* Control Arrays: */
+
+ /* (no control arrays in the resource file) */
+
+
+ /* Menu Bars, Menus, and Menu Items: */
+
+ /* (no menu bars in the resource file) */
+
+
+ /* Callback Prototypes: */
+
+int CVICALLBACK cb_timer(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
+
+
+#ifdef __cplusplus
+ }
+#endif
Index: qe2d_ui.uir
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/qe2d_ui.uir
Property changes:
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: qeplot.C
===================================================================
--- qeplot.C (nonexistent)
+++ qeplot.C (revision 285)
@@ -0,0 +1,241 @@
+
+#include <stdlib.h>
+#include <stdio.h>
+#include "TH1F.h"
+#include "TH2F.h"
+#include "TH1.h"
+#include "TStyle.h"
+#include "TString.h"
+#include "TGraph2D.h"
+#include "TGraph.h"
+#include "TCanvas.h"
+#include "TROOT.h"
+#include "TFile.h"
+#include "TCanvas.h"
+
+int qeplot(char *fname="2010_05_19_mcp9000596_d.dat",int nx=9, int ny=9,int wl=4000, const char *snc="9000596" ){
+/*
+hdr[0]=1;//recid
+hdr[1]=(nref*5+5)*sizeof(int);
+hdr[2]=j;
+hdr[3]=xpos;
+hdr[4]=ypos;
+
+hdr[5]=xpos;//recid
+hdr[6]=ypos;
+fhdr[7]=bgrtokref;
+fhdr[8]=bgrtok;
+hdr[9]=time(NULL);
+
+
+sdata[0]=wl[0][i];
+sdata[1]=tok[0][i];
+sdata[2]=tok[j][i];
+sdata[3]=qe[0][i];
+sdata[4]=qe[j][i];
+ */
+gROOT->Reset();
+char rname[256];
+sprintf(rname,"%s",fname);
+sprintf(&rname[strlen(rname)-3],"root");
+FILE *fp=fopen(fname,"r");
+if (!fp) return -1;
+TFile *f=new TFile(rname,"RECREATE");
+int hdr[5];
+int hdrp[5];
+float sdata[5];
+float *fhdr=(float *) hdrp;
+TGraph2D * gr2d=0;
+TGraph * noised=0;
+TH2F * h2d=0;
+TH1F * h1d=0;
+TGraph *noise= new TGraph();
+
+const float fac=0.3595e-3;
+
+TString sn(snc);
+int nwl=46;
+float minwl=200;
+float maxwl=660;
+TString swl;
+swl.Form(" %d nm",int(wl/10.));
+
+if (nx==1) {
+ noised=new TGraph();
+ h1d=new TH1F("h1d",(sn+swl+TString(";y [steps]")).Data(),ny,-0.5,ny-0.5);
+ h2d=new TH2F("h2d",(sn+swl+TString(";y [steps];wavelength [nm]")).Data(),ny,-0.5,ny-0.5,nwl,minwl-1,maxwl-1);
+}
+if (ny==1) {
+ noised=new TGraph();
+ h1d=new TH1F("h1d",(sn+swl+TString(";y [steps]")).Data(),nx,-0.5,nx-0.5);
+ h2d=new TH2F("h2d",(sn+swl+TString(";y [steps];wavelength [nm]")).Data(),nx,-0.5,nx-0.5,nwl,minwl-1,maxwl-1);
+}
+if (ny>1 && nx>1) {
+ gr2d=new TGraph2D(ny*nx);
+
+ h2d=new TH2F("h2d",(sn+swl+TString(";x [steps];y [steps]")).Data(),nx,-0.5,nx-0.5,ny,-0.5,ny-0.5);
+}
+int posk0=0;
+
+int icount=0;
+while (!feof(fp)){
+ int nb=fread(hdr,sizeof(int),5,fp);
+// printf("[%d] %d %d %d %d %d\n",nb, hdr[0], hdr[1], hdr[2], hdr[3],hdr[4]);
+ if (nb!=5) break;
+ switch (hdr[0]){
+ case 3:{
+ int nb=fread(hdrp,sizeof(int),5,fp);
+ printf("x=%u y=%u | i0=%g i1=%g t=%u\t",hdrp[0],hdrp[1],fhdr[2],fhdr[3],hdrp[4]);
+ hdr[3]=hdrp[0];
+ hdr[4]=hdrp[1];
+ noise->SetPoint(icount++,hdrp[4],-fhdr[3]);
+ }
+ case 2:
+ case 1:{
+ int nref=hdr[1]/sizeof(int)/5-1;
+ if (hdr[0]==3) nref--;
+ printf("%d [%d] x=%d y=%d\n",hdr[2],nref, hdr[3],hdr[4]);
+ int posk=hdr[2]-1;
+ for (int i=0;i<nref;i++) {
+ nb=fread(sdata,sizeof(float),5,fp);
+
+ if (ny>1 && nx>1) {
+ if (sdata[0]==wl){
+ // printf("%d x=%d y=%d z=%f\n",posk, hdr[3],hdr[4],sdata[4]);
+ if (hdr[3]==93933) hdr[3]=225001;
+ if (hdr[3]==154024) hdr[3]=285000;
+ if (hdr[3]==15350) hdr[3]=277501;
+ if (hdr[3]==282289) hdr[3]=270001;
+
+ h2d->Fill(float(posk/ny),float(posk%ny),sdata[4]);
+ gr2d->SetPoint(posk0,hdr[3]*fac,hdr[4]*fac,sdata[4]);
+ posk0++;
+
+ }
+ } else {
+ if (sdata[0]==wl) {
+ if (hdr[4]==81679) hdr[4]= 126000;
+ h1d->Fill(hdr[2],sdata[4]);
+ if (nx==1) noised->SetPoint(posk0,hdr[4]*fac,sdata[4]);
+ if (ny==1) noised->SetPoint(posk0,hdr[3]*fac,sdata[4]);
+ posk0++;
+ }
+ h2d->Fill(hdr[2],sdata[0]/10.,sdata[4]);
+
+ //printf("%5.0f %g %g %g %g\n",sdata[0],sdata[1],sdata[2],sdata[3],sdata[4]);
+ }
+
+
+ }
+ break;
+}
+ }
+}
+
+
+ gStyle->SetStatColor(0);
+ //gStyle->SetTitleColor(0);
+ gStyle->SetCanvasColor(0);
+ gStyle->SetPadColor(0);
+ gStyle->SetPadBorderMode(0);
+ gStyle->SetCanvasBorderMode(0);
+ gStyle->SetFrameBorderMode(0);
+
+gStyle->SetPalette(1);
+gStyle->SetOptStat(0);
+
+
+if (h2d) h2d->Draw("colz");
+if (h1d) h1d->Draw();
+if (noise) {
+TCanvas *c0 = new TCanvas("c0","dark noise vs time");
+
+noise->SetNameTitle("noise",sn+TString(";time(s);dark current(A)"));
+noise->Draw("AWL");
+noise->GetXaxis()->SetTimeDisplay(kTRUE);
+
+noise->SetLineWidth(1);
+noise->SetLineColor(kBlue);
+noise->SetMarkerStyle(21);
+noise->GetXaxis()->SetTimeDisplay(1); // The X axis is a time axis
+noise->GetYaxis()->SetLabelSize(0.02);
+
+noise->GetXaxis()->SetLabelSize(0.02);
+noise->GetXaxis()->SetTimeFormat("%d.%m.%H:%M");
+noise->GetXaxis()->SetTitle("Time");
+
+noise->Draw("AWL");
+ TString str;
+ str.Form("_darknoise");
+ if (nx==1) str+=TString("_y");
+ if (ny==1) str+=TString("_x");
+ if (ny>1 && nx>1) str+=TString("_xy");
+ c0->SaveAs((sn+str+TString(".png")).Data());
+ c0->SaveAs((sn+str+TString(".pdf")).Data());
+
+}
+if (noised && ( nx==1 || ny==1)) {
+ TCanvas *c = new TCanvas("c","QE1d");
+ noised->Draw("AWL");
+
+
+ TString str;
+ str.Form("_%d_nm",int(wl/10.));
+
+
+ if (nx==1) {
+ str+=TString("_y");
+ noised->SetNameTitle("noised",sn+swl+TString(";y [mm]"));
+ } else {
+ str+=TString("_x");
+ noised->SetNameTitle("noised",sn+swl+TString(";x [mm]"));
+ }
+ c->SaveAs((sn+str+TString(".pdf")).Data());
+ c->SaveAs((sn+str+TString(".png")).Data());
+}
+
+if (gr2d && nx>1 && ny>1) {
+ TCanvas *c = new TCanvas("c","QE2d",0,0,600,600);
+ gr2d->Draw("colz");
+ gr2d->SetNameTitle("gr2d",sn+swl+TString(";x [mm];y [mm]"));
+;
+ TString str;
+ str.Form("_%d_nm",int(wl/10.));
+ c->SaveAs((sn+str+TString("_xy.pdf")).Data());
+ c->SaveAs((sn+str+TString("_xy.png")).Data());
+}
+f->Write();
+//f->Close();
+//delete f;
+return 0;
+}
+
+TH2F *wlnormalize(TH2F *h,int n){
+
+TH2F *hn=(TH2F *)h->Clone();
+int nx=h->GetNbinsX();
+int ny=h->GetNbinsY();
+float max=0;
+int nymax=1;
+for (int i=1;i<ny+1;i++){
+ int nxy=h->GetBin(n,i);
+ float val=h->GetBinContent(nxy);
+ if (val>max){
+ nymax=i;
+ max=val;
+ }
+}
+printf("Maximum at %d %f\n", nymax,max);
+for (int j=1;j<nx+1;j++){
+int nxy0=h->GetBin(j,nymax);
+float norm=h->GetBinContent(nxy0);
+
+for (int i=1;i<ny+1;i++){
+ int nxy=h->GetBin(j,i);
+ float val=hn->GetBinContent(nxy);
+ if (norm) hn->SetBinContent(nxy,val/norm);
+ else hn->SetBinContent(nxy,val/norm);
+}
+}
+return hn;
+}
Index: ref_fds100.txt
===================================================================
--- ref_fds100.txt (nonexistent)
+++ ref_fds100.txt (revision 285)
@@ -0,0 +1,56 @@
+3500 16.651385
+3600 15.362182
+3700 14.4777999
+3800 15.336802
+3900 17.3599546
+4000 19.9639477
+4100 22.8038427
+4200 25.685647
+4300 28.4622511
+4400 30.9999189
+4500 33.6176898
+4600 35.8520801
+4700 37.9913899
+4800 40.0415618
+4900 42.0080533
+5000 43.8958851
+5100 45.7096843
+5200 47.4537219
+5300 49.3659085
+5400 50.9776443
+5500 52.5307716
+5600 54.02843
+5700 55.473539
+5800 56.8688167
+5900 58.2167968
+6000 59.5198442
+6100 60.9834469
+6200 62.1998372
+6300 63.5744368
+6400 64.7123306
+6500 66.0059811
+6600 67.0725517
+6700 68.2923585
+6800 69.2939363
+6900 70.4461924
+7000 71.3883846
+7100 72.3040361
+7200 73.1942528
+7300 74.0600801
+7400 74.9025066
+7500 75.5571355
+7600 76.3576949
+7700 76.9764219
+7800 77.5792841
+7900 78.166884
+8000 78.7397939
+8100 79.2985579
+8200 79.6924743
+8300 80.0768988
+8400 80.4521704
+8500 80.818612
+8600 81.1765317
+8700 81.383695
+8800 81.5861501
+8900 81.9233811
+9000 81.9775632
Index: refqe.txt
===================================================================
--- refqe.txt (nonexistent)
+++ refqe.txt (revision 285)
@@ -0,0 +1,71 @@
+2000 11.11
+2100 13.37
+2200 15.17
+2300 16.75
+2400 18.89
+2500 19.89
+2600 20.31
+2700 20.14
+2800 19.62
+2900 19.29
+3000 19.01
+3100 18.46
+3200 18.07
+3300 17.72
+3400 17.54
+3500 17.40
+3600 17.26
+3700 17.12
+3800 17.23
+3900 16.63
+4000 16.24
+4100 15.88
+4200 15.27
+4300 14.58
+4400 13.88
+4500 13.02
+4600 12.31
+4700 11.57
+4800 10.87
+4900 10.29
+5000 9.68
+5100 9.10
+5200 8.59
+5300 8.12
+5400 7.59
+5500 7.20
+5600 6.80
+5700 6.36
+5800 5.97
+5900 5.62
+6000 5.34
+6100 5.03
+6200 4.76
+6300 4.48
+6400 4.21
+6500 3.97
+6600 3.71
+6700 3.48
+6800 3.21
+6900 2.98
+7000 2.75
+7100 2.53
+7200 2.31
+7300 2.08
+7400 1.85
+7500 1.62
+7600 1.41
+7700 1.21
+7800 1.00
+7900 0.82
+8000 0.64
+8100 0.49
+8200 0.36
+8300 0.25
+8400 0.17
+8500 0.11
+8600 0.07
+8700 0.05
+8800 0.03
+8900 0.02
+9000 0.01
\ No newline at end of file
Index: refqeD.txt
===================================================================
--- refqeD.txt (nonexistent)
+++ refqeD.txt (revision 285)
@@ -0,0 +1,31 @@
+2000 11.11
+2100 13.37
+2200 15.17
+2300 16.75
+2400 18.89
+2500 19.89
+2600 20.31
+2700 20.14
+2800 19.62
+2900 19.29
+3000 19.01
+3100 18.46
+3200 18.07
+3300 17.72
+3400 17.54
+3500 17.40
+3600 17.26
+3700 17.12
+3800 17.23
+3900 16.63
+4000 16.24
+4100 15.88
+4200 15.27
+4300 14.58
+4400 13.88
+4500 13.02
+4600 12.31
+4700 11.57
+4800 10.87
+4900 10.29
+5000 9.68
Index: refqeW.txt
===================================================================
--- refqeW.txt (nonexistent)
+++ refqeW.txt (revision 285)
@@ -0,0 +1,36 @@
+3000 19.01
+3100 18.46
+3200 18.07
+3300 17.72
+3400 17.54
+3500 17.40
+3600 17.26
+3700 17.12
+3800 17.23
+3900 16.63
+4000 16.24
+4100 15.88
+4200 15.27
+4300 14.58
+4400 13.88
+4500 13.02
+4600 12.31
+4700 11.57
+4800 10.87
+4900 10.29
+5000 9.68
+5100 9.10
+5200 8.59
+5300 8.12
+5400 7.59
+5500 7.20
+5600 6.80
+5700 6.36
+5800 5.97
+5900 5.62
+6000 5.34
+6100 5.03
+6200 4.76
+6300 4.48
+6400 4.21
+6500 3.97
Index: refqeW_360nm.txt
===================================================================
--- refqeW_360nm.txt (nonexistent)
+++ refqeW_360nm.txt (revision 285)
@@ -0,0 +1 @@
+3600 17.26
Index: refqeW_short.txt
===================================================================
--- refqeW_short.txt (nonexistent)
+++ refqeW_short.txt (revision 285)
@@ -0,0 +1,18 @@
+3300 17.72
+3400 17.54
+3500 17.40
+3600 17.26
+3700 17.12
+3800 17.23
+3900 16.63
+4000 16.24
+4100 15.88
+4200 15.27
+4300 14.58
+4400 13.88
+4500 13.02
+4600 12.31
+4700 11.57
+4800 10.87
+4900 10.29
+5000 9.68