source: sans/Dev/trunk/NCNR_User_Procedures/Analysis/Alpha/Tinker/FFT_FillTests.ipf @ 849

Last change on this file since 849 was 849, checked in by srkline, 11 years ago

Changes to the real-space modeling to sped up the drawing of cylinders, and to provide a few more examples of scritped, unattended calculations, and saving the 3D matrix.

File size: 15.5 KB
Line 
1Function MixTest()
2
3// make sure all of the globals are set correctly
4        NVAR FFT_T = root:FFT_T
5        NVAR FFT_N = root:FFT_N
6        NVAR FFT_SolventSLD = root:FFT_SolventSLD
7        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
8       
9        Variable rho1,rho2,rhos,radius1,radius2,ctr,separation,fill1,fill2
10        rho1=1e-6
11        rho2=3e-6
12        rhos=6e-6
13       
14        radius1 = 40
15        radius2 = 80
16        ctr=50
17        separation = radius1 + radius2
18       
19        FFT_SolventSLD = trunc(rhos/FFT_delRho)         //spits back an integer, maybe not correct
20
21// generate the matrix and erase it
22//      FFT_MakeMatrixButtonProc("")
23        FFTEraseMatrixButtonProc("")
24        Wave m=root:mat
25
26// fill the matrix with solvent
27        FFTFillSolventMatrixProc("")
28
29// with the input parameters, build the structure
30        ctr = trunc(FFT_N/2)
31        fill1 = trunc(rho1/FFT_delRho)
32        fill2 = trunc(rho2/FFT_delRho)
33       
34        FillSphereRadius(m,FFT_T,radius1,ctr,ctr,ctr,fill1)
35        FillSphereRadius(m,FFT_T,radius2,ctr+separation/FFT_T,ctr,ctr,fill2)
36        return(0)
37End
38
39
40Function CoreShellTest()
41
42// make sure all of the globals are set correctly
43        NVAR FFT_T = root:FFT_T
44        NVAR FFT_N = root:FFT_N
45        NVAR FFT_SolventSLD = root:FFT_SolventSLD
46        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
47       
48        Variable rho1,rho2,rhos,radius1,radius2,ctr,separation,fill1,fill2
49        rho1=1e-6
50        rho2=3e-6
51        rhos=6e-6
52       
53//      rho1 += 3e-6
54//      rho2 += 3e-6
55//      rhos += 3e-6
56       
57        radius1 = 20
58        radius2 = 40
59        ctr=50
60       
61        FFT_SolventSLD = trunc(rhos/FFT_delRho)         //spits back an integer, maybe not correct
62
63// generate the matrix and erase it
64//      FFT_MakeMatrixButtonProc("")
65        FFTEraseMatrixButtonProc("")
66        Wave m=root:mat
67
68// fill the matrix with solvent
69        FFTFillSolventMatrixProc("")
70
71// with the input parameters, build the structure
72        ctr = trunc(FFT_N/2)
73        fill1 = trunc(rho1/FFT_delRho)
74        fill2 = trunc(rho2/FFT_delRho)
75       
76        FillSphereRadius(m,FFT_T,radius2,ctr,ctr,ctr,fill2)
77        FillSphereRadius(m,FFT_T,radius1,ctr,ctr,ctr,fill1)
78        return(0)
79End
80
81Function ThreeShellTest()
82
83// make sure all of the globals are set correctly
84        NVAR FFT_T = root:FFT_T
85        NVAR FFT_N = root:FFT_N
86        NVAR FFT_SolventSLD = root:FFT_SolventSLD
87        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
88       
89        Variable rcore,rhocore,thick1,rhoshel1,thick2,rhoshel2,thick3,rhoshel3,rhos,fill1,fill2,fill3,fillc,ctr
90        WAVE w=root:coef_ThreeShell
91       
92        rcore = w[1]
93        rhocore = w[2]
94        thick1 = w[3]
95        rhoshel1 = w[4]
96        thick2 = w[5]
97        rhoshel2 = w[6]
98        thick3 = w[7]
99        rhoshel3 = w[8]
100        rhos = w[9]
101       
102//      rho1 += 3e-6
103//      rho2 += 3e-6
104//      rhos += 3e-6
105               
106        FFT_SolventSLD = trunc(rhos/FFT_delRho)         //spits back an integer, maybe not correct
107
108// generate the matrix and erase it
109//      FFT_MakeMatrixButtonProc("")
110        FFTEraseMatrixButtonProc("")
111        Wave m=root:mat
112
113// fill the matrix with solvent
114        FFTFillSolventMatrixProc("")
115
116// with the input parameters, build the structure
117        ctr = trunc(FFT_N/2)
118        fillc = trunc(rhocore/FFT_delRho)
119        fill1 = trunc(rhoshel1/FFT_delRho)
120        fill2 = trunc(rhoshel2/FFT_delRho)
121        fill3 = trunc(rhoshel3/FFT_delRho)
122       
123        FillSphereRadius(m,FFT_T,rcore+thick1+thick2+thick3,ctr,ctr,ctr,fill3)          //outer size (shell 3)
124        FillSphereRadius(m,FFT_T,rcore+thick1+thick2,ctr,ctr,ctr,fill2)         //outer size (shell 2)
125        FillSphereRadius(m,FFT_T,rcore+thick1,ctr,ctr,ctr,fill1)                //outer size (shell 1)
126        FillSphereRadius(m,FFT_T,rcore,ctr,ctr,ctr,fillc)               //core
127        return(0)
128End
129
130
131
132Function TetrahedronFill()
133
134// make sure all of the globals are set correctly
135        NVAR FFT_T = root:FFT_T
136        NVAR FFT_N = root:FFT_N
137        NVAR FFT_SolventSLD = root:FFT_SolventSLD
138        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
139       
140        Variable rho1,rho2,rho3,rho4,rhos,radius1,radius2,ctr,separation,fill1,fill2,fill3,fill4
141        rho1 = 1e-6
142        rho2 = 2e-6
143        rho3 = 3e-6
144        rho4 = 4e-6
145        rhos = 6e-6
146       
147        radius1 = 150
148        ctr=50
149        separation = radius1
150        separation = sqrt(2)*radius1/2
151       
152        FFT_SolventSLD = trunc(rhos/FFT_delRho)         //spits back an integer, maybe not correct
153
154// generate the matrix and erase it
155//      FFT_MakeMatrixButtonProc("")
156        FFTEraseMatrixButtonProc("")
157        Wave m=root:mat
158
159// fill the matrix with solvent
160        FFTFillSolventMatrixProc("")
161
162// with the input parameters, build the structure
163        ctr = trunc(FFT_N/2)
164        fill1 = trunc(rho1/FFT_delRho)
165        fill2 = trunc(rho2/FFT_delRho)
166        fill3 = trunc(rho3/FFT_delRho)
167        fill4 = trunc(rho4/FFT_delRho)
168       
169        // vertices are  (relative) - 4 corners of a cube
170//      (1,1,1)
171//      (-1,-1,1)
172//      (-1,1,-1)
173//      (1,-1,-1)
174       
175        FillSphereRadius(m,FFT_T,radius1,ctr+separation/FFT_T,ctr+separation/FFT_T,ctr+separation/FFT_T,fill1)
176        FillSphereRadius(m,FFT_T,radius1,ctr-separation/FFT_T,ctr-separation/FFT_T,ctr+separation/FFT_T,fill2)
177        FillSphereRadius(m,FFT_T,radius1,ctr-separation/FFT_T,ctr+separation/FFT_T,ctr-separation/FFT_T,fill3)
178        FillSphereRadius(m,FFT_T,radius1,ctr+separation/FFT_T,ctr-separation/FFT_T,ctr-separation/FFT_T,fill4)
179        return(0)
180End
181
182
183
184Function AxisCylinderFill()
185
186// make sure all of the globals are set correctly
187        NVAR FFT_T = root:FFT_T
188        NVAR FFT_N = root:FFT_N
189        NVAR FFT_SolventSLD = root:FFT_SolventSLD
190        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
191       
192        Variable rho1,rho2,rho3,rho4,rhos,radius1,radius2,ctr,separation,fill1,fill2,fill3,fill4
193        Variable len
194       
195        rho1 = 1e-6
196        rho2 = 2e-6
197        rho3 = 3e-6
198        rho4 = 4e-6
199        rhos = 6e-6
200       
201        radius1=40
202        len = 300
203       
204        FFT_SolventSLD = trunc(rhos/FFT_delRho)         //spits back an integer, maybe not correct
205
206// generate the matrix and erase it
207//      FFT_MakeMatrixButtonProc("")
208        FFTEraseMatrixButtonProc("")
209        Wave m=root:mat
210
211// fill the matrix with solvent
212        FFTFillSolventMatrixProc("")
213
214// with the input parameters, build the structure
215        ctr = trunc(FFT_N/2)
216        fill1 = trunc(rho1/FFT_delRho)
217        fill2 = trunc(rho2/FFT_delRho)
218        fill3 = trunc(rho3/FFT_delRho)
219        fill4 = trunc(rho4/FFT_delRho)
220
221       
222        FillXCylinder(m,FFT_T,radius1,ctr+len/2/FFT_T,ctr,ctr,len,fill1)
223        FillYCylinder(m,FFT_T,radius1,ctr,ctr+len/2/FFT_T,ctr,len,fill2)
224        FillZCylinder(m,FFT_T,radius1,ctr,ctr,ctr+len/2/FFT_T,len,fill3)
225       
226        return(0)
227       
228End
229
230
231// rad1 > rad2
232//
233Function FilledPores(rad1,rad2,rho1,rho2,len,sep)
234        variable rad1,rad2,rho1,rho2,len,sep            //length of cylinders
235       
236        Variable fill1,fill2
237       
238        Wave    mat=mat
239        NVAR    solventSLD = root:FFT_SolventSLD
240       
241        NVAR grid=root:FFT_T
242        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
243
244// fill the matrix with solvent
245        FFTFillSolventMatrixProc("")
246
247
248        fill1 = trunc(rho1/FFT_delRho)
249        fill2 = trunc(rho2/FFT_delRho)
250       
251        Variable np,spacing
252        np = DimSize(mat,0)                     // assumes that all dimensions are the same
253       
254        // fill a 2D plane with points
255        Make/O/B/N=(np,np) plane
256        plane = solventSLD
257
258        spacing = round(sep/grid)               // so it's an integer
259        FillPlaneHexagonal(plane,spacing,fill2)         //use the core SLD
260       
261        // put it in the proper plane of the matrix
262        mat[np/2][][] = plane[q][r]                     // in the YZ plane
263       
264        ParseMatrix3D_rho(mat)
265        Wave x3d=x3d
266        Wave y3d=y3d
267        Wave z3d=z3d
268       
269        Variable ii=0,num
270        num = numpnts(x3d)     
271       
272        for(ii=0;ii<num;ii+=1)
273                FillXCylinder(mat,grid,rad1,x3d[ii],y3d[ii],z3d[ii],len,fill1)          //cylinder 1
274                Print "cyl = ",ii,num
275        endfor
276
277// makes a crude core-shell cylinder   
278        for(ii=0;ii<num;ii+=1)
279                FillXCylinder(mat,grid,rad2,x3d[ii],y3d[ii],z3d[ii],len,fill2)          //cylinder 2
280                Print "core = ",ii,num
281        endfor
282       
283        return(0)
284End
285
286//draw several structures
287// save them
288// re-load them
289// do the FFT calcualtion + rename
290// do the Binned SLD calculation + rename
291//
292//      SaveExperiment statements are done after every step to be sure that there is enough free memory
293// -- running without caused a "not enough memory" error before any of the calculations could be done
294// -- so I'm not completely sure that the Save statements will work.
295//
296//
297Function TestSaveLoad_CoreShellHexagonal()
298
299
300        Wave    mat=mat
301        NVAR    solventSLD = root:FFT_SolventSLD
302       
303        NVAR grid=root:FFT_T
304        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
305       
306//      // this function takes care of everything in clearing/filling the matrix
307        FilledPores(40,25,2e-6,0e-6,400,100)
308        SaveMyMatrix("mat_R40C25_L400_S100_N512.ibw")
309        Print "Done with save 1 of 7"
310        SaveExperiment
311
312        FilledPores(40,25,2e-6,0e-6,400,120)
313        SaveMyMatrix("mat_R40C25_L400_S120_N512.ibw")
314        Print "Done with save 2 of 7"
315        SaveExperiment
316       
317        FilledPores(40,25,2e-6,0e-6,400,140)
318        SaveMyMatrix("mat_R40C25_L400_S140_N512.ibw")
319        Print "Done with save 3 of 7"
320        SaveExperiment
321       
322        FilledPores(40,25,2e-6,0e-6,400,160)
323        SaveMyMatrix("mat_R40C25_L400_S160_N512.ibw")
324        Print "Done with save 4 of 7"
325        SaveExperiment
326       
327        FilledPores(40,25,2e-6,0e-6,400,180)
328        SaveMyMatrix("mat_R40C25_L400_S180_N512.ibw")
329        Print "Done with save 5 of 7"
330        SaveExperiment
331
332        FilledPores(40,25,2e-6,0e-6,400,200)
333        SaveMyMatrix("mat_R40C25_L400_S200_N512.ibw")
334        Print "Done with save 6 of 7"
335        SaveExperiment
336       
337        FilledPores(40,25,2e-6,0e-6,400,220)
338        SaveMyMatrix("mat_R40C25_L400_S220_N512.ibw")
339        Print "Done with save 7 of 7"
340        SaveExperiment
341
342       
343       
344        //re-load the matrices
345        Variable num,qmin,qmax
346        num=1000
347        qmin=0.01
348        qmax=0.6
349       
350        Make/O/D/N=(num) qval_SLD,ival_SLD
351        qval_SLD = alog(log(qmin) + x*((log(qmax)-log(qmin))/num))             
352       
353       
354        ReloadMatrix("mat_R40C25_L400_S100_N512.ibw")
355        Execute "DoFFT()"
356        Duplicate/O iBin iBin_R40C25_L400_S100_N512
357        Duplicate/O qBin qBin_R40C25_L400_S100_N512
358//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
359//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S100
360//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S100
361        Print "Done with calculation 1 of 7"
362        SaveExperiment
363       
364        ReloadMatrix("mat_R40C25_L400_S120_N512.ibw")
365        Execute "DoFFT()"
366        Duplicate/O iBin iBin_R40C25_L400_S120_N512
367        Duplicate/O qBin qBin_R40C25_L400_S120_N512
368//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
369//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S120
370//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S120
371        Print "Done with calculation 2 of 7"
372        SaveExperiment
373       
374        ReloadMatrix("mat_R40C25_L400_S140_N512.ibw")
375        Execute "DoFFT()"
376        Duplicate/O iBin iBin_R40C25_L400_S140_N512
377        Duplicate/O qBin qBin_R40C25_L400_S140_N512
378//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
379//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S140
380//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S140
381        Print "Done with calculation 3 of 7"
382        SaveExperiment
383       
384        ReloadMatrix("mat_R40C25_L400_S160_N512.ibw")
385        Execute "DoFFT()"
386        Duplicate/O iBin iBin_R40C25_L400_S160_N512
387        Duplicate/O qBin qBin_R40C25_L400_S160_N512
388//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
389//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S160
390//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S160
391        Print "Done with calculation 4 of 7"
392        SaveExperiment
393       
394        ReloadMatrix("mat_R40C25_L400_S180_N512.ibw")
395        Execute "DoFFT()"
396        Duplicate/O iBin iBin_R40C25_L400_S180_N512
397        Duplicate/O qBin qBin_R40C25_L400_S180_N512
398//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
399//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S180
400//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S180
401        Print "Done with calculation 5 of 7"
402        SaveExperiment
403
404        ReloadMatrix("mat_R40C25_L400_S200_N512.ibw")
405        Execute "DoFFT()"
406        Duplicate/O iBin iBin_R40C25_L400_S200_N512
407        Duplicate/O qBin qBin_R40C25_L400_S200_N512
408//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
409//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S200
410//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S200
411        Print "Done with calculation 6 of 7"
412        SaveExperiment
413       
414        ReloadMatrix("mat_R40C25_L400_S220_N512.ibw")
415        Execute "DoFFT()"
416        Duplicate/O iBin iBin_R40C25_L400_S220_N512
417        Duplicate/O qBin qBin_R40C25_L400_S220_N512
418//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
419//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S220
420//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S220
421        Print "Done with calculation 7 of 7"
422        SaveExperiment
423
424               
425       
426        Print "All calculations done"
427
428
429
430        return(0)
431End
432
433
434Function TestSaveLoad_Hexagonal_vs_Sep()
435
436
437        Wave    mat=mat
438        NVAR    solventSLD = root:FFT_SolventSLD
439       
440        NVAR grid=root:FFT_T
441        NVAR FFT_delRho = root:FFT_delRho               //the SLD multiplier, should have been initialized to 1e-7
442
443
444// fill the matrix with solvent
445        FFTFillSolventMatrixProc("")
446        X_CylindersHexagonalGrid(mat,40,400,100,20)
447        SaveMyMatrix("mat_R40_L400_S100_N512.ibw")
448        Print "Done with save 1 of 7"
449        SaveExperiment
450
451// fill the matrix with solvent
452        FFTFillSolventMatrixProc("")   
453        X_CylindersHexagonalGrid(mat,40,400,120,20)
454        SaveMyMatrix("mat_R40_L400_S120_N512.ibw")
455        Print "Done with save 2 of 7"
456        SaveExperiment
457       
458        // fill the matrix with solvent
459        FFTFillSolventMatrixProc("")
460        X_CylindersHexagonalGrid(mat,40,400,140,20)
461        SaveMyMatrix("mat_R40_L400_S140_N512.ibw")
462        Print "Done with save 3 of 7"
463        SaveExperiment
464       
465        // fill the matrix with solvent
466        FFTFillSolventMatrixProc("")
467        X_CylindersHexagonalGrid(mat,40,400,160,20)
468        SaveMyMatrix("mat_R40_L400_S160_N512.ibw")
469        Print "Done with save 4 of 7"
470        SaveExperiment
471       
472        // fill the matrix with solvent
473        FFTFillSolventMatrixProc("")
474        X_CylindersHexagonalGrid(mat,40,400,180,20)
475        SaveMyMatrix("mat_R40_L400_S180_N512.ibw")
476        Print "Done with save 5 of 7"
477        SaveExperiment
478       
479        // fill the matrix with solvent
480        FFTFillSolventMatrixProc("")
481        X_CylindersHexagonalGrid(mat,40,400,200,20)
482        SaveMyMatrix("mat_R40_L400_S200_N512.ibw")
483        Print "Done with save 6 of 7"
484        SaveExperiment
485       
486        // fill the matrix with solvent
487        FFTFillSolventMatrixProc("")
488        X_CylindersHexagonalGrid(mat,40,400,220,20)
489        SaveMyMatrix("mat_R40_L400_S220_N512.ibw")
490        Print "Done with save 7 of 7"
491        SaveExperiment
492       
493       
494        //re-load the matrices
495        Variable num,qmin,qmax
496        num=1000
497        qmin=0.01
498        qmax=0.6
499       
500        Make/O/D/N=(num) qval_SLD,ival_SLD
501        qval_SLD = alog(log(qmin) + x*((log(qmax)-log(qmin))/num))             
502
503
504
505        ReloadMatrix("mat_R40_L400_S100_N512.ibw")
506        Execute "DoFFT()"
507        Duplicate/O iBin iBin_R40_L400_S100_N512
508        Duplicate/O qBin qBin_R40_L400_S100_N512
509//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
510//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S100
511//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S100
512        Print "Done with calculation 1 of 7"
513        SaveExperiment
514       
515        ReloadMatrix("mat_R40_L400_S120_N512.ibw")
516        Execute "DoFFT()"
517        Duplicate/O iBin iBin_R40_L400_S120_N512
518        Duplicate/O qBin qBin_R40_L400_S120_N512
519//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
520//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S120
521//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S120
522        Print "Done with calculation 2 of 7"
523        SaveExperiment
524       
525        ReloadMatrix("mat_R40_L400_S140_N512.ibw")
526        Execute "DoFFT()"
527        Duplicate/O iBin iBin_R40_L400_S140_N512
528        Duplicate/O qBin qBin_R40_L400_S140_N512
529//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
530//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S140
531//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S140
532        Print "Done with calculation 3 of 7"
533        SaveExperiment
534       
535        ReloadMatrix("mat_R40_L400_S160_N512.ibw")
536        Execute "DoFFT()"
537        Duplicate/O iBin iBin_R40_L400_S160_N512
538        Duplicate/O qBin qBin_R40_L400_S160_N512
539//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
540//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S160
541//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S160
542        Print "Done with calculation 4 of 7"
543        SaveExperiment
544       
545        ReloadMatrix("mat_R40_L400_S180_N512.ibw")
546        Execute "DoFFT()"
547        Duplicate/O iBin iBin_R40_L400_S180_N512
548        Duplicate/O qBin qBin_R40_L400_S180_N512
549//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
550//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S180
551//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S180
552        Print "Done with calculation 5 of 7"
553        SaveExperiment
554       
555        ReloadMatrix("mat_R40_L400_S200_N512.ibw")
556        Execute "DoFFT()"
557        Duplicate/O iBin iBin_R40_L400_S200_N512
558        Duplicate/O qBin qBin_R40_L400_S200_N512
559//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
560//      Duplicate/O ival_SLD ival_SLD_R40C25_L400_S200
561//      Duplicate/O qval_SLD qval_SLD_R40C25_L400_S200
562        Print "Done with calculation 6 of 7"
563        SaveExperiment
564
565        ReloadMatrix("mat_R40_L400_S220_N512.ibw")
566        Execute "DoFFT()"
567        Duplicate/O iBin iBin_R40_L400_S220_N512
568        Duplicate/O qBin qBin_R40_L400_S220_N512
569//      fDoCalc(qval_SLD,ival_SLD,grid,3,1)
570//      Duplicate/O ival_SLD ival_SLD_R40_L400_S220
571//      Duplicate/O qval_SLD qval_SLD_R40_L400_S220
572        Print "Done with calculation 7 of 7"
573        SaveExperiment
574               
575       
576        Print "All calculations done"
577
578
579
580        return(0)
581End
Note: See TracBrowser for help on using the repository browser.