Table of Contents
Multibank Refinements at ISIS
The files below are input files for fitting standard data sets from isis diffractometers. They can be easily adjusted to fit other samples. Caveat emptor. If you view them in jEdit with folding turned on they are simple 6 or 7 line files!
In the GEM section you'll find two different files which perform (essentially) equivalent fits. The second one gathers all the instrument-specific things together at the end of the file. By using flags for different phases it's also easier to control having different phases in different banks. This can be useful when fitting neutron + X-ray data where you might need a V phase for the neutron data but not for X-ray. This format also makes it easy to build a single INP file that e.g. calibrate simultaneously against Y2O3 and Si data.
HRPD
'----------------------------------------------------------------- 'Template to create Input File for HRPD/ISIS multibank tof refinement '1. Save this file as "filename.inp" '2. Update instrumetnal constants in each bank (though values will be close already) '3. Update instrumental peak shape parameters in wifd_pkshape (though values will be close already) '4. Change the CeO2 structure at the end of the file to your structure 'Don't worry about the '{{{ and '}}} symbols in the file. They allow you to use "Folding/Collapse Folds" 'This is a convenient way of viewing complex files in jedit - have a play! 'Developed from HRP64473 CeO2 standard recorded March 2016 'John Evans '----------------------------------------------------------------- '{{{ r-factors and control information r_exp 0.900894234 r_exp_dash 1.52031604 r_wp 4.19280506 r_wp_dash 7.07562394 r_p 4.1797566 r_p_dash 10.996074 gof 4.65404806 weighted_Durbin_Watson 1.29301128 iters 1000000000 'do_errors 'continue_after_convergence '}}} '{{{ select banks to use here and enter filenames and tof ranges to fit 'use these lines to set stemfilename and information for in gui mode 'this stemfilename will allow multitopas_files to run multibank multitemperature runs #ifdef !GUI_LINES macro filename {hrp64473} macro information {prm !te 2 prm !time 0 } #endif #define USE_HRPD_BS macro filename_bank1 {filename##_b1_tof.dat} macro start_end_bank1 {start_X 12000 finish_X 125000} #define USE_HRPD_90 macro filename_bank2 {filename##_b2_tof.dat} macro start_end_bank2 {start_X 11500 finish_X 125000} #define USE_HRPD_30 macro filename_bank3 {filename##_b3_tof.dat} macro start_end_bank3 {start_X 13300 finish_X 100000} '}}} '----------------------------------------------------------------- '{{{ information specific to bank 1 bs 168.567 deg refinement here 'You might want to change instrument calibration #ifdef USE_HRPD_BS TOF_XYE(filename_bank1, 10) start_end_bank1 'calibration values should come from a Si standard you might want to refine to_bs and difa_bs TOF_x_axis_calibration(!t0_bs, -2.69633, !difc_bs, 48281.70876, !difa_bs, -7.11699) local !bank_two_theta 168.567 r_wp 4.15346828 bkg @ 0.45496336` 0.0152548781` 0.0394051043` -0.048312871` -0.00293636592` -0.0165978082` -0.0257365654` -0.0126103624` -0.00715708576` -0.00772469188` -0.00759987084` -0.00401261224` local !mu 0.00000 local !fixb 0.00000 str r_bragg 7.78536681 scale scal_bs 2.25250609` tof_sample_peakshape(!lor_bs, 0.190724033,!dsp_bs, 35.54114,!dspsq_bs, 0.00029) #endif '}}} '{{{ information specific to bank 2 90 deg refinement here #ifdef USE_HRPD_90 TOF_XYE(filename_bank2, 10) start_end_bank2 'all calibration constants could be refined if you trust difc on BS bank TOF_x_axis_calibration(!t0_90, -8.6875, !difc_90, 34862.4511, !difa_90, -10.47717) local !bank_two_theta 90.2481 r_wp 4.17986033 bkg @ 0.359582611` -0.041909519` 0.0331121168` -0.0373546722` 0.0144064496` -0.00382345778` 0.00304444576` -0.00265728636` -0.00138170554` -0.00112394508` 0.00116378366` -0.00190092649` local !mu 0.0000 local !fixb 0.0000 str r_bragg 2.93368804 scale scal_90 1.66478178` tof_sample_peakshape(!lor_90, 0.0341852952,!dsp_90, 155.01731,!dspsq_90, 4.86725) #endif '}}} '{{{ information specific to bank 3 29.9039 deg refinement here #ifdef USE_HRPD_30 TOF_XYE(filename_bank3, 10) start_end_bank3 TOF_x_axis_calibration(!t0_30,-28.63431, !difc_30, 12820.3511, !difa_30, 0.09561) local !bank_two_theta 29.9039 r_wp 5.87063188 bkg @ 0.284539356` 0.0129274233` 0.0290223565` -0.0152795111` 0.0166152359` -0.0071559248` 0.00994277663` -0.00954234006` 0.0100840968` -0.00527172413` 0.00491156922` 0.000459978629` local !mu 0.0000 local !fixb 0.0000 str r_bragg 3.59385664 scale scal_30 0.520155313` tof_sample_peakshape(!lor_30, 7.62374695e-19, !dsp_30, 166.04848,!dspsq_30, 19.50163) #endif '}}} '----------------------------------------------------------------- '{{{ Overall and structural information here 'First section has information for each bank of refinment (for xdds) 'Second section contains structural information; use parameter names not @ symbols for xdds { weighting = 1 / SigmaYobs^2; x_calculation_step = Yobs_dx_at(Xo); convolution_step 4 TOF_LAM(0.001) scale_pks = D_spacing^4; scale_pks = Exp(-mu*2 D_spacing Sin(0.00872664626 bank_two_theta)); 'absorption correction local to each bank scale_pks = (Exp(-2*fixb/(2 D_spacing)^2)); 'fixb correction local to each bank wifd_pkshape(two_theta, =bank_two_theta;, !aprm, 1.93637, !tauf_2, 0.15262, !tauf_1, 0.85833, !tauf_0, 1.05944, !taus_0, 29.95983, !taus_1, 1.11856, !t_eff, 189.72881, !hhh, 0.35525, !hhh_0, 0.00100) for strs 1 to 1 { space_group Fm-3m phase_name CeO2 Cubic( lpa_CeO2 5.412231`) site Ce1 x 0.00 y 0.00 z 0.00 occ Ce 1 beq bce 0.18599` site O1 x 0.25 y 0.25 z 0.25 occ O 1 beq box 0.35302` } } '}}} '-----------------------------------------------------------------
GEM
The second inp file (below) might be more useful than the first. It's easier to control/edit.
'----------------------------------------------------------------- 'GEM Y2O3 calibration May 2014 on gem68060 'difc fixed on bank 6 from Si 668059 using 5.431195 (hrpd value) 'Added 6 background terms over previous calibrations in b5 and b6 as clear correlations in bkg at low D 'Uses a local mu in each str for absorption 'Uses a local fixb in each histogram for absorption (but fixed) 'get 2.350% for 138 parameters 'Not quite sure of the count...need to check: 'histograms: 3 difn (difc fixed bank 6), 6 back for 1&2 12 for 3&4 18 for 5 & 6 (72 tot), 1 mu, 2 pkshape, 1 scale (17+72+6+12+6) = 113 'inst peak shape: 8 = 8 'phase: 1 cell, 4 coords, 12 uijs = 25 ' ' '----------------------------------------------------------------- '{{{ r-factors and control information r_exp 0.783578418 r_exp_dash 1.26317164 r_wp 2.31867474 r_wp_dash 3.73783159 r_p 1.961054 r_p_dash 3.8067976 gof 2.95908449 weighted_Durbin_Watson 1.91850582 iters 1000000000 continue_after_convergence 'randomize_on_errors '}}} '{{{ select banks to use here and enter filenames #define USE_BANK1 macro filename_bank1 {gem68060_b1_tof.dat} macro start_end_bank1 {start_X 750 finish_X 20000} #define USE_BANK2 macro filename_bank2 {gem68060_b2_tof.dat} macro start_end_bank2 {start_X 1200 finish_X 20000} #define USE_BANK3 macro filename_bank3 {gem68060_b3_tof.dat} macro start_end_bank3 {start_X 1000 finish_X 18000} #define USE_BANK4 macro filename_bank4 {gem68060_b4_tof.dat} macro start_end_bank4 {start_X 2000 finish_X 20000} #define USE_BANK5 macro filename_bank5 {gem68060_b5_tof.dat} macro start_end_bank5 {start_X 2000 finish_X 18000} #define USE_BANK6 macro filename_bank6 {gem68060_b6_tof.dat} macro start_end_bank6 {start_X 2500 finish_X 16800} '}}} '----------------------------------------------------------------- '{{{ information specific to bank 1 refinement here #ifdef USE_BANK1 TOF_XYE(filename_bank1, 1.9) start_end_bank1 TOF_x_axis_calibration(t0_bank1,-11.17744`, difc_bank1, 753.18845`, difa_bank1, -1.01186`) local !bank_two_theta 9.39 r_wp 4.75677021 'bank 1 bkg @ 0.0761740348` -0.00460132614` 0.00925578814` -0.00338714955` 0.0010272128` 0.000287044343` local mu -0.33897` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank1, 0.32835028`,dsp_bank1, 29.59934`,!dspsq_bank1,0) r_bragg 2.20605536 scale scal_bank1 0.000166119883` #endif '}}} '{{{ information specific to bank 2 refinement here #ifdef USE_BANK2 TOF_XYE(filename_bank2, 1.9) start_end_bank2 TOF_x_axis_calibration(t0_bank2,-9.96705`, difc_bank2, 1494.00740`, difa_bank2,-1.15750`) local !bank_two_theta 17.98 r_wp 4.17065855 'bank 2 bkg @ 0.0610421372` -0.00323035088` 0.0027258197` -0.00219688256` 0.000954565354` -0.00101062422` local mu 0.01858` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank2, 0.175415133`,dsp_bank2, 41.60560`,!dspsq_bank2,0) r_bragg 2.69633039 scale scal_bank2 0.000405432033` #endif '}}} '{{{ information specific to bank 3 refinement here #ifdef USE_BANK3 TOF_XYE(filename_bank3, 1.9) start_end_bank3 TOF_x_axis_calibration(t0_bank3,-3.19437`, difc_bank3, 2816.43646`, difa_bank3, -0.19532`) local !bank_two_theta 34.96 r_wp 2.65549151 'bank 3 bkg @ 0.0706370147` -0.0206317387` 0.0168962379` -0.0130054467` 0.00847045893` -0.00700808948` 0.00485798003` -0.00505601022` 0.00306379102` -0.003653641` 0.00186670334` -0.0025491719` local mu 0.01839` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank3, 0.180135498`,dsp_bank3, 42.91799`,!dspsq_bank3,0) r_bragg 0.900446314 scale scal_bank3 0.000768895673` #endif '}}} '{{{ information specific to bank 4 refinement here #ifdef USE_BANK4 TOF_XYE(filename_bank4, 1.9) start_end_bank4 TOF_x_axis_calibration(t0_bank4,-3.50507`, difc_bank4, 4835.44643`, difa_bank4,-1.03112`) local !bank_two_theta 63.62 r_wp 2.41746873 'bank 4 bkg @ 0.0733640902` -0.0232049622` 0.0156016322` -0.0101847528` 0.00496248927` -0.0014179452` -0.000823375858` 0.00136870749` -0.00132157492` 0.00100454561` -0.00151735056` 0.00105944323` local mu 0.02680` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank4, 0.159874502`,dsp_bank4, 35.74478`,!dspsq_bank4,0) r_bragg 0.703910868 scale scal_bank4 0.00133928088` #endif '}}} '{{{ information specific to bank 5 refinement here #ifdef USE_BANK5 TOF_XYE(filename_bank5, 1.9) start_end_bank5 TOF_x_axis_calibration(t0_bank5,-5.12642`, difc_bank5, 6650.65020`, difa_bank5, -3.52056`) local !bank_two_theta 91.3 r_wp 1.95283195 'bank 5 bkg @ 0.0842611798` -0.0364364876` 0.0233339279` -0.0132884482` 0.00426565086` -0.000734182645` -0.000325908055` 0.00212035232` -0.002907968` 0.0013131508` -0.00187166505` 0.00060354099` -0.000855492286` -0.00063246208` 0.00085448588` -0.00209080153` 0.00154064559` -0.0017752081` local mu 0.02167` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank5, 0.141788748`,dsp_bank5, 23.11883`,!dspsq_bank5,0) r_bragg 0.553530397 scale scal_bank5 0.00181536952` #endif '}}} '{{{ information specific to bank 6 refinement here #ifdef USE_BANK6 TOF_XYE(filename_bank6, 1.9) start_end_bank6 'difc fixed from gem56239_si_01.inp TOF_x_axis_calibration(t0_bank6,-5.20164`, !difc_bank6, 9064.84638, difa_bank6, -6.15428`) local !bank_two_theta 154.4 r_wp 1.92793705 'bank 6 bkg @ 0.103433814` -0.0511219849` 0.0244115143` -0.0128670778` 0.00333426355` -0.00238125312` 0.000481537121` -0.00110493324` 0.000613186873` -0.00110653484` 0.00053896564` -0.000416954175` 0.000152838252` 0.000102746351` -0.000741666897` 0.000590981093` -0.000143538118` 9.54236483e-005` local mu 0.03973` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank6, 0.130638768`,dsp_bank6, 16.91269`,!dspsq_bank6,0) r_bragg 0.626203414 scale scal_bank6 0.00263375753` #endif '}}} '------------------------------------------------------------ '{{{ overall structural information here '------------------------------------------------------------ 'Put overall structural and peak shape information here 'Put the overall peak shape here so it can be refined for all banks in calibration then fixed for all banks 'In a normal refinement you probably wouldn't play with anything in wifd_mic2 lines '------------------------------------------------------------ for xdds { weighting = 1 / SigmaYobs^2; x_calculation_step = Yobs_dx_at(Xo); convolution_step 4 TOF_LAM(0.001) scale_pks = D_spacing^4; #define peak1 '#define peak2 '#define peak3 #ifdef peak1 ' wifd_mic_new(two_theta, =bank_two_theta;, !tspow, 3.34670, !tauf_0, 1.13998, !tauf_1, 1.07527, !taus_0, 0.02876, !taus_1, 0.01314, !t_eff, 234.52357, !hhh, 0.02063, !double_pulse, 0.07775) wifd_mic_new(two_theta, =bank_two_theta;, !tspow, 2.75914,!tauf_0, 1.38544, !tauf_1, 1.05054, !taus_0, 0.02609, !taus_1, 0.01029, !t_eff, 233.59810, !hhh, 0.00257, !double_pulse, 0.01015) #endif #ifdef peak2 wifd_mic_new_anneal(two_theta, =bank_two_theta;, tspow, 2.75945,tauf_0, 1.38514, tauf_1, 1.05082, taus_0, 0.02611, taus_1, 0.01036, t_eff, 233.40703, hhh, 0.00257, double_pulse, 0.01014) #endif #ifdef peak3 ' gsas type peak shape tested on bank 5 data - wasn't any better push_peak TOF_Exponential(a0_1, 1073.47509 val_on_continue = Rand(00,1000);, a1_1,-298.02130 val_on_continue = Rand(-100,100);, 1, difc_bank5, +) bring_2nd_peak_to_top TOF_Exponential(a0_2, 26.53128 val_on_continue = Rand(00,1000);, a1_2, 16.80929 val_on_continue = Rand(-100,100);, 4, difc_bank5, +) scale_top_peak scal_top 0.101186795 min 0.0 max 200 'val_on_continue = Rand(0.1,4); add_pop_1st_2nd_peak #endif scale_pks = Exp(-mu*2 D_spacing Sin(0.00872664626 two_theta)); 'absorption correction local to each bank scale_pks = (Exp(-2*fixb/(2 D_spacing)^2)); 'fixb correction local to each bank for strs 1 to 1 { space_group "Ia-3" phase_name Y2O3_Maslen Cubic( lpa 10.606429`) 'ideal val2 coordinates are from synchrotron single crystal macro A1(param,val,val2) {x param val min = val2 - .05; max = val2 + .05;} macro A2(param,val,val2) {y param val min = val2 - .05; max = val2 + .05;} macro A3(param,val,val2) {z param val min = val2 - .05; max = val2 + .05;} site Y1 A1( xy1 , 0.96748`, 0.96749) A2( !yy1 , 0.00000 , 0.00000) A3( !zy1 , 0.25000, 0.25000) occ Y 1 ADPs { y1u11 0.00427` y1u22 0.00402` y1u33 0.00415` 0 0 y1u23 -0.00032` } site Y2 A1( !xy2 , 0.25000 , 0.25000) A2( !yy2 , 0.25000 , 0.25000) A3( !zy2 , 0.25000, 0.25000) occ Y 1 ADPs { y2u11 0.00411` = Get(u11); = Get(u11); y2u12 0.00041` = Get(u12); = Get(u12); } site O1 A1( xo1 , 0.39077`, 0.39070) A2( yo1 , 0.15202`, 0.15180) A3( zo1 , 0.38016`, 0.38010) occ O 1 ADPs { o1u11 0.00527` o2u22 0.00524` o2u33 0.00387` o2u12 -0.00001` o2u13 -0.00089` o2u23 -0.00062` } } } '}}}
GEM-2
More compact/flexible version of the same file (John recommends this format):
'----------------------------------------------------------------- 'GEM Y2O3 standard data May 2016 gem79413 '2022 updated to syntax that moves all calibration constants together 'and allows easier control of different phases in different banks 'Rwp 2.26% (2.30% earlier when dsp2 not refined) 'histograms: 3 difn (difc fixed bank 6), 6 back for 1&2 12 for 3&4 18 for 5 & 6 (72 tot), 1 mu, 3 pkshape, 1 scale (17+72+6+18+6) = 119 'inst peak shape up to: 8 = 8 'phase: 1 cell, 4 coords, 12 uijs = 17 '----------------------------------------------------------------- '{{{ Control information, iters, R-factors r_exp 1.29426809 r_exp_dash 2.05839001 r_wp 2.22600043 r_wp_dash 3.54020709 r_p 1.85514781 r_p_dash 3.64339442 gof 1.71989131 weighted_Durbin_Watson 2.94671054 iters 1000000000 continue_after_convergence 'randomize_on_errors '}}} '{{{ Set Filename(s),data directories, tof ranges, phases to fit, etc macro data_directory { } 'needs a \ at the end macro filename_stem { GEM79414 } #define fit_BANK1 macro filename_bank1 {data_directory##filename_stem##_b1_tof.dat} macro fit_information_bank1 {start_X 750 finish_X 20000 local !bank1 1 local !y2o3 1} #define fit_BANK2 macro filename_bank2 {data_directory##filename_stem##_b2_tof.dat} macro fit_information_bank2 {start_X 1200 finish_X 20000 local !bank2 1 local !y2o3 1} #define fit_BANK3 macro filename_bank3 {data_directory##filename_stem##_b3_tof.dat} macro fit_information_bank3 {start_X 1000 finish_X 18000 local !bank3 1 local !y2o3 1} #define fit_BANK4 macro filename_bank4 {data_directory##filename_stem##_b4_tof.dat} macro fit_information_bank4 {start_X 2000 finish_X 20000 local !bank4 1 local !y2o3 1} #define fit_BANK5 macro filename_bank5 {data_directory##filename_stem##_b5_tof.dat} macro fit_information_bank5 {start_X 2000 finish_X 18000 local !bank5 1 local !y2o3 1} #define fit_BANK6 macro filename_bank6 {data_directory##filename_stem##_b6_tof.dat} macro fit_information_bank6 {start_X 2500 finish_X 16800 local !bank6 1 local !y2o3 1} '}}} '{{{ bank1 information here #ifdef fit_BANK1 TOF_XYE(filename_bank1, 2) r_wp 5.64628089 r_exp 3.93940898 r_p 4.54085303 r_wp_dash 11.8874349 r_p_dash 12.487383 r_exp_dash 8.29386083 weighted_Durbin_Watson 0.574319642 gof 1.43328122 fit_information_bank1 bkg @ 0.0785410536` -0.00438385457` 0.00882657982` -0.00478344257` 0.000631565955` -0.00161294727` local mu -0.458317197` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank1" r_bragg 2.52425298 scale scal_bank1 0.000161880248` TOF_PV2(dsp_bank1 , 3661.70322`, dsp2_bank1, 115.067487`, lor_bank1 , 0.304297435`, difc_bank1) } #endif '}}} '{{{ bank2 information here #ifdef fit_BANK2 TOF_XYE(filename_bank2, 2) r_wp 3.65337408 r_exp 2.93740755 r_p 2.80444311 r_wp_dash 6.09685693 r_p_dash 5.39669841 r_exp_dash 4.90203116 weighted_Durbin_Watson 0.5518836 gof 1.24374096 fit_information_bank2 bkg @ 0.065647353` -0.00541575469` 0.00462966053` -0.00381773349` 0.00100125544` -0.00183800875` local mu -0.00663025931` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank2" r_bragg 1.43202835 scale scal_bank2 0.000410387268` TOF_PV2(dsp_bank2 , 2748.71673`, dsp2_bank2, 2.63632032`, lor_bank2 , 0.137890449`, difc_bank2) } #endif '}}} '{{{ bank3 information here #ifdef fit_BANK3 TOF_XYE(filename_bank3, 2) r_wp 2.40639448 r_exp 1.76285118 r_p 1.70097628 r_wp_dash 3.70454511 r_p_dash 3.0889224 r_exp_dash 2.71383672 weighted_Durbin_Watson 0.301315555 gof 1.36505822 fit_information_bank3 bkg @ 0.06353025` -0.0171953827` 0.0152334212` -0.0103435546` 0.00644593866` -0.00448051196` 0.00272204406` -0.0024830938` 0.00106520383` -0.0013113151` 0.000625871376` -0.00129655534` local mu 0.00674296635` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank3" r_bragg 0.754783575 scale scal_bank3 0.000666582767` TOF_PV2(dsp_bank3 , 1564.83409`, dsp2_bank3, 12.7030156`, lor_bank3 , 0.154265181`, difc_bank3) } #endif '}}} '{{{ bank4 information here #ifdef fit_BANK4 TOF_XYE(filename_bank4, 2) r_wp 2.29907974 r_exp 0.953648495 r_p 1.68086986 r_wp_dash 3.43357031 r_p_dash 2.94531693 r_exp_dash 1.42423036 weighted_Durbin_Watson 0.284871892 gof 2.41082511 fit_information_bank4 bkg @ 0.0810146151` -0.0264086543` 0.0189772823` -0.0118439553` 0.00712340484` -0.00308755234` 0.000911917386` 2.60994083e-05` 0.000395257944` -7.1896204e-05` -0.000600131908` 0.000403708819` local mu 0.0197444095` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank4" r_bragg 0.644336158 scale scal_bank4 0.00143320822` TOF_PV2(dsp_bank4 , 680.574734`, dsp2_bank4, 24.8133364`, lor_bank4 , 0.16341353`, difc_bank4) } #endif '}}} '{{{ bank5 information here #ifdef fit_BANK5 TOF_XYE(filename_bank5, 2) r_wp 1.85434019 r_exp 0.955003801 r_p 1.38078066 r_wp_dash 3.03928168 r_p_dash 2.69429019 r_exp_dash 1.56526056 weighted_Durbin_Watson 0.389626862 gof 1.94170975 fit_information_bank5 bkg @ 0.0942051848` -0.0396991788` 0.0264243692` -0.014702439` 0.00557483167` -0.00138626071` 0.000657998636` 0.00141167614` -0.0020588655` 0.000478580092` -0.000939573087` 5.05785052e-05` -0.000386513393` -0.000373218046` 0.000759282215` -0.00129189214` 0.00128215393` -0.00108165162` local mu 0.0239025195` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank5" r_bragg 0.469598696 scale scal_bank5 0.00203567283` TOF_PV2(dsp_bank5 , 325.244411`, dsp2_bank5, 10.4171705`, lor_bank5 , 0.156297893`, difc_bank5) } #endif '}}} '{{{ bank6 information here #ifdef fit_BANK6 TOF_XYE(filename_bank6, 2) r_wp 2.04785213 r_exp 1.55917621 r_p 1.60081059 r_wp_dash 3.7873096 r_p_dash 3.73681026 r_exp_dash 2.88354952 weighted_Durbin_Watson 0.844692986 gof 1.3134193 fit_information_bank6 bkg @ 0.1086153` -0.0514619151` 0.0243073698` -0.0125147543` 0.00249856051` -0.00226539339` -8.0957152e-05` -0.000768730125` 0.000492362538` -0.000636446621` 0.00026971351` -0.000356816579` 0.00012180617` -0.000301085202` -0.000547852171` 0.0001769342` -3.87098953e-05` -0.000205139262` local mu 0.0456748014` min -10 local !fixb 0.00000 if Prm_There(y2o3) { str phase_name "Y2O3 bank6" r_bragg 0.668209532 scale scal_bank6 0.0027564988` TOF_PV2(dsp_bank6 , 177.853274`, dsp2_bank6, 2.10333188`, lor_bank6 , 0.151110748`, difc_bank6) } #endif '}}} '{{{ overall xdd calibration and structural information here 'Put overall calibration, moderator peak shape and structural information here 'In a normal refinement you probably wouldn't play with anything in wifd_mic2 lines and would fix at least one difc 'Information on which str phase to fit fed into each bank with an if Prm_There query for xdds { neutron_data TOF_LAM(0.001) x_calculation_step = Yobs_dx_at(Xo); convolution_step 4 weighting = 1 / SigmaYobs^2; scale_pks = D_spacing^4; macro FitFix { ! } 'turn moderator parameters on by having { } or off by having { ! } #define peak1 '#define peak2 '#define peak3 #ifdef peak1 'wifd_mic_new(two_theta, =bank_two_theta;, !tspow, 3.02194,!tauf_0, 1.24817, !tauf_1, 1.17300, !taus_0, 0.02823, !taus_1, 0.00825, !t_eff, 225.22881, !hhh, 0.00224, !double_pulse, 0.00871) wifd_mic_new(two_theta, =bank_two_theta;, FitFix##tspow, 3.01483127,FitFix##tauf_0, 1.24153422, FitFix##tauf_1, 1.17058516, FitFix##taus_0, 0.0282699141, FitFix##taus_1, 0.00836049392, FitFix##t_eff, 234.702814, FitFix##hhh, 0.00216040987, FitFix##double_pulse, 0.00875311152) #endif #ifdef peak2 wifd_mic_new_anneal(two_theta, =bank_two_theta;, tspow, 3.00646809,tauf_0, 1.24561261, tauf_1, 1.16457663, taus_0, 0.0284089207, taus_1, 0.00856869202, t_eff, 230.833405, hhh, 0.00215348577, double_pulse, 0.0083357213) #endif #ifdef peak3 ' gsas type peak shape tested on bank 5 data - wasn't any better push_peak TOF_Exponential(a0_1, 1073.47509 val_on_continue = Rand(00,1000);, a1_1,-298.02130 val_on_continue = Rand(-100,100);, 1, difc_bank5, +) bring_2nd_peak_to_top TOF_Exponential(a0_2, 26.53128 val_on_continue = Rand(00,1000);, a1_2, 16.80929 val_on_continue = Rand(-100,100);, 4, difc_bank5, +) scale_top_peak scal_top 0.101186795 min 0.0 max 200 'val_on_continue = Rand(0.1,4); add_pop_1st_2nd_peak #endif if Prm_There(bank1) { TOF_x_axis_calibration(t0_bank1,-13.0134533`, difc_bank1, 752.06954`, difa_bank1, -1.45726341`) } if Prm_There(bank2) { TOF_x_axis_calibration(t0_bank2,-9.51803257`, difc_bank2, 1494.02379`, difa_bank2,-1.11725525`) } if Prm_There(bank3) { TOF_x_axis_calibration(t0_bank3,-2.29525892`, difc_bank3, 2821.67067`, difa_bank3, 0.0457196191`) } if Prm_There(bank4) { TOF_x_axis_calibration(t0_bank4,-3.18888186`, difc_bank4, 4835.46934`, difa_bank4,-0.862334481`) } if Prm_There(bank5) { TOF_x_axis_calibration(t0_bank5,-4.7174033`, difc_bank5, 6648.9533`, difa_bank5, -3.07362525`) } if Prm_There(bank6) { TOF_x_axis_calibration(t0_bank6,-5.75418198`, !difc_bank6, 9064.18467, difa_bank6, -6.76226609`) } if Prm_There(bank1) { local !bank_two_theta 9.39 } if Prm_There(bank2) { local !bank_two_theta 17.98 } if Prm_There(bank3) { local !bank_two_theta 34.96 } if Prm_There(bank4) { local !bank_two_theta 63.62 } if Prm_There(bank5) { local !bank_two_theta 91.30 } if Prm_There(bank6) { local !bank_two_theta 154.40 } scale_pks = Exp(-mu*2 D_spacing Sin(0.00872664626 two_theta)); 'absorption correction local to each bank scale_pks = (Exp(-2*fixb/(2 D_spacing)^2)); 'fixb correction local to each bank if Prm_There(y2o3) { for strs 1 to 1 { space_group "Ia-3" phase_name Y2O3_Maslen Cubic( lpa 10.609369`) 'ideal val2 coordinates are from synchrotron single crystal macro A1(param,val,val2) {x param val min = val2 - .05; max = val2 + .05;} macro A2(param,val,val2) {y param val min = val2 - .05; max = val2 + .05;} macro A3(param,val,val2) {z param val min = val2 - .05; max = val2 + .05;} site Y1 A1( xy1 , 0.96748`, 0.96749) A2( !yy1 , 0.00000 , 0.00000) A3( !zy1 , 0.25000, 0.25000) occ Y 1 ADPs { y1u11 0.00447` y1u22 0.00426` y1u33 0.00421` 0 0 y1u23 -0.00037` } site Y2 A1( !xy2 , 0.25000 , 0.25000) A2( !yy2 , 0.25000 , 0.25000) A3( !zy2 , 0.25000, 0.25000) occ Y 1 ADPs { y2u11 0.00444` = Get(u11); = Get(u11); y2u12 0.00056` = Get(u12); = Get(u12); } site O1 A1( xo1 , 0.39077`, 0.39070) A2( yo1 , 0.15200`, 0.15180) A3( zo1 , 0.38013`, 0.38010) occ O 1 ADPs { o1u11 0.00538` o2u22 0.00538` o2u33 0.00408` o2u12 -0.00003` o2u13 -0.00082` o2u23 -0.00061` } } } } '}}} '{{{ TOF macros not in local.inc or topas.inc macro TOF_PV2(fwhm, fwhmv,dsq,dsqv, lor, lorv, & t1) { #m_argu fwhm #m_argu dsq If_Prm_Eqn_Rpt(fwhm, fwhmv, min .0001 max = 2 Val + 15 Yobs_dx_at(.5 (X1 + X2)); ) If_Prm_Eqn_Rpt(dsq, dsqv, min .0001 ) peak_type pv pv_lor lor lorv pv_fwhm = CeV(fwhm, fwhmv) Constant(t1 0.00001) D_spacing + CeV(dsq, dsqv) Constant(t1 0.00001) D_spacing^2 ; } '}}}
POLARIS
'----------------------------------------------------------------- 'POL Si calibration July 2014 '----------------------------------------------------------------- '{{{ r-factors and control information r_exp 0.511919295 r_exp_dash 1.50151957 r_wp 2.70677154 r_wp_dash 7.93927968 r_p 2.06100226 r_p_dash 8.59375227 gof 5.28749662 weighted_Durbin_Watson 1.29578945 iters 1000 continue_after_convergence 'randomize_on_errors '}}} '{{{ select banks to use here and enter filenames 'use these lines to set stemfilename and information for in gui mode 'this stemfilename will allow multitopas_files to run multibank multitemperature runs #ifdef !GUI_LINES macro filename {pol69971} macro information {prm !te 2 prm !time 0 } #endif #define USE_BANK1 macro filename_bank1 {filename##_b1_tof.dat} macro start_end_bank1 {start_X 750 finish_X 20000} #define USE_BANK2 macro filename_bank2 {filename##_b2_tof.dat} macro start_end_bank2 {start_X 1100 finish_X 20000} #define USE_BANK3 macro filename_bank3 {filename##_b3_tof.dat} macro start_end_bank3 {start_X 1100 finish_X 18000} #define USE_BANK4 macro filename_bank4 {filename##_b4_tof.dat} macro start_end_bank4 {start_X 1100 finish_X 20000} #define USE_BANK5 macro filename_bank5 {filename##_b5_tof.dat} macro start_end_bank5 {start_X 1100 finish_X 18000} '}}} '{{{ information specific to bank 1 refinement here #ifdef USE_BANK1 TOF_XYE(filename_bank1, 1.9) start_end_bank1 TOF_x_axis_calibration(t0_bank1, 5.18759`, difc_bank1, 733.60296`, difa_bank1, 1.82802`) local !bank_two_theta 10.4 r_wp 9.70136993 'bank 1 bkg @ 0.0839766313` -0.00116352281` 0.0203222693` -0.00200695551` 0.00843564957` 0.00203710295` local mu -1.18842` min -10 local !fixb 0.0 str tof_sample_peakshape(lor_bank1, 0.422407722`,dsp_bank1, 28.22893`,dspsq_bank1, 2.77643`) r_bragg 4.01201184 scale scal_bank1 0.00523977652` #endif '}}} '{{{ information specific to bank 2 refinement here #ifdef USE_BANK2 TOF_XYE(filename_bank2, 1.9) start_end_bank2 TOF_x_axis_calibration(t0_bank2,-7.10891`, difc_bank2, 1797.49837`, difa_bank2,-0.27785`) local !bank_two_theta 25.9875 r_wp 3.09725178 'bank 2 bkg @ 0.0714991704` 0.00313217165` 0.00476135079` -0.00285086573` 0.00122107001` -0.00169737735` local mu -0.03446` min -10 local !fixb 0.0 str tof_sample_peakshape(lor_bank2, 0.242629191`,dsp_bank2, 41.85512`,dspsq_bank2, 1.01309`) r_bragg 0.377256639 scale scal_bank2 0.0266245254` #endif '}}} '{{{ information specific to bank 3 refinement here #ifdef USE_BANK3 TOF_XYE(filename_bank3, 1.9) start_end_bank3 TOF_x_axis_calibration(t0_bank3,-7.09034`, difc_bank3, 3393.49948`, difa_bank3, -2.06645`) local !bank_two_theta 52.2461 r_wp 1.87962817 'bank 3 bkg @ 0.0742177408` -0.00396639586` 0.00896160946` -0.0042711189` 0.00309369814` -0.00115644649` 0.00209444963` 0.000568894794` 0.00061025279` 0.00065816394` 0.00124457582` 0.00140761642` local mu -0.00960` min -10 local !fixb 0.0 str tof_sample_peakshape(lor_bank3, 0.163244983`,dsp_bank3, 32.69676`,dspsq_bank3, 1.42360`) r_bragg 1.16889239 scale scal_bank3 0.0492509927` #endif '}}} '{{{ information specific to bank 4 refinement here #ifdef USE_BANK4 TOF_XYE(filename_bank4, 1.9) start_end_bank4 TOF_x_axis_calibration(t0_bank4,-5.32412`, difc_bank4, 5409.42462`, difa_bank4,-3.84953`) local !bank_two_theta 91.5081 r_wp 1.75398826 'bank 4 bkg @ 0.0772534661` -0.00867314893` 0.0119151891` -0.00498090205` 0.00292621944` -0.000398223299` 0.000567076202` 0.000528018082` 0.000707484073` 0.00140408136` 0.000925191546` 0.000769075834` local mu 0.00051` min -10 local !fixb 0.0 str tof_sample_peakshape(lor_bank4, 0.219125535`,dsp_bank4, 23.08598`,dspsq_bank4, 0.54012`) r_bragg 2.8173584 scale scal_bank4 0.0745249848` #endif '}}} '{{{ information specific to bank 5 refinement here #ifdef USE_BANK5 TOF_XYE(filename_bank5, 1.9) start_end_bank5 TOF_x_axis_calibration(t0_bank5,-4.58054`, difc_bank5, 7402.03014`, difa_bank5, -5.65557`) local !bank_two_theta 146.942 r_wp 1.60457057 'bank 5 bkg @ 0.0770298127` -0.0102430976` 0.0104326027` -0.0038427639` 0.000726139559` 0.000563566743` -0.000551167376` 0.000331583273` 0.000144642289` 0.000222236682` 2.34090854e-005` 8.22443766e-005` 0.000392863878` 0.000116620302` 0.000406783492` 0.000454106371` 0.000460762466` 2.26232831e-005` local mu -0.04934` min -10 local !fixb 0.00000 str tof_sample_peakshape(lor_bank5, 0.302038885`,dsp_bank5, 13.60682`,dspsq_bank5, 0.00000`) r_bragg 1.87755141 scale scal_bank5 0.0960837917` #endif '}}} '{{{ overall structural information here '------------------------------------------------------------ 'Put overall structural and peak shape information here 'Put the overall peak shape here so it can be refined for all banks in calibration then fixed for all banks 'In a normal refinement you probably wouldn't play with anything in wifd_mic2 lines '------------------------------------------------------------ for xdds { weighting = 1 / SigmaYobs^2; x_calculation_step = Yobs_dx_at(Xo); convolution_step 4 TOF_LAM(0.001) scale_pks = D_spacing^4; #define peak1 '#define peak2 '#define peak3 #ifdef peak1 'peak shape from 69972_y2o3_01 wrp 2.668% wifd_mic_new_anneal(two_theta, =bank_two_theta;, !tspow, 1.65068,!tauf_0, 3.15464, !tauf_1, 1.13337, !taus_0, 0.03940, !taus_1, 0.00169, !t_eff, 1766.65937, !hhh, 0.00101, !double_pulse, 0.06388) #endif #ifdef peak2 wifd_mic_new_anneal(two_theta, =bank_two_theta;, tspow, 2.41865,tauf_0, 1.61358, tauf_1, 1.66938, taus_0, 0.05219, taus_1, 0.00866, t_eff, 21341812991.14837, hhh, 0.00100, double_pulse, 0.02519) #endif #ifdef peak3 ' gsas type peak shape tested on bank 5 data - wasn't any better push_peak TOF_Exponential(a0_1, 36.21774 val_on_continue = Rand(00,1000);, a1_1, 45.08390 val_on_continue = Rand(-100,100);, 1, difc_bank5, +) bring_2nd_peak_to_top TOF_Exponential(a0_2, 137.66213 val_on_continue = Rand(00,1000);, a1_2,-18.18848 val_on_continue = Rand(-100,100);, 4, difc_bank5, +) scale_top_peak scal_top 0.00124047908 min 0.0 max 200 'val_on_continue = Rand(0.1,4); add_pop_1st_2nd_peak #endif scale_pks = Exp(-mu*2 D_spacing Sin(0.00872664626 bank_two_theta)); 'absorption correction local to each bank scale_pks = (Exp(-2*fixb/(2 D_spacing)^2)); 'fixb correction local to each bank for strs 1 to 1 { space_group Fd3m phase_name Si_NBS Cubic( !lpa_Si 5.431195) site Si x 0.00 y 0.00 z 0.00 occ Si 1 beq bsi 0.37120` } } '}}}