This is an old revision of the document!


Get(parameters)

It's often useful to “Get” parameters to use in INP files or for writing out. For example, if you wanted to equate cell parameters for a tetragonal structure you might use:

a @ 4.132
b = Get(a);

There are hundreds of different parameters you can “Get”. Try searching the technical reference manual or topas.inc.

You could also try looking through the text below. This is a text version of the file rttem9.dxx in your TOPAS directory. It contains some TOPAS definitions. It's not meant to be user-friendly!

For example, you should be able to search the file to figure out that the command to get the number of parameters in a refinement is: Get(number_independent_parameters).

start_out_side_recs
{ top_out_side
   { ^exts_load
      { brml { r load_brml_single } }
      { raw { r load_raw_single } }
      { rd { r load_raw_single } }
      { dat { r load_dat } }
      { xdd { r load_xdd } }
      { sst { r load_sst } }
      { cpt { r load_xdd } }
      { cal { r load_xdd } }
      { bkg { r load_xdd } }
      { ln  { r load_xdd } }
      { dif { r load_xdd } }
      { cpi { r load_cpi } }
      { xy  { r load_xy } }
      { scr { r load_scr } }
      { xye { r load_xye } }
      { vct { r load_vct } }
      { gsas { r load_gsas } }
      { fullprof { r load_fullprof } }
      { hkl {
         u scrysts [ r load_hkl ]
      } }
      { hkl-lam { r load_hkl_lam } }
      { uxd { r load_uxd } }
   }
   { log_file { riet.log } }
   { ^prms_from_to
      { Rp  { r radius_p } }
      { Rs  { r radius_s } }
      { X   { r xdd_x } }
      { Lam { r pk_to_Lam } }
      { Th  { r pk_to_Th } }
      { Xo  { r pk_to_Xo } }
      { D_spacing  { r pk_to_D } }
      { H   { r pk_to_H } }
      { K   { r pk_to_K } }
      { L   { r pk_to_L } }
      { M   { r pk_to_M } }
      { Mobs   { r pk_to_Mobs } }
      { Laue_Lam  { r pk_to_Laue_Lam } }
      { Mi  { r pk_to_Mi } }
      { I_after_scale_pks { r I_after_scale_pks } }
      { I_no_scale_pks { r I_no_scale_pks } }
      { Ri  { r pk_to_Ri } }
      { R   { r site_radius } }
      { Lpa   { r a } }
      { Lpb   { r b } }
      { Lpc   { r c } }
      { Yobs   { r pk_to_yobs } }
      { Xi  { r pk_to_xi } }
      { FT_K  { r pk_to_FT_K } }
      { WPPM_L  { r pk_to_WPPM_L } }
      { Ycalc   { r pk_to_ycalc } }
      { Fobs   { r pk_to_Fobs } }
      { Fcalc   { r pk_to_Fcalc } }
      { SigmaYobs { r pk_to_sigmayobs } }
      { A_star { r arec } }
      { B_star { r brec } }
      { C_star { r crec } }
      { Peak_Calculation_Step { r x_calculation_step } }
      { T { r temperature } }
      { Iter { r to_iter } }
      { Cycle { r to_cycle } }
      { Cycle_Iter { r to_cycle_iter } }
      { A01 { r f_A01 } }
      { A11 { r f_A11 } }
      { B01 { r f_B01 } }
      { B11 { r f_B11 } }
      { Iobs_no_scale_pks { r pk_to_Iobs } }
      { Iobs_no_scale_pks_err { r pk_to_Iobs_err } }
      { QR_Removed { r qr_removed } }
      { QR_Num_Times_Consecutively_Small { r qr_n_small } }
   }
   { ^prm_defaults
      { corrected {
         FMT_EL
         } }
      { el_wtp {
         FMT_EL
         } }
      { el_wtp_known {
         FMT_EL
         } }
      { lo {
         del = 0.05 (3.141/180) 2 Get(pk_to_D) Cos(Get(pk_to_Th)) Get(x_calculation_step);
         min = Max(.01, Val-.01);
         max = Min(100, Val+.01);
         fmt_val %-1.7f
         } }
      { la {
         del 0.01
         min .00001
         max = 2 Val + .1;
         FMT_5
         } }
      { lh {
          del = .01 Abs(Val) + 3 17.453293 (1/Tan(Get(pk_to_Th))) Get(x_calculation_step);
         min 1e-6
         max 5
         FMT_5
         } }
      { lg {
         min 1e-6
         max 5
          del = .001 Abs(Val) + 3 17.453293 (1/Tan(Get(pk_to_Th))) Get(x_calculation_step);
         FMT_5
         } }
      { a  { LP_a_  } }
      { b  { LP_a_  } }
      { c  { LP_a_  } }
      { al { LP_al_ } }
      { be { LP_al_ } }
      { ga { LP_al_ } }
      { scale {
         min 1e-15
         del = Abs(Val) 0.003 + 1e-10;
         fmt_val %-.9g fmt_err %-.4g
         } }
      { x {
         del = Constant(.1 / Get(a));
         min = Val-Constant(1/Get(a));
         max = Val+Constant(1/Get(a));
         FMT_5
         } }
      { y {
         del = Constant(.1 / Get(b));
         min = Val-Constant(1/Get(b));
         max = Val+Constant(1/Get(b));
         FMT_5
         } }
      { z {
         del = Constant(.1 / Get(c));
         min = Val-Constant(1/Get(c));
         max = Val+Constant(1/Get(c));
         FMT_5
         }   }
      { sx {
         del = Constant(.1 / Get(a));
         min = Val-Constant(1/Get(a));
         max = Val+Constant(1/Get(a));
         FMT_5
         } }
      { sy {
         del = Constant(.1 / Get(b));
         min = Val-Constant(1/Get(b));
         max = Val+Constant(1/Get(b));
         FMT_5
         } }
      { sz {
         del = Constant(.1 / Get(c));
         min = Val-Constant(1/Get(c));
         max = Val+Constant(1/Get(c));
         FMT_5
         }   }
      { sh_Cij_prm {
         del = If(Val < 0, -0.01, .01) + .01 Val;
         min = -Abs(Val) 2 - .1;
         max =  Abs(Val) 2 + .1;
         FMT_5
         } }
      { occ   {
         del 1e-5
         min 0
         max = 2 Val + 1;
         FMT_5
         } }
      { scale_occ   {
         del 1e-5
         min 0
         max = 2 Val + 1;
         FMT_5
         } }
      { pdf_zero   {
         min -0.2
         max  0.2
         FMT_5
         } }
      { pdf_gauss_fwhm {
         min 1e-6
         FMT_5
         } }
      { beq   {
         del = If(Val < 0, -0.01, .01) + .05 Val;
         min = Max(-10, Val-10);
         max = Min( 20, Val+10);
         FMT_5
         } }
      { prm_10   {
         del .00001 
         fmt_val %.9g fmt_err %.9g
         } }
      { loc_10   {
         del .00001 
         fmt_val %.9g fmt_err %.9g
         } }
      { cell_volume      { fmt_val %-1.3f fmt_err %-1.3f  } }
      { cell_mass      { fmt_val %-1.3f fmt_err %-1.3f  } }
      { weight_percent { fmt_val %-1.3f fmt_err %-1.3f  } }
      { lpsd_th2_angular_range_degrees {
          min = .0001;
         max = 1.5 Val + .1;
         del = 0.01 Val + .01;
         FMT_5
         }}
      { lpsd_equitorial_divergence_degrees {
         del = 0.01 Val + 0.001;
          min = .0001;
         max = 1.5 Val + .1;
         FMT_5
         }}
      { lpsd_equitorial_sample_length_mm {
         del = 0.01 Val + .1;
          min = .0001;
         max = 1.5 Val + 1;
         FMT_5
         }}
      { capillary_diameter_mm {
         del = If ( (Val Constant(1/Get(radius_p))) < (Get(x_calculation_step) C_PI_on_180), 1, -1) (Val 0.01 + Get(x_calculation_step) C_PI_on_180);
          min = .01;
         max = Min(2 Val + 1, Constant(Get(radius_p) 0.05));
         FMT_5
         }}
      { capillary_u_cm_inv {
         del = Abs(Val) 0.01 + 0.01;
          min = Max(Val 0.5, 3);
         max = Min(2 Val + 1, 500);
         FMT_5
         }}
      { capillary_focal_length_mm {
         del = Abs(Val) 0.01 + 0.01;
          min = Max(Val 0.5, 3);
         max = Min(2 Val + 1);
         FMT_5
         }}
      { source_len {
         min .0001
         max = 2 Val + 1;
         del = Abs(Val) .01 + 0.05;
         FMT_5
         } }
      { sam_len {
         min .0001
         max = 2 Val + 1;
         del = Abs(Val) .01 + 0.05;
         FMT_5
         } }
      { rs_len {
         min .0001
         max = 2 Val + 1;
         del = Abs(Val) .01 + 0.05;
         FMT_5
         } }
      { prim_soll {
         min .0001
         max = 2 Val + 1;
         del = Abs(Val) .01 + 0.05;
         FMT_5
         } }
      { second_soll {
         min .0001
         max = 2 Val + 1;
         del = Abs(Val) .01 + 0.05;
         FMT_5
         } }
      { m1  {
         min .75
         max 30
         del = -Abs(Val - .75) .05 - .005;
         } }
      { m2  {
         min .75
         max 30
         del = -Abs(Val - .75) .05 - .005;
         } }
      { pv_fwhm    { H_DEL__ } }
      { pv_lor    { LOR_DEL__ } }
 
      { h1        { H_DEL__ } }
      { h2        { H_DEL__ } }
 
      { spv_h1     { H_DEL__ } }
      { spv_h2     { H_DEL__ } }
      { spv_l1     { LOR_DEL__ } }
      { spv_l2     { LOR_DEL__ } }
 
      { whole_hat       { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
      { hat_prm          { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 
      { lor_conv          { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
      { gauss_conv       { CONV_DEL_PVE__ MIN_FMT_PVE_ } }
 
      { half_hat          { CONV_DEL__ FMT_5 } }
      { one_on_x_prm    { CONV_DEL__ FMT_5 } }
      { exp_limit       { CONV_DEL__ FMT_5 } }
      { exp_prm          { CONV_DEL__ FMT_5 } }
      { circles_prm       { CONV_DEL__ FMT_5 } }
 
      { scale_top_peak { del 0.01 } }
      { set_top_peak_area { del 0.01 } }
      { mg { MIN_FMT_PVE_ } }
      { mlx { FMT_5 } }
      { mly { FMT_5 } }
      { mlz { FMT_5 } }
 
      { dprm { min 0.000001 }   }
      { xo {
         min = Max(X1, Val - 40 Get(x_calculation_step));
         max = Min(X2, Val + 40 Get(x_calculation_step));
         } }
      { iprm {
         min 1.0e-15
         fmt_val %-.9g fmt_err %-.4g
         dr def_iprm
         } }
      { rotate_prm {
         min = Val-180;
         max = Val+180;
         del 1
         FMT_5
         } }
      { rx {
         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(a)));
         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(a)));
         del = If(Get(in_cart), .1, Constant(.1/Get(a)));
         FMT_5
         } }
      { ry {
         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(b)));
         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(b)));
         del = If(Get(in_cart), .1, Constant(.1/Get(b)));
         FMT_5
         } }
      { rz {
         min = If(Get(in_cart), Val-1, Val-Constant(1/Get(c)));
         max = If(Get(in_cart), Val+1, Val+Constant(1/Get(c)));
         del = If(Get(in_cart), .1, Constant(.1/Get(c)));
         FMT_5
         } }
      { r {
         min = Max(0.5, Val .5);
         max = 2 Val; del .05
         FMT_5
         } }
      { a1 {
         min = Val - 90;
         max = Val + 90;
         del 1
         FMT_5
         } }
      { a2 {
         min = Val - 90;
         max = Val + 90;
         del 1
         FMT_5
         } }
      { u11 {
         min 0
         max = Min(20, Val 2 + .05);
         FMT_5
         } }
      { u22 {
         min 0
         max = Min(20, Val 2 + .05);
         FMT_5
         } }
      { u33 {
         min 0
         max = Min(20, Val 2 + .05);
         FMT_5
         } }
      { u12 {
         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
         FMT_5
         } }
      { u13 {
         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
         FMT_5
         } }
      { u23 {
         min = Max(-10, Val If(Val < 0, 2, .5) - .025);
         max = Min( 10, Val If(Val < 0, .5, 2) + .025);
         FMT_5
         } }
      { protein_As { 
         min = -2 Abs(Val) - 1; 
         max =  2 Abs(Val) + 1; 
         FMT_5
      } }
      { protein_Bs { 
         min = -2 Abs(Val) - 1; 
         max =  2 Abs(Val) + 1; 
         FMT_5
      } }
   }
   { ^input_codes
      { default }
      { ^generate_stack_sequences
         { save_sequences { B save_sequences } }
         { save_sequences_as_strs { B save_sequences d generate_stack_sequences as } }
         { number_of_sequences { B number_of_sequences } }
         { number_of_stacks_per_sequence { B number_of_stacks_per_sequence } }
         { n_avg { B n_avg } }
         { layers_tol { B layers_tol } }
         { num_unique_vx_vy { r num_unique_vx_vy D } }
         { match_transition_matrix_stats { B match_transition_matrix_stats } }
         { user_defined_starting_transition { r user_defined_starting_transition D } }
         { transition { q transition D } }
            { use_layer { B use_layer } }
            { height { r t_height d ^ a D } }
            { to { q t_to D r to_transition_prob D } }
               { n { r t_n D } }
               { ta { r t_a D } }
               { tb { r t_b D } }
               { tz { r t_z D } }
               { a_add { r t_a d ^ a D } }
               { b_add { r t_b d ^ a D } }
               { z_add { r t_z d ^ a D } }
      }
      { ^pdf_generate
         { dr { r dr D } }
         { r_max { r r_max D } }
         { x_axis_is_Th2 { r x_axis_is_Th2 D } }
         { gr_sst_file { r gr_sst_file D } }
         { gr_to_fq { r gr_to_fq D } }
         { hat { r hat D } }
            { num_hats { r num_hats D } }
      }
      { ^riet_user_input_codes
         { xo_Is   { q xi } }
         { d_Is    { q di } }
         { xo     { q xo D } }
         { d      { q dprm D } }
 
         { element_weight_percent { q element D B el_wtp } }
         { element_weight_percent_known { q element_known D B el_wtp_known } }
         { elemental_composition { B elemental_composition } }
         { calculated_data_from { r calculated_data_from D } }
 
         { weight_percent    { B weight_percent s lnched ! [ g elemental_composition ] } }
         { str_mass           { B cell_mass } }
         { cell_mass           { B cell_mass } }
         { no_LIMIT_warnings { g no_LIMIT_warnings } }
         { more_accurate_Voigt { U more_accurate_Voigt } }
 
         { include { -include riet_user_input_codes } }
         { remove_phase { B remove_phase } }
         { out_dependences_for { h q out_dependences_for D k } }
         { out_dependences { h q out_dependences D k } }
 
         { out_Tji { B out_Tji } }
         { xdd_scr {
            u Ttree_app [
               s lnched [
                  r scrysts r xdd_recs q xdd B xdd_path_name
               ] [
                  R
               ]
            ] [
               r scrysts r xdd_recs q xdd B xdd_path_name
            ]
         } }
         { layer { q site_layer D n site ^ } }
         { stack_sequence { r str_layers n stack_sequences ^ } }
         { generate_stack_sequences { -keyword_group generate_stack_sequences r generate_stack_sequences } }
         { stack { r str_layers q stack D n stack_sequences ^ } }
            { sx { r sx D } }
            { sy { r sy D } }
            { sz { r sz D } }
            { generate_these { r generate_these D } }
            { generate_name_append { r generate_name_append D } }
         { f0_f1_f11_atom { q f0_f1_f11_atom D } }
         { f0 { B f0 } }
         { f1 { B f1 } }
         { f11 { B f11 } }
         { report_on_str { d str report_on_str } }
         { neutron_data   { g neutron } }
         { pdf_generate { -keyword_group pdf_generate r pdf_generate } }
         { pdf_data { g pdf_data } }
         { pdf_zero { r pdf_zero D } }
         { pdf_single_unit_cell { r pdf_single_unit_cell D } }
         { pdf_ymin_on_ymax { r pdf_ymin_on_ymax D } }
         { pdf_min_r_for_fwhm { r pdf_min_r_for_fwhm D } }
         { pdf_gauss_approx_i { r pdf_gauss_approx_i D } }
         { pdf_scale_simple { d pdf ss } }
         { pdf_for_pairs { q pdf_for_pairs D B pdf_pairs_1 B pdf_pairs_2 } }
            { pdf_only_eq_0 { d pdf_for_pairs 0 } }
         { pdf_gauss_fwhm { r pdf_gauss_fwhm D } }
         { pdf_info { r pdf_info D } }
         { pdf_convolute { q pdf_convolute D } }
            { min_X { r min_X D } }
            { max_X { r max_X D } }
            { convolute_X_recal { r convolute_X_recal D } }
         { pdf_ft_conv { q pdf_convolute D d ^ f } }
 
         { spiked_phase_measured_weight_percent { r spiked_mwp D } }
         { corrected_weight_percent { r corrected_weight_percent D } }
         { weight_percent_amorphous { r weight_percent_amorphous D } }
 
         { crystalline_area { B crystalline_area } }
         { amorphous_area { B amorphous_area } }
         { degree_of_crystallinity { B degree_of_crystallinity } }
         { numerical_area { B numerical_area } }
         { amorphous_phase { g amorphous_phase } }
 
         { str_closest { r str_closest D } }
         { closest { B closest } }
         { siv_s1_s2 { B siv_s1 B siv_s2 } }
         { grs_interaction { A grs_inter } }
         { box_interaction { A box_inter } }
         { atomic_interaction { q atomic_interaction D } }
         { ai_anti_bump { q ai_anti_bump D } }
         { ai_radius { B ai_radius } }
         { ai_sites_1 { B ai_sites_1 } }
         { ai_sites_2 { B ai_sites_2 } }
         { ai_closest_N { B ai_closest_N } }
         { ai_no_self_interation { g ai_no_self_interation } }
         { ai_only_eq_0 { g ai_only_eq_0 } }
         { ai_exclude_eq_0 { g ai_exclude_eq_0 } }
         { ai_flatten_with_tollerance_of { r ai_flatten_with_tollerance_of D } }
         { sites_distance { q sites_distance D } }
         { sites_angle { q sites_angle D } }
         { sites_flatten { q sites_flatten D } }
         { sites_flatten_tol { r sites_flatten_tol D } }
         { site_to_restrain { q site_to_restrain D } }
         { sites_geometry { q sites_geometry D } }
 
         { xdds  { xdd_fit_ndx } }
         { sites  { site_recs } }
         { strs  { str_recs } }
         { hklis { hklis } }
         { xo_Iss { xis } }
         { d_Iss { dis } }
         { min_r   { U min_r D } }
         { max_r   { U max_r D } }
         { rand_xyz   { B rand_xyz } }
         { str_hkl_angle { A hkl_angle } }
         { hkl_I_d2Th_dL { r hkl_I_d2Th_dL D } }
         { march_dollase { q march_dollase D } }
         { fft_max_order { r fft_max_order D n riet_app_3 ^ } }
         { str_max_mem_MBytes { -str_max_mem } }
 
         { dont_merge_equivalent_reflections { d str dmer } }
         { dont_merge_Friedel_pairs { d str dmerFp } }
         { ignore_differences_in_Friedel_pairs { d str idFp } }
         { num_highest_I_values_to_keep { B keep_N_I_values } }
         { Flack { r Flack D } }
         { gui_tof_t0 { B tof_t0 } }
         { gui_tof_t1 { B tof_t1 } }
         { i_on_error_ratio_tolerance { B ion_err_toll } }
         { occ_merge    { q occ_merge D } }
            { occ_merge_radius  { r occ_merge_radius D } }
         { normalize_FCs { g normalize_FCs } }
         { site    { q site D } }
            { x    { r x D } }
            { y    { r y D } }
            { z    { r z D } }
            { inter { r site_inter  D } }
            { num_posns    { B num_posns } }
            { occ          { q atom D r occ D } }
            { scale_occ   { B scale_occ } }
               { beq       { r beq D } }
            { adps  { -pbins r adps n ios_to_save ^ D } }
            { u11   { r u11 D } }
            { u22   { r u22 D } }
            { u33   { r u33 D } }
            { u12   { r u12 D } }
            { u13   { r u13 D } }
            { u23   { r u23 D } }
            { mlx { r mlx D } }
            { mly { r mly D } }
            { mlz { r mlz D } }
            { mg { r mg D } }
         { create_pks_name { r create_pks_name D } }
         { create_pks_fn { r create_pks_fn D } }
         { create_pks_equal_I { g create_pks_equal_I } }
         { no_f11 { g no_f11 } }
         { protein_As { B protein_As } }
         { protein_Bs { B protein_Bs } }
         { rigid { u str ! [ r rgds_ed ] q rigid } }
         { str {
            u xdd [
               q str
            ] [
               r strs_ed
               q str
            ]
         } }
 
         { dummy_str { r dstrs q str d ^ dummy_str } }
         { hkl_plane { q hkl_plane D } }
         { point_for_site { q point_for_site B site_name } }
         { z_matrix { q zmat_pfs B site_name D } }
         { rotate { q rotate r rotate_prm D } }
         { translate { q translate } }
         { operate_on_points { B operate_on_points } }
         { start_values_from_site { B start_values_from_site } }
         { in_cartesian { j in_cart 1 } }
         { in_FC { j in_cart 0 } }
         { ux { r rx D } }
         { uy { r ry D } }
         { uz { r rz D } }
         { qx { r rx D j in_cart 1 } }
         { qy { r ry D j in_cart 1 } }
         { qz { r rz D j in_cart 1 } }
         { tx { r rx D j in_cart 1 } }
         { ty { r ry D j in_cart 1 } }
         { tz { r rz D j in_cart 1 } }
 
         { ua { r rx D j in_cart 0 } }
         { ub { r ry D j in_cart 0 } }
         { uc { r rz D j in_cart 0 } }
         { qa { r rx D } }
         { qb { r ry D } }
         { qc { r rz D } }
         { ta { r rx D } }
         { tb { r ry D } }
         { tc { r rz D } }
 
         { spherical_harmonics_hkl { q sh_hkl D } }
         { normals_plot { r normals_plot D } }
            { normals_plot_min_d { r normals_plot_min_d D } }
 
         { phase_penalties { q phase_penalties D } }
            { hkl_Re_Im { B hkl_Re_Ims } }
            { phase_penalties_population { r phase_penalties_population D r phase_penalties n post_iter_2 ^ n on_converged ^ } }
               { phase_penalties_allowed_visits { r phase_penalties_allowed_visits D } }
            { accumulate_phases_and_save_to_file { r accumulate_phases_and_save_to_file D } }
               { accumulate_phases_when { r accumulate_phases_when D } }
               { accumulate_phases_sample_when { r accumulate_phases_sample_when D } }
            { determine_phases { B determine_phases } }
               { number_of_highest_intensities_to_work_with { B number_of_highest_intensities_to_work_with } }
               { number_of_cycles_for_initial_intensity_determination { B number_of_cycles_for_initial_intensity_determination } }
               { maximum_number_of_phase_configurations { B maximum_number_of_phase_configurations } }
               { error_tollerance { B error_tollerance } }
               { phase_tollerance { B phase_tollerance } }
               { determine_phases_when { B determine_phases_when } }
               { link_with_surpressor_phase_penalties { B link_with_surpressor_phase_penalties } }
               { number_of_hkls_for_link { B number_of_hkls_for_link } }
         { sh_alpha { r sh_alpha D  } }
         { sh_order { B sh_order } }
         { sh_Cij_prm { q sh_Cij_prm D  } }
 
         { phase_MAC { B phase_MAC } }
         { mixture_MAC { B mixture_MAC } }
         { mixture_density_g_on_cm3  { B mixture_density_g_on_cm3 } }
         { brindley_spherical_r_cm { B br_sp_r } }
 
 
         { charge_flipping { r charge_flipping } }
         { F2_pow { r F2_pow D } }
         { cf_hkl_file { r cf_hkl_file D } }
            { cf_merged { g cf_merged } }
         { cf_in_A_matrix { r cf_in_A_matrix D } }
         { scale_Aij { B scale_Aij } }
         { min_d { r min_d D } }
         { delete_observed_reflections { r delete_observed_reflections D } }
         { fraction_density_to_flip { r fraction_density_to_flip D } }
         { scale_flipped { r scale_flipped D } }
         { flip_equation { q flip_equation D } }
         { flip_regime_2 { q flip_regime_2 D } }
         { flip_regime_3 { q flip_regime_3 D } }
         { flip_regime_4 { q flip_regime_4 D } }
         { flip_neutron { q flip_neutron D } }
         { user_threshold { r user_threshold D } }
 
         { fraction_reflections_weak { r fraction_reflections_weak D } }
         { min_F_non_weak { r min_F_non_weak D } }
         { cf_plot_histo { r cf_plot_histo D } }
         { cf_set_phases { r cf_set_phases D } }
 
         { set_initial_phases_to { B set_initial_phases_to } }
            { use_Fc { g use_Fc } }
         { randomize_initial_phases_by { r randomize_initial_phases_by D } }
         { add_to_phases_of_non_weak_reflections { q add_to_phases_of_non_weak_reflections D } }
         { obey_symm { r obey_symm D } }
 
         { atp_merged { r atp_merged D } }
         { atp_weak_rand_plus_minus { q atp_weak_rand_plus_minus D } }
         { atp_non_weak_rand_plus_minus { q atp_non_weak_rand_plus_minus D } }
 
         { add_to_phases_of_weak_reflections { q add_to_phases_of_weak_reflections D } }
         { scale_weak_reflections { r scale_weak_reflections D } }
         { scale_non_weak_reflections { r scale_non_weak_reflections D } }
         { apply_exp_scale { r apply_exp_scale D } }
         { exp_scale_b_start { r exp_scale_b_start D } }
         { scale_F { r scale_F D } }
         { scale_E { r scale_E D } }
         { break_cycle_if_true { r break_cycle_if_true D } }
         { symmetry_obey_0_to_1 { r symmetry_obey_0_to_1 D } }
         { find_origin { r find_origin D } }
            { find_origin_percent_ok       { r find_origin_percent_ok D } }
         { histogram_match_scale_fwhm { r histogram_match_scale_fwhm D } }
            { hm_size_limit_in_fwhm { r hm_size_limit_in_fwhm D } }
            { hm_covalent_fwhm { r hm_covalent_fwhm D } }
            { hm_weighting { r hm_weighting D } }
            { hm_weighting_2 { r hm_weighting_2 D } }
            { hm_max_gauss { r hm_max_gauss D } }
            { hm_fraction_do { r hm_fraction_do D } }
            { hm_do_rest { r hm_do_rest D } }
            { hm_scale_rest { r hm_scale_rest D } }
            { hm_scale { r hm_scale D } }
            { hm_plot { r hm_plot D } }
         { tangent_scale_difference_by { r tangent_scale_difference_by D } }
         { tangent_num_h_read { r tangent_num_h_read D } }
         { tangent_num_k_read { r tangent_num_k_read D } }
         { tangent_num_h_keep { r tangent_num_h_keep D } }
         { tangent_max_triplets_per_h { r tangent_max_triplets_per_h D } }
         { tangent_min_triplets_per_h { r tangent_min_triplets_per_h D } }
         { tangent_tiny { r tangent_tiny D } }
         { tangent_max_al_sum_allowed { r tangent_max_al_sum_allowed D } }
         { tangent_include { r tangent_include D } }
         { correct_for_temperature_effects { r correct_for_temperature_effects D } }
         { view_cloud { B view_cloud } }
         { cf_cloud_add { B cf_cloud_add } }
         { scale_F000 { r scale_F000 D } }
         { pick_atoms_when { B pick_atoms_when } }
         { cf_plot_fit { r cf_plot_fit D } }
         { fc_with_d_E { r fc_with_d_E D } }
         { cf_out_fc_file { r cf_out_fc_file D } }
         { scale_density_below_threshold { r scale_density_below_threshold D } }
         { pick_atoms { q pick_atoms D }}
            { activate { r activate D }}
            { choose_from { r choose_from D }}
            { choose_to { r choose_to D }}
            { choose_randomly { r choose_randomly D }}
            { omit { r omit D }}
            { insert { r insert D }}
            { origin_omit { q origin_omit D }}
            { or_occ { r or_occ D }}
            { pick_fwhm { B pick_fwhm } }
            { omit_fwhm { B omit_fwhm } }
            { insert_fwhm { B insert_fwhm } }
            { insert_ats { B insert_ats } }
            { insert_at { q insert_at }}
 
         { inp_text { -inp_text } }
         { inp_text_insert { -inp_text_insert } }
 
         { move_to { -move_to } }
         { dummy { R } }
         { dummy_prm { B dummy_prm } }
         { d_spacing_to_energy_in_eV_for_f1_f11 { r d_spacing_to_energy_in_eV_for_f1_f11 D } }
         { seed { x -seed } }
         { xye_format { g xye_fmt } }
         { gsas_format { g gsas_format } }
         { fullprof_format { g fullprof_format } }
         { file_name_for_best_solutions { B file_for_sols } }
 
         { phase_out { A phase_out } }
         { phase_out_X { A phase_out_X } }
         { atom_out { A atom_out } }
         { test_mag { B test_mag } }
         { mag_atom_out { A mag_atom_out } }
         { mag_only_for_mag_sites { h E str d ^ mag_only_for_mag_sites k } }
         { mag_only { h E site d ^ mag_only k } }
 
         { xdd_out { A xdd_out } }
         { error_out { A error_out } }
         { out { A g_out } }
            { out_record { h r out_recs q out_rec n 01last_out out_rec_ndx ^ k } }
               { out_fmt { B 01last_out_rec fmt } }
               { out_eqn { B 01last_out_rec eqn Z 01last_out_rec eqn pre_process_Get } }
               { out_fmt_err { B 01last_out_rec fmt_err } }
 
         { penalties_weighting_K1 { B per_pen } }
         { do_errors { g do_errors } }
         { do_errors_include_restraints { g do_errors x riet_app_3 r } }
         { do_errors_include_penalties { g do_errors x riet_app_3 p } }
         { save_best_chi2    { x riet_app_3 bchi2 } }
         { eqn_zero_toll { x riet_app_3 ez } }
         { out_A_matrix    { h q out_A_matrix D k } }
            { A_matrix_prm_filter    { h  C out_A_matrixs r A_matrix_prm_filter D k } }
         { A_matrix    { B A_matrix } }
         { A_matrix_normalized { B A_matrix_normalized } }
         { C_matrix    { B C_matrix } }
         { C_matrix_normalized { B C_matrix_normalized } }
         { percent_zeros_before_sparse_A { B percent_zeros_before_sparse_A } }
         { use_CG           { } }
         { sparse_A           { } }
         { auto_sparse_CG    { } }
         { quick_refine   { B quick_refine } }
            { quick_refine_remove { B quick_refine_remove } }
            { quick_refine_No { B quick_refine_No } }
            { quick_refine_cycle_iter_start { B quick_refine_cycle_iter_start } }
         { iters            { B iters } }
         { num_cycles      { B num_cycles } }
         { num_runs   { B num_runs } }
         { suspend_writing_to_log_file   { B suspend_writing_to_log_file } }
         { out_file { r out_file D n riet_app_3 ^ } }
         { verbose { B verbose } }
         { process_times { g process_times } }
         { continue_after_convergence  { g continue_ref } }
         { system_before_save_OUT  { q system_before_save_OUT D } }
         { system_after_save_OUT  { q system_after_save_OUT D } }
         { no_normal_equations { g no_normal_eqs } }
         { chi2 { B chi2 g approximate_A } }
         { xdd_sum { q xdd_sum D } }
         { xdd_array { q xdd_array D } }
         { marquardt_mul { B marquardt_mul } }
         { approximate_A { g approximate_A } }
            { A_matrix_memory_allowed_in_Mbytes { B A_matrix_memory_allowed_in_Mbytes } }
            { A_matrix_elements_tollerance { B A_matrix_elements_tollerance } }
            { A_matrix_report_on { d non_fit A_matrix_report_on } }
            { A0_matrix_is_constant { d non_fit A0_matrix_is_constant } }
         { force_positive_fwhm { d non_fit fph } }
         { conserve_memory { j conserve_memory 1 } }
         { temperature { A temper } }
         { on_best_goto { h C tempers B on_best_goto k  } }
         { on_best_rewind { h C tempers B on_best_rewind k } }
         { use_best_values { h C tempers g use_best_values k } }
         { stop_rewind { h C tempers g stop_rewind k } }
         { save_values_as_best_after_randomization { h C tempers g save_values k } }
         { move_to_the_next_temperature_regardless_of_the_change_in_rwp { h C tempers g next_temp k } }
         { not_start_of_anneal { h C tempers g not_start_of_anneal k } }
 
         { out_prm_vals_per_iteration { q out_prm_vals_per_iteration D } }
         { out_prm_vals_on_convergence { q out_prm_vals_on_convergence D } }
         { out_prm_vals_filter { B out_prm_vals_filter } }
         { out_prm_vals_dependents_filter { B out_prm_vals_dependents_filter } }
 
         { bootstrap_errors { B bootstrap_errors } }
         { fraction_of_yobs_to_resample { B fraction_of_yobs_to_resample } }
         { determine_values_from_samples { g determine_values_from_samples } }
         { resample_from_current_ycalc { g resample_from_current_ycalc } }
 
         { use_LU { d non_fit lu } }
         { use_LU_for_errors { d non_fit lue } }
         { line_min { g line_min } }
         { use_extrapolation { g extrap } }
         { only_penalties { g only_pen } }
         { out_refinement_stats { d non_fit os } }
         { randomize_on_errors  { g rnd_errs } }
            { randomize_on_errors_do  { B randomize_on_errors_do } }
            { randomize_on_errors_buffer  { B randomize_on_errors_buffer } }
            { allowed_visits  { B allowed_visits } }
            { t_scaler_1 { B t_scaler_1 } }
            { t_scaler_2 { B t_scaler_2 } }
            { t_scaler_3 { B t_scaler_3 } }
            { t_scaler_4 { B t_scaler_4 } }
            { t_scaler_5 { B t_scaler_5 } }
            { t_scaler_6 { B t_scaler_6 } }
         { out_rwp { B out_rwp } }
         { out_chi2 { B out_chi2 } }
         { weighted_Durbin_Watson { B wdw } }
         { r_exp_dash { B r_exp_dash } }
         { r_wp_dash { B r_wp_dash } }
         { r_exp { B r_exp } }
         { r_wp { B r_wp } }
         { r_p_dash { B r_p_dash } }
         { r_p { B r_p } }
         { gof   { B gof } }
         { chi2_convergence_criteria { B rwp_tolerance } }
         { tag { h q tag D k } }
         { tag_2 { h q tag_2 D k } }
         { weighting { r weighting D } }
         { gui_text { h q kgui_text D k } }
         { recal_weighting_on_iter { d xdd recal_on_iter } }
         { xdd {
            u Ttree_app [
               s lnched [
                  r xdds r xdd_recs q xdd B xdd_path_name
               ] [
                  R
               ]
            ] [
               r xdds r xdd_recs q xdd B xdd_path_name
            ]
         } }
         { gui_reload { d xdd_path_name gui_reload } }
         { gui_ignore { d xdd_path_name gui_ignore } }
         { user_y { q user_y D B user_y_file } }
            { user_y_gauss_fwhm { q user_y_gauss_fwhm D } }
            { user_y_lor_fwhm { q user_y_lor_fwhm D } }
            { user_y_hat { q user_y_hat D } }
            { user_y_num_hats { B user_y_num_hats } }
            { user_y_exp_conv_const { q user_y_exp_conv_const D } }
               { user_y_exp_limit { r user_y_exp_limit D } }
            { user_y_rebin_with_dx_of { r rebin_with_dx_of D } }
               { user_y_rebin_start_x_at { r rebin_start_x_at D } }
            { user_y_rebin_tollerance_in_Y { r rebin_tollerance_in_Y D } }
               { user_y_rebin_min_merge { r rebin_min_merge D } }
         { yobs_eqn {
            r xdds r xdd_recs q xdd
            r yobs_eqn D
            n xdd_path_name yobs_eqn
            d xdd_path_name gui_reload_yobs_eqn
         } }
         { view_structure { g view_structure } }
         { range
            {
               u Ttree_app [
                  s lnched [
                     B range
                  ] [
                     R
                  ]
               ] [
                  B range
               ]
            }
         }
         { pr_str { -pr_str } }
         { start_X { B start_X } }
         { finish_X { B finish_X } }
         { extra_X { B extra_X_right } }
         { extra_X_left { B extra_X_left } }
         { extra_X_right { B extra_X_right } }
         { rebin_with_dx_of { r rebin_with_dx_of D } }
            { rebin_start_x_at { r rebin_start_x_at D } }
         { rebin_tollerance_in_Y { r rebin_tollerance_in_Y D } }
            { rebin_min_merge { r rebin_min_merge D } }
         { smooth { r smooth D } }
         { yobs_to_xo_posn_yobs { r yobs_to_xo_posn_yobs D } }
         { exclude { A excl_x12 A excl_x12 } }
         { bkg { B bkg } }
         { force_chubychev_positive { r force_chubychev_positive D } }
 
         { convolution_step { B convolution_step } }
         { x_calculation_step { B x_calculation_step } }
         { x_axis_tol_for_equal_step_size { r x_axis_tol_for_equal_step_size D } }
         { no_message { g no_message } }
         { gui_add_bkg { B gui_add_bkg } }
         { fit_obj { q gen_fit_obj B gen_dummy } }
            { fit_obj_phase { r fit_obj_phase D } }
         { fo_transform_X { r fo_transform_X D } }
 
         { Rp { U radius_p D } }
         { Rs { U radius_s D } }
 
         { penalty { h q penalty D k } }
         { restraint { h q penalty D d ^ res k } }
         { pen_weight { A pen_weight } }
         { existing_prm { -ex_prm } }
         { local { h q loc_10 D k } }
         { prm { h q prm_10 D k } }
         { fn { h q fn_10 D k } }
         { noinline { h -noinline k } }
         { aberration_range_change_allowed { b arca B arca } }
         { push_peak { q push_peak } }
         { bring_2nd_peak_to_top { q bring_2nd_peak_to_top } }
         { bring_nth_peak_to_top { q bring_nth_peak_to_top r n_from_top D } }
         { add_pop_1st_2nd_peak { q add_pop_1st_2nd_peak } }
         { scale_top_peak { q scale_top_peak_op B scale_top_peak } }
         { set_top_peak_area { q set_top_peak_area_op B set_top_peak_area } }
         { hat { q hat_conv r hat_prm D } }
            { num_hats { B num_hats } }
         { house { q house_conv } }
            { house_x1 { r house_x1 D } }
            { house_x2 { r house_x2 D } }
            { house_a1 { r house_a1 D } }
            { house_a2 { r house_a2 D } }
            { num_houses { B num_houses } }
         { one_on_x_conv { q one_on_x_conv r one_on_x_prm D } }
         { exp_conv_const { q exp_conv r exp_prm D } }
            { exp_limit { r exp_limit D } }
         { circles_conv { q circles_conv r circles_prm D } }
         { user_defined_convolution { q user_defined_conv r user_defined_prm D } }
         { gauss_fwhm_stack { q gauss_fwhm_stack r gfs_prm D } }
         { lor_fwhm_stack { q lor_fwhm_stack r lfs_prm D } }
 
         { ft_conv { r ft_conv_re_ims q ft_conv_re_im r ft_conv_re D } }
         { ft_conv_re_im { r ft_conv_re_ims q ft_conv_re_im } }
            { ft_conv_re { r ft_conv_re D } }
            { ft_conv_im { r ft_conv_im D } }
            { ft_x_axis_range { r ft_x_axis_range D } }
            { ft_min { r ft_min D } }
 
         { WPPM_ft_conv { r WPPM_ft_conv_re_ims q WPPM_ft_conv_re_im r WPPM_ft_conv_re D } }
         { WPPM_ft_conv_re_im { r WPPM_ft_conv_re_ims q WPPM_ft_conv_re_im D } }
            { WPPM_ft_conv_re { r WPPM_ft_conv_re D } }
            { WPPM_ft_conv_im { r WPPM_ft_conv_im D } }
            { WPPM_th2_range { r WPPM_th2_range D } }
            { WPPM_break_on_small { r WPPM_break_on_small D } }
            { WPPM_L_max { r WPPM_L_max D } }
         { WPPM_correct_Is { d WPPM_fte_convs ci } }
         { WPPM_fix_intensity { d WPPM_fte_convs fi } }
 
         { capillary_diameter_mm {
            q capillary_conv
            r capillary_diameter_mm D
            } }
            { capillary_xy_n { r capillary_xy_n D } }
            { capillary_u_cm_inv { r capillary_u_cm_inv D } }
            { capillary_parallel_beam { g capillary_parallel_beam } }
            { capillary_convergent_beam { g capillary_convergent_beam } }
            { capillary_divergent_beam { g capillary_divergent_beam } }
            { capillary_focal_length_mm  { r capillary_focal_length_mm D } }
         { lpsd_th2_angular_range_degrees {
            q lpsd_conv
            r lpsd_th2_angular_range_degrees D } }
            { lpsd_equitorial_divergence_degrees { r lpsd_equitorial_divergence_degrees D } }
            { lpsd_equitorial_sample_length_mm { r lpsd_equitorial_sample_length_mm D } }
            { lpsd_beam_spill_correct_intensity { r lpsd_beam_spill_correct_intensity D } }
         { axial_conv { q axial_conv } }
            { filament_length { r source_len D } }
            { sample_length { r sam_len D } }
            { receiving_slit_length { r rs_len D } }
            { primary_soller_angle  { r prim_soll D } }
            { secondary_soller_angle { r second_soll D } }
            { flat_crystal_pre_monochromator_axial_const { r inel_const D } }
            { axial_n_beta { B axial_n_beta } }
            { axial_del { B dummy_prm } }
         { stacked_hats_conv { q sh_conv } }
            { whole_hat { q whole_hat D } }
            { half_hat { q half_hat D } }
            { hat_height { r sh_hhh D } }
 
         { modify_peak { r modify_peak } }
            { modify_peak_apply_before_convolutions { g modify_peak_apply_before_convolutions } }
            { modify_peak_eqn { r modify_peak_eqn D } }
               { current_peak_min_x { r current_peak_min_x D } }
               { current_peak_max_x { r current_peak_max_x D } }
 
         { del_approx { q del_approx D } }
         { lor_fwhm { q lor_fwhm D } }
         { gauss_fwhm { q gauss_fwhm D } }
         { scale_pks { q scale_pks_prm D } }
         { scale_phase_X { q scale_phase_X D } }
         { th2_offset { q th2_offset_prm D } }
         { pk_xo { r pk_xo_prm D } }
         { peak_buffer_based_on { r peaks_buffer_based_on q peak_buffer_based_on D } }
         { peak_buffer_based_on_tol { r peak_buffer_based_on_tol D } }
 
         { auto_scale             { r auto_scale D } }
         { scale                   { r scale D } }
         { space_group             { B sp_grp_char } }
         { mag_space_group          { g mag_sg B sp_grp_char } }
         { omit_hkls { r omit_hkls_bin q omit_hkls D } }
         { volume                  { B cell_volume } }
         { cell_volume            { B cell_volume } }
 
         { peak_buffer_step       { b pk_buffer_step r pk_buffer_step D } }
         { report_on             { E phase d ^ report_on } }
         { peak_type              { B pk_type } }
 
         { append_cartesian      { r do_cart D } }
         { append_fractional      { r do_fract D } }
         { p1_fractional_to_file  { r p1_fractional_to_file D } }
         { in_str_format         { g in_str_format } }
         { append_bond_lengths   { B do_bond_lengths } }
            { consider_lattice_parameters { g clp } }
         { r_bragg  { r r_bragg D } }
         { a     { r a  D } }
         { b     { r b  D } }
         { c     { r c  D } }
         { al     { r al D } }
         { be     { r be D } }
         { ga     { r ga D } }
 
         { only_lps { d index only_lps } }
         { lp_search { r lp_search D } }
         { lp_search_fom { r lp_search_fom D } }
         { index_x0 { r index_x0 D } }
         { index_d { q index_d D Y good [ d index_d g ] } }
         { index_I { r index_I D Y good [ d index_d g ] } }
         { index_th2 { q index_d D d ^ t Y good [ d index_d g ] } }
         { index_zero_error { g index_zero_error } }
         { index_min_lp { r index_min_lp D } }
         { index_max_lp { r index_max_lp D } }
         { index_lam { r index_lam D } }
         { index_max_Nc_on_No { r index_max_Nc_on_No D } }
         { index_max_th2_error { r index_max_th2_error D } }
         { index_max_zero_error { r index_max_zero_error D } }
         { index_max_number_of_solutions { B index_max_number_of_solutions } }
         { index_th2_resolution { B index_th2_resolution } }
         { try_space_groups { q try_space_groups D } }
         { no_extinction_subgroup_search { d index nosgs } }
         { n1 { B n1 } }
         { n2 { B n2 } }
         { n3 { B n3 } }
         { v1 { B v1 } }
         { x_scaler { B x_scaler } }
         { x_angle_scaler { B x_angle_scaler } }
         { test_a  { B test_a  } }
         { test_b  { B test_b  } }
         { test_c  { B test_c  } }
         { test_al { B test_al } }
         { test_be { B test_be } }
         { test_ga { B test_ga } }
 
         { ndx_sg   { q ndx_det B ndx_sg } }
         { ndx_status  { B ndx_status } }
         { ndx_uni  { B ndx_uni } }
         { ndx_vol  { R } }
         { ndx_gof  { R } }
         { ndx_ze   { B ndx_ze   } }
         { ndx_alp  { B ndx_alp  } }
         { ndx_blp  { B ndx_blp  } }
         { ndx_clp  { B ndx_clp  } }
         { ndx_allp { B ndx_allp } }
         { ndx_belp { B ndx_belp } }
         { ndx_galp { B ndx_galp } }
 
         { hkl_similar_tag { r hkl_dets r hkl_similar_tag D } }
         { peak_buffer_similar_tag { r peak_buffer_similar_tag D } }
         { hkl_m_d_th2 { B hkl_dets } }
         { hkl_Is  { q hkli } }
         { I_parameter_names_have_hkl  { B I_parameter_names_have_hkl } }
         { lebail  { B lebail } }
         { phase_name { B phase_name } }
 
         { default_I_attributes  { r def_iprm D } }
         { I      { q iprm D } }
         { m1     { r m1 D } }
         { m2     { r m2 D } }
         { h1     { r h1 D } }
         { h2     { r h2 D } }
         { pv_lor  { r pv_lor D } }
         { pv_fwhm { r pv_fwhm D } }
         { spv_h1  { r spv_h1 D } }
         { spv_h2  { r spv_h2 D } }
         { spv_l1  { r spv_l1 D } }
         { spv_l2  { r spv_l2 D } }
         { numerical_lor_gauss_conv { g numerical_lor_gauss_conv } }
         { numerical_lor_ymin_on_ymax { r numerical_lor_ymin_on_ymax D } }
 
         { lam     { U lam } }
         { ymin_on_ymax { r ymin_on_ymax D } }
         { no_th_dependence { j no_th_dep 1 } }
         { Lam { r lam_for_Bragg_ang D } }
         { lo_ref { r lo_ref } }
         { calculate_Lam { d lam_for_Bragg_ang calc_lfd } }
         { la        { q lam_rec r la D } }
         { lh        { r lh D } }
         { lg        { r lg D } }
         { lo        { r lo D } }
         { min { -min_load } }
         { max { -max_load } }
         { del { -del_load } }
         { update { -update_load } }
         { val_on_continue { -vonc_load } }
         { stop_when { -stop_when_load } }
         { prm_with_error { h q prm_10 -prm_with_error k } }
         { use_tube_dispersion_coefficients { B use_old_disp } }
            { extend_calculated_sphere_to { r extend_calculated_sphere_to D } }
            { correct_for_atomic_scattering_factors { r correct_for_atomic_scattering_factors D } }
            { use_E_values { r use_E_values D } }
            { out_merged_only { r out_merged_only D } }
            { fourier_map_formula { r fourier_map_formula D } }
            { min_grid_spacing { r min_grid_spacing D } }
            { out_str_dets { B out_str_dets } }
            { out_Fc { B out_Fc } }
            { f_atom_type { q f_atom_type D } }
               { f_atom_quantity { B f_atom_quantity } }
      }
   }
}
start_templates
{ Trigid_xyz;
   Crigid_xyz;
      Crx _cr rigid_prm pt rigid IS_RIGID_prm_6; 
      Cry _cr rigid_prm pt rigid IS_RIGID_prm_6; 
      Crz _cr rigid_prm pt rigid IS_RIGID_prm_6; 
      Ain_cart _cr fui; 
}
{ Tpfs_rigid_xyz;
   Asite_name _cr fus;
   Crigid_xyz;
      Crx _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
      Cry _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
      Crz _cr pfs_rigid_prm pt rigid IS_RIGID_prm_6; 
      Ain_cart _cr fui;   
   Ccrigid_xyz _cr prm_6;
      Ccrx _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
      Ccry _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
      Ccrz _cr crxyz nc nsv ES_FOR_OUTPUT IS_RIGID_prm_6; 
}
{ Toperate_on_points;
   Aoperate_on_points _cr fus;
}
{ Ttranslate;
   Astart_values_from_site _cr fus;
   Crand_xyz _cr prm_6 _on_cr { r translate n vonc_2 ^ };
}
{ Trotate_prm;
   Crotate_prm _cr rigid_prm pt rigid IS_RIGID_prm_6;
}
{ Tzmat;
   Cr  _cr rigid_prm pt rigid IS_RIGID_prm_6;
   Ca1 _cr rigid_prm pt rigid IS_RIGID_prm_6;
   Ca2 _cr rigid_prm pt rigid IS_RIGID_prm_6;
}
{ Trigid;
   rigid_ops _cr nou _array;
   point_for_sites _array _cr aA;
      Cpoint_for_site _tem { Tpfs_rigid_xyz } _on_cr { j in_cart 1 n rigid_ops ^ } _alias { pfs op } IS_RIGID_prm_6;
      Czmat_pfs _tem { Tpfs_rigid_xyz Tzmat } _on_cr { j in_cart 1 n rigid_ops ^ } _alias { pfs op } IS_RIGID_prm_6;
   rotations _array _cr aA;
      Crotate _tem { Trigid_xyz Trotate_prm Toperate_on_points } _on_cr { n rigid_ops ^ } _alias op IS_RIGID_prm_6;
   translations _array _cr aA;
      Ctranslate _tem { Trigid_xyz Ttranslate Toperate_on_points } _on_cr { n rigid_ops ^ } _alias op IS_RIGID_prm_6;
}
{ Trigids;
   rigids _array _on_cr { 4 str };
      Crigid _on_cr { n pu1 ^ } _alias prm_bin _tem Trigid;
}
{ Tsh_hhh;
   Csh_hhh _cr conv_prm fn Th_;
}
{ Tarca;
   Carca _cr prm_6 nc;
}
{ Tcapillary;
   Ccapillary_u_cm_inv _cr conv_prm pt ~pk fn Th_;
   capillary_parallel_beam _cr aA;
   capillary_divergent_beam _cr aA;
   capillary_convergent_beam _cr aA;
   Ccapillary_focal_length_mm _cr conv_prm pt ~pk fn Th_;
   Ccapillary_xy_n _def 80 _cr prm_6;
}
{ Tlpsd_beam_spill_correct_intensity;
   Alpsd_beam_spill_correct_intensity _cr fui _def 1 _on_cr { n lpsd_conv ^ };
}
{ Tlpsd;
   Clpsd_equitorial_divergence_degrees _cr conv_prm pt ~pk fn Th_;
   Clpsd_equitorial_sample_length_mm _cr conv_prm _tem { Tlpsd_beam_spill_correct_intensity } pt ~pk fn Th_ _on_cr { n lpsd_conv ^ };
}
 
{ Tfte_convs;
   fte_conv _cr aA;
      Cfte_re _cr fte_re_im fn { Th_ Tx TFT_K } pt ft;
      Cfte_im _cr fte_re_im fn { Th_ Tx TFT_K } pt ft;
}
{ TWPPM_fte_convs;
   fte_conv _cr aA;
      Cfte_re _cr fte_re_im fn { Th_ Tx TWPPM_L } pt ft;
      Cfte_im _cr fte_re_im fn { Th_ Tx TWPPM_L } pt ft;
}
{ Tft_conv_re_ims;
   ft_conv_re_im;
      Cft_conv_re _cr prm_10 nr nyd pt pk fn { Th_ Tx TFT_K };
      Cft_conv_im _cr prm_10 nr nyd pt pk fn { Th_ Tx TFT_K };
      Cft_x_axis_range nyd nr _cr prm_10;
      Cft_min nyd nr _cr prm_10;
}
{ TWPPM_ft_conv_re_ims;
   WPPM_ft_conv_re_im;
      CWPPM_ft_conv_re _cr prm_10 nr nyd pt pk fn { Th_ Tx TWPPM_L };
      CWPPM_ft_conv_im _cr prm_10 nr nyd pt pk fn { Th_ Tx TWPPM_L };
      CWPPM_th2_range nyd nr _cr prm_10;
      CWPPM_break_on_small nyd nr _cr prm_10 _def 1e-7;
      CWPPM_L_max nyd nr _cr prm_10;
}
{ Texp_conv;
   Cexp_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Cexp_limit _cr conv_prm _tem Tarca pt ~pk fn Th_ _on_cr { n exp_conv ^ };
}
{ That_conv;
   Chat_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Anum_hats _def 1 _cr fui _on_cr { M hat_conv };
}
{ Thouse;
   Chouse_x1 _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Chouse_x2 _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Chouse_a1 _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Chouse_a2 _cr conv_prm _tem Tarca pt ~pk fn Th_;
   Anum_houses _def 1 _cr fui;
}
{ Tone_on_x_conv;
   Cone_on_x_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
}
{ Tcircles_conv;
   Ccircles_prm _cr conv_prm _tem Tarca pt ~pk fn Th_;
}
{ Tgauss_fwhm_stack;
   Cgfs_prm _cr num_deriv pt pk fn { Th_ Tx };
}
{ Tlor_fwhm_stack;
   Clfs_prm _cr num_deriv pt pk fn { Th_ Tx };
}
{ Tuser_defined_conv;
   Cuser_defined_prm _cr num_deriv pt pk fn { Th_ Tx };
}
{ Tsh_conv;
   Cwhole_hat _cr sh_prm _tem { Tarca Tsh_hhh } pt ~pk fn Th_;
   Chalf_hat _cr sh_prm _tem { Tarca Tsh_hhh } pt ~pk fn Th_;
}
{ Taxial_conv;
   axial_prms _cr aA _on_cr { g source_len g sam_len g rs_len };
      Csource_len _cr conv_prm pt ~pk;
      Csam_len _cr conv_prm pt ~pk;
      Crs_len _cr conv_prm pt ~pk;
      Cprim_soll _cr conv_prm pt ~pk;
      Csecond_soll _cr conv_prm pt ~pk;
      Cinel_const _cr conv_prm pt ~pk;
   Caxial_n_beta _def 30 _cr prm_6 fn Th_;
}
{ Tbring_nth_peak_to_top;
   Cn_from_top _cr prm_10 nr nyd fn Th_;
}
{ Tcomm_1;
   hr_pk_prms _cr aA _array;
      hr_convs _cr nou _array;
      always_arca _cr nou _array;
      pk_type_prms _cr aA _array;
         Cm1 _cr conv_prm _tem Tarca _on_cr { j arca =.05 } pt ~pk fn Th_ Flags Ffsti;
         Cm2 _cr conv_prm _tem Tarca _on_cr { j arca =.05 } pt ~pk fn Th_ Flags Ffsti;
         Ch1 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
         Ch2 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
         Cpv_fwhm _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
         Cpv_lor _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
         Cspv_h1 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
         Cspv_h2 _cr conv_prm _tem Tarca pt ~pk fn Th_ Flags Ffsti;
         Cspv_l1 _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
         Cspv_l2 _cr conv_prm _tem Tarca _on_cr { j arca =.01 } pt ~pk fn Th_ Flags Ffsti;
      push_pk_etc _cr aA _array;
         push_peak _on_cr { n hr_convs ^ };
         bring_2nd_peak_to_top _on_cr { n hr_convs ^ };
         bring_nth_peak_to_top _on_cr { n hr_convs ^ } _tem Tbring_nth_peak_to_top;
         add_pop_1st_2nd_peak _on_cr { n hr_convs ^ };
         scale_top_peak_op _on_cr { n hr_convs ^ };
            Cscale_top_peak _cr conv_prm pt ~pk fn Th_;
         set_top_peak_area_op _on_cr { n hr_convs ^ };
            Cset_top_peak_area _cr conv_prm pt ~pk fn Th_;
      hat_conv _on_cr { n hr_convs ^ } _tem That_conv;
      house_conv _on_cr { n hr_convs ^ } _tem Thouse;
      one_on_x_conv _on_cr { n hr_convs ^ } _tem Tone_on_x_conv;
      exp_conv _on_cr { n hr_convs ^ } _tem Texp_conv;
      circles_conv _on_cr { n hr_convs ^ } _tem Tcircles_conv;
      gauss_fwhm_stack _on_cr { n hr_convs ^ n always_arca ^ } _tem Tgauss_fwhm_stack;
      lor_fwhm_stack _on_cr { n hr_convs ^ n always_arca ^ } _tem Tlor_fwhm_stack;
      user_defined_conv _on_cr { n hr_convs ^ n always_arca ^ } _tem Tuser_defined_conv;
      sh_conv _array _on_cr { n hr_convs ^ } _tem Tsh_conv _alias prm_bin;
      capillary_conv _tem { Tarca Tcapillary } _on_cr { n hr_convs ^ n always_arca ^ } Flags Fcr;
         Ccapillary_diameter_mm _cr conv_prm pt ~pk fn Th_;
      lpsd_conv _tem { Tarca Tlpsd } _on_cr { n hr_convs ^ n always_arca ^ } Flags Fcr;
         Clpsd_th2_angular_range_degrees _cr conv_prm pt ~pk fn Th_;
      axial_conv _tem { Tarca Taxial_conv } _on_cr { g axial_prms n hr_convs ^ n always_arca ^ } Flags Fcr;
      modify_peak _tem { Tarca } _on_cr { n hr_convs ^ n always_arca ^ };
         Cmodify_peak_eqn _cr num_deriv pt ~pk fn Th_ Flags Ffsti;
         Ccurrent_peak _cr prm_6 nc nsv pt ~pk fn Th_ Flags Ffsti;
         Ccurrent_peak_x _cr prm_6 nc nsv;
         Ccurrent_peak_min_x _cr prm_6 nc nsv;
         Ccurrent_peak_max_x _cr prm_6 nc nsv;
         modify_peak_apply_before_convolutions _cr aA;
      lor_numer _on_cr { n hr_convs ^ };
      gauss_numer _on_cr { n hr_convs ^ };
      Anumerical_lor_ymin_on_ymax _cr fud _def 1.0e-4;
      numerical_lor_gauss_conv _cr aA;
      lor_gauss_fwhms _cr aA;
         lor_fwhms _cr aA _array;
            Clor_fwhm _cr prm_10 nyd pt ~pk fn Th_;
         gauss_fwhms _cr aA _array;
            Cgauss_fwhm _cr prm_10 nyd pt ~pk fn Th_;
      ft_conv_re_ims _array _cr aA _tem Tft_conv_re_ims;
      WPPM_ft_conv_re_ims _array _cr aA _tem TWPPM_ft_conv_re_ims;
   comm_1_1 _cr aA;
      Cpk_xo_prm _cr prm_10 nyd fn Th_;
      th2_offsets _cr aA _array;
         Cth2_offset_prm _cr prm_10 nyd fn Th_;
      more_accurate_Voigt search_up _cr aA;
      pdf_convolutes _cr aA _array;
         Cpdf_convolute _tem Tpdf_convolute _cr pdf_conv_str;
}
{ Tmin_max_r;
   min_max_r _cr aA;
      Amin_r _cr fud _def 0.0 search_up;
      Amax_r _cr fud _def 3.2 search_up;
}
{ Tref_and_non_ref_prms;
   ref_and_non_ref_prms _cr aA;
      refs _cr crefs;
      nonrefs _cr crefs;
}
{ Tno_message;
   no_message _cr aA;
}
{ Tfit_stats;
   Aconvolution_step _def 1 _cr fui;
   Cx_calculation_step nr _def -999 type Th_ fn Th_;
   Cx_axis_tol_for_equal_step_size _cr prm_10 nr _def 1e-4 _tem Tno_message;
   fit_stats _cr aA;
      Cwdw nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cr_exp_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cr_wp_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cr_p_dash nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cr_p nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cgof nc nr _fmt %-1.3f _cr prm_7 _on_cr { n ios_to_save _ };
      Cr_exp nc nr _fmt %-1.3f _on_cr { n ios_to_save _ } _def 1; 
      Cr_wp nc nr _fmt %-1.3f _on_cr { n ios_to_save _ }; 
}
{ Tstr_sg;
   Asp_grp_char _cr fus;
      str_sg _on_cr { d ^ do };
      sg_set _on_cr { d ^ do };
      sp_xyzs_txt;
      sp_xyzs_txt_with_id _cr sp_xyzs_txt;
      mag_sp_xyzs_txt;
      mag_sp_xyzs_txt_with_id _cr mag_sp_xyzs_txt;
}
{ Tndx_fom;
   ndx_fom;
}
{ Ttry_space_groups;
   An1 _cr fui;
   An2 _cr fui;
   An3 _cr fui;
   Av1 _cr fud;
   Ax_scaler _cr fud;
   Ax_angle_scaler _cr fud;
   test_lps _cr aA;
      Ctest_a _cr prm_6;
      Ctest_b _cr prm_6;
      Ctest_c _cr prm_6;
      Ctest_al _cr prm_6;
      Ctest_be _cr prm_6;
      Ctest_ga _cr prm_6;
}
{ Taccumulate_phases_when;
   Caccumulate_phases_when _cr prm_6 _def 1 _on_cr { n phase_penalties ^ };
   Caccumulate_phases_sample_when _cr prm_6 _def 1 _on_cr { n phase_penalties ^ };
}
{ Tphase_penalties;
   Aaccumulate_phases_and_save_to_file _tem { Taccumulate_phases_when } _cr fus _on_cr { n phase_penalties ^ r phase_penalties n on_cont11 ^ n fin4 ^ };
   hkl_Re_Ims;
   Cphase_penalties_allowed_visits _cr prm_6 _def 100;
   Cphase_penalties_population _cr prm_6 _def 1000;
   Cerror_tollerance _cr prm_6 _def 2;
   Cphase_tollerance _cr prm_6 _def 90;
    Cdetermine_phases _cr prm_6 _def 15 _on_cr { n phase_penalties ^ };
      Cnumber_of_highest_intensities_to_work_with _cr prm_6 _def 200;
      Cnumber_of_cycles_for_initial_intensity_determination _cr prm_6 _def 100;
      Cmaximum_number_of_phase_configurations _cr prm_6 _def 500;
      Cdetermine_phases_when _cr prm_6 _def 1;
      Alink_with_surpressor_phase_penalties _cr fus;
         Cnumber_of_hkls_for_link _cr prm_6 _def 500;
}
{ Tomit_hkls_bin;
   Apk_to_H _cr fud nsv type Tomh;
   Apk_to_K _cr fud nsv type Tomh;
   Apk_to_L _cr fud nsv type Tomh;
   Apk_to_D _cr fud nsv type Tomh;
   omit_hklss _cr aA _array;
      Comit_hkls _cr prm_6 nc fn { Tomh };
}
{ Tnormals_plot;
   Cnormals_plot_min_d _cr prm_6;
}
{ Thkl_F2;
   Coffset nsv nr nyd;
}
{ Tsh_hkl;
   Csh_alpha _cr prm_10 fn Th_; 
   Ash_order _def 4; 
   sh_Yij_prms _array _cr aA; 
      Csh_Yij_prm nyd nc nsv type Th_ fn Th_ Flags Individual_Peak_Shapes;
   sh_Cij_prms _array _cr aA; 
      Csh_Cij_prm fn Th_ Flags Individual_Peak_Shapes;
}
{ Thkl_similar_tag;
   Chkl_similar_tag _cr prm_10 nr nyd _on_cr { 6 hkl_dets };
}
{ Thkl_lat;
   hkl _cr aA;
      march_dollases _array _cr aA;
         Cmarch_dollase nr nmbu nc nsv nyd type Th_ fn Th_ local_ _on_cr { c march_dollase_prm n locals ^ };
            Cmarch_dollase_prm nyd _cr prm_10; 
      hkl_angles _array _cr aA;
         Chkl_angle nr nmbu nc nsv nyd type Th_ fn Th_ Flags Individual_Peak_Shapes;
      Chkl_I_d2Th_dL nr nmbu nc nsv nyd type Th_ fn Th_ local_ _on_cr { n locals ^ 6 phase }  _tem Thkl_F2;
      hkl_dets _tem Thkl_similar_tag;
      hkls_all_save _on_cr { n hkl_dets ^ };
      omit_hkls_bin _cr aA _tem Tomit_hkls_bin;
      phase_penaltiess _array _cr aA;
         Cphase_penalties nc nmbu nyd _tem Tphase_penalties;
      normals_plots _array _cr aA;
         Cnormals_plot _tem Tnormals_plot _on_cr { n fin6 ^ } nyd nsv nv nc type Th_ fn Th_;
      sh_hkls _array _cr aA;
         Csh_hkl nyd nsv nv nc type Th_ fn Th_ local_ _on_cr { n locals ^ } _tem Tsh_hkl;
      Apk_to_Mi nsv _def -1 type Th_;
   Clat_prms;
      Carec _cr prm_7 fn_of "lat_prms"; 
      Cbrec _cr prm_7 fn_of "lat_prms"; 
      Ccrec _cr prm_7 fn_of "lat_prms"; 
      lat_prms_prms _cr aA; 
         Ca _cr lp_abc pt th2 _alias lp fn Th_; 
         Cb _cr lp_abc pt th2 _alias lp fn Th_;   
         Cc _cr lp_abc pt th2 _alias lp fn Th_;   
         Cal _cr lp_albega pt th2 _alias lp _def 90 fn Th_; 
         Cbe _cr lp_albega pt th2 _alias lp _def 90 fn Th_;   
         Cga _cr lp_albega pt th2 _alias lp _def 90 fn Th_;   
      Clp_search _tem { Tndx_fom } nyd _on_cr { g cell_volume g hkls_all_save n on_cont0 ^ n on_cont2 ^ n on_first_ycalc ^ };
      Clp_search_fom nr nmbu nyd;
}
{ Tatomic_interaction;
   Cai_radius _cr prm_6;
   Cai_flatten_with_tollerance_of _cr prm_6;
   Aai_closest_N _cr fui;
   Aai_sites_1 _cr fus;
   Aai_sites_2 _cr fus;
   ai_no_self_interation _cr aA;
   ai_only_eq_0 _cr aA;
   ai_exclude_eq_0 _cr aA;
}
{ Tocc_merge;
   Cocc_merge_radius _cr prm_6 _def 0.6; 
}
{ Tsites_to_restrain;
   sites_to_restrain   _cr aA _array;
      Asite_to_restrain;
}
{ Tsites_geometry;
   Csites_geometry_distance nv NC__ nyd nr;
   Csites_geometry_angle nv NC__ nyd nr;
   Csites_geometry_dihedral_angle nv NC__ nyd nr;
}
{ Tf0_f1_f11_atom;
   Cf0 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
   Cf1 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
   Cf11 _cr prm_10 nyd _on_cr { n f0_f1_f11_atom ^ };
}
{ Tf0_f1_f11_atoms;
   f0_f1_f11_atoms _cr aA _array;
      Af0_f1_f11_atom _tem Tf0_f1_f11_atom;
}
{ Tsite;
   site_misc _cr aA;
      Asite_layer _cr fus;
      Ais_cation _cr fui;
      Anum_posns _cr ioi _on_cr { n ios_to_save ^ };
      Aclosest _cr iod _on_cr { n ios_to_save ^ } _fmt %-12.6f;
      Csite_inter nyd nc nr _on_cr { n val_errs ^ };
      Crand_xyz _cr prm_6 _on_cr { n vonc_2 site n site ^ };
}
{ Tstack;
   Csx _cr stack_xyz; 
   Csy _cr stack_xyz; 
   Csz _cr stack_xyz; 
   Agenerate_these _cr fus;
      Agenerate_name_append _cr fus;
}
{ Ttransition;
   Ause_layer _cr fus;
   Ct_height _on_cr { n transition ^ } pt lay;
   to_transitions _cr aA _array;
      At_to;
         Ct_n nr nc nyd _cr prm_10 _on_cr { n val_errs ^ };
         Cto_transition_prob nr _cr prm_10;
         Ct_a _cr lxyz pt lay;
         Ct_b _cr lxyz pt lay;
         Ct_z _cr lxyz pt lay;
}
{ Tgenerate_stack_sequences;
   Cnumber_of_sequences nr _def 1 _cr prm_10;
   Cnumber_of_stacks_per_sequence nr _def 0 _cr prm_10;
   Cn_avg nr _def 100 _cr prm_10;
   Clayers_tol nr _def 0.5 _cr prm_10;
   Cnum_unique_vx_vy nr nc nyd _cr prm_10 _on_cr { n val_errs ^ };
   match_transition_matrix_stats;
   Cuser_defined_starting_transition nr nc nyd _cr prm_10;
   transitions _cr aA _array;
      Atransition _tem Ttransition;
}
{ Tstr_layers;
   str_layer_recs _cr aA _array;
      Astr_layer;
   stack_sequences;
   stacks _array;
      Astack _tem Tstack;
}
{ Tin_str_format;
   in_str_format _cr aA;
}
{ Tpdf_convolute;
   Cconvolute_X_recal nyd nr _cr prm_10 _def 1;
   Cmin_X nyd _cr prm_10;
   Cmax_X nyd _cr prm_10;
}
{ Tpdf_for_pairs;
   Apdf_pairs_1 _cr fus;
   Apdf_pairs_2 _cr fus;
   Cpdf_gauss_fwhm _on_cr { M pdf_for_pairs };
   pdf_convolutes _cr aA _array _on_cr { M pdf_for_pairs } ;
      Cpdf_convolute _tem Tpdf_convolute _cr pdf_conv_pairs;
}
{ Tstr;
   atomic_inters _cr aA;
      str_xyzs;
      pdf _on_cr { Cant_Thread_Over_Xdds };
         Cpdf_ymin_on_ymax _cr prm_6 _def 0.001;
         Cpdf_zero;
         Cpdf_min_r_for_fwhm _cr prm_6 _def 1.5;
         Cpdf_single_unit_cell _cr prm_6 _def 0;
         Apdf_gauss_approx_i _cr fui _def 600;
         Apdf_info _cr fio _on_cr { n ios_to_save ^ };
         pdf_for_pairss _cr aA _array;
            pdf_for_pairs _tem Tpdf_for_pairs;
      grs_grid;
      Asiv_s1 _cr fud _def 1.5;
      Asiv_s2 _cr fud _def 2;
      grs_inters _cr aA _array;
         Cgrs_inter nyd NC__ nr fn { TR TRi };
      box_inters _cr aA _array;
         Cbox_inter nyd NC__ nr fn { TR TRi };
      atomic_interactions _cr aA _array;
         Catomic_interaction nr nmbu nyd _tem Tatomic_interaction fn { TR TRi };
      ai_anti_bumps _cr aA _array;
         Cai_anti_bump nv nr NC__ nmbu nyd _tem Tatomic_interaction;
      occ_merges _cr aA _array _on_cr { M str };
         occ_merge _on_cr { n pu1 ^ } _tem Tocc_merge;
      sites_distances _cr aA _array;
         Csites_distance _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
      sites_angles _cr aA _array;
         Csites_angle _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
      sites_geometrys _cr aA _array;
         Csites_geometry _tem { Tsites_to_restrain Tsites_geometry } nv NC__ nsv nyd nr nmbu
            _on_cr { n all_sites_geometrys ^ n locals ^ } local_ ;
      sites_flattens _cr aA _array;
         Csites_flatten _tem Tsites_to_restrain nv NC__ nyd nr nmbu local_ _on_cr { n locals ^ };
            Csites_flatten_tol _cr prm_6;
      str_layers _tem Tstr_layers _on_cr { M str Cant_Thread_Over_Xdds } _alias prm_bin;
         generate_stack_sequences _tem Tgenerate_stack_sequences _on_cr { n str_layers ^ };
            Asave_sequences _cr fus _on_cr { n fin5 generate_stack_sequences  n generate_stack_sequences ^ };
      Cgenerated_c nr nc _cr prm_6;
   str_1 _cr aA;
      misc_str _cr aA;
         view_structure _cr aA;
         normalize_FCs _cr aA _on_cr { M str };
         no_f11 _cr aA;
         Ado_cart _tem Tin_str_format _on_cr { n ios_to_save ^ };
         Ado_fract _tem Tin_str_format _on_cr { n ios_to_save ^ };
         Ap1_fractional_to_file _tem Tin_str_format _on_cr { n fin6 ^ };
         Ado_bond_lengths _on_cr { n ios_to_save ^ };
            clp _cr aA;
         Ccalculated_data_from nr nyd _on_cr { M str };
         Cstr_closest nyd nr _on_cr { n fin5 ^ };
      Cfourier_map _tem Tfourier_map nyd nr _on_cr { n fin6 ^ };
         Cfourier_map_formula _cr prm_6 nc nsv fn { Td Tfmap };
      hkl_planes _array _cr aA;
         Ahkl_plane;
      str_grid;
      atm_dets _array;
         atm_det;
            Cstr_atm_det_wt nr;
               str_element_atoms _cr nou _array;
            Cstr_atm_det_wt_fr nr;
      mag_sg _cr aA;
         str_mag _on_cr { M str };
            mag_sites_ndx _array _cr nou;
            Atest_mag _cr fud _on_cr { n str_mag ^ };
         str_mag_fms _array;
            str_mag_fm;
      f_AB _cr aA;
         f_A01 _cr f_AB_AB11 nsv;
         f_A11 _cr f_AB_AB11 nsv;
         f_B01 _cr f_AB_AB11 nsv;
         f_B11 _cr f_AB_AB11 nsv;
      protein _on_cr { g protein_As g protein_Bs M str }; 
         Cprotein_As;
         Cprotein_Bs;
      cif_bonds_angles;
   site_sgs _cr aA _array;
      site_sg;
   cds _cr aA _array;
      cd _array;
   Acurrent_atom _cr fua;
   site_recs _array _cr aA;
      Csite _tem { Tmin_max_r Tsite } _alias prm_bin;
         Cx _cr xyz_coord; 
         Cy _cr xyz_coord;   
         Cz _cr xyz_coord;   
         atom_recs _array _cr aA; 
            Aatom;
               Cocc; 
               Cbeq; 
               Cscale_occ _on_cr { M atom };
               f0_f1_f11 _cr aA;
                  Cf0_occ _on_cr { M atom } _fmt %-1.6f;
                  Cf1_occ _on_cr { M atom } _fmt %-1.6f;
                  Cf11_occ _on_cr { M atom } _fmt %-1.6f;
         site_mag _on_cr { M site n mag_sites_ndx site };
            Cmlx _cr mlxyz; 
            Cmly _cr mlxyz; 
            Cmlz _cr mlxyz; 
            Cmg _def -1.0e13; 
         Aadps _on_cr { d ^ chk d site adps };
            Cu11 _cr unn; 
            Cu22 _cr unn; 
            Cu33 _cr unn; 
            Cu12 _cr unn; 
            Cu13 _cr unn; 
            Cu23 _cr unn; 
}
{ Tstrs_ed;
   str_recs _array _cr aA;
      Cstr _cr scryst
         _on_cr { d ^ rbe }
         _tem { Tstr Tcomm_2 Tcomm_3 Thkl_lat TPhase_Powder_Single_crystal Tmin_max_r Trigids Tstr_sg Tscry1 }
         _alias { prm_bin phase hkl_p };
}
{ Tout_recs;
   out_rec _cr aA _on_cr { n last_out_rec ^ };
      Ceqn _cr prm_10 nc Nr nmbu nyd;
      Afmt _cr fus;
      Afmt_err _cr fus;
}
{ Tout_rec_ndx;
   out_rec_ndx _array _cr nou;
}
{ TPhase_Powder_Single_crystal;
   phase1 _cr aA;
      pk_sum_limits;
      Call_scale_pks fn Th_;
      xy_phase _cr xy_data;
      Cr_bragg _on_cr { n ios_to_save ^ } nc nr;
      pk_to_Iobs nsv;
      pk_to_Iobs_err nsv;
      I_after_scale_pks nsv;
      I_no_scale_pks nsv;
      Cdel_approx _cr prm_10 nr _def 0.25;
      phase_outs _array _cr aA;
         Aphase_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      phase_outs_Xs _array _cr aA;
         Aphase_out_X _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      atom_outs _array _cr aA;
         Aatom_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      mag_atom_outs _array _cr aA;
         Amag_atom_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      Aphase_name _cr fus;
      Cremove_phase _cr prm_6 _on_cr { n remove_phases ^ } nc nr;
      Cscale _def 1;
      phase_quant _cr aA _on_cr { M phase };
         Cbr_sp_r _cr prm_7 _on_cr
            {
               n smv ^
               g mixture_MAC
               g mixture_density_g_on_cm3
               n val_errs ^
            };
         Cphase_MAC _on_cr { n val_errs ^ } Nr nyd;
         Ccell_volume _on_cr { g weight_percent n val_errs ^ } Nr nyd;
         Ccell_mass _on_cr { g weight_percent n val_errs ^ } Nr nyd;
         Csmv _on_cr { g cell_mass g cell_volume  M phase } Nr nyd;
            Cweight_percent _on_cr { n val_errs ^ } Nr nyd;
               Ccorrected_weight_percent _on_cr { n val_errs ^ } Nr nyd;
               Cspiked_mwp _on_cr { n spiked_mwps ^ } nr Nr nyd;
            Csum_smvs_minus_this _on_cr { n val_errs ^ } Nr nyd;
      Cauto_scale _on_cr { n val_errs ^ E phase n ^ _ } nr nc;
}
{ Tx_p;
   scale_phase_Xs _array _cr xdd_scale_phase_Xs;
      Cscale_phase_X _cr xdd_scale_phase_X nyd fn Tx;
}
{ Tpeaks_buffer_based_on;
   Cpeak_buffer_based_on nr fn Th_ _cr prm_10;
      Cpeak_buffer_based_on_tol nr fn Th_ _cr prm_10;
}
{ TPhase_Powder;
   phase_p_1 _cr aA;
      arca_prms _cr nou _array;
      Clor_conv _on_cr { n arca_prms ^ } fn Th_;
      Cgauss_conv _on_cr { n arca_prms ^ } fn Th_;
      peaks_buffer_based_on _array _on_cr { n pks_buf ^ } _tem Tpeaks_buffer_based_on;
      Cth2_offset_eqn fn Th_ type Th_;
      Cpk_xo_eqn fn Th_ type Th_;
      Cnumerical_area _on_cr { n val_errs ^ } nr nc;
      amorphous_phase _cr aA;
      scale_phase_Xs _array _on_cr { 6 phase };
         Cscale_phase_X fn Tx;
      fte_convs _array _tem Tfte_convs _on_cr { n arca_prms ^ n hr_convs ^ } Flags Fcr _alias bfte_convs;
      WPPM_fte_convs _array _tem TWPPM_fte_convs _on_cr { n arca_prms ^ n hr_convs ^ Cant_Thread_Over_Xdds } Flags Fcr _alias { bfte_convs prm_bin };
   phase_p_2 _cr aA;
      Cpk_buffer_step _cr prm_6 nsv type Th_ fn Th_ nc _on_cr { j ^ =50*Peak_Calculation_Step };
      Cpeak_buffer_similar_tag _cr prm_10 nr nyd _on_cr { 6 phase };
      pks_buf _array;
         fp;
         pv;
         spvii;
         spv;
      Apk_type _def fp _cr fus;
}
{ Tiprms;
   Cdef_iprm nyd nr nc _cr prm_10 _def 1;
   iprms _cr aA _array;
      Ciprm _def 1000;
}
{ Tcreate_pks_name;
   create_pks_equal_I _cr aA;
}
{ Txprms;
   Clp_search_fom nr nmbu nyd;
   Ccreate_pks_name _tem Tcreate_pks_name;
   Acreate_pks_fn _cr fus;
   xprms _cr aA _array;
      Cxo;
}
{ Tdprms;
   dprms _cr aA _array;
      Cdprm;
}
{ Tlebail;
   Alebail _cr fud _on_cr { r lebail_action n on_cont1 ^ n pre_iter ^ } _def 1;
   lebail_action;
}
{ Tgen_fit_obj;
   xy_phase _cr xy_data;
   Cfit_obj_phase nr nyd _cr prm_6 _on_cr { n gen_fit_obj ^ };
   Cgen_dummy fn { Tx } fn_of ~fo_transform_X Flags oksd;
      Cmin_X _cr min_max_X fn { Tx };
      Cmax_X _cr min_max_X fn { Tx };
      Cfo_transform_X _cr prm_10 nyd fn Tx _on_cr { n gen_fit_obj ^ };
}
{ Tepw_corr;
   Ccorrected nyd Nr _cr prm_10;
}
{ Tx_ps;
   xdd_com1 _cr aA  _on_cr { g garca };
      Cd_spacing_to_energy_in_eV_for_f1_f11 _cr prm_10 nr fn Th_;
      phase_ndx _cr nou _array;
      Aneutron _cr aA;
      fit_objs _cr nou _array;
      Cgarca _cr prm_6 type Th_ fn Th_ nc _on_cr { j ^ =Peak_Calculation_Step };
      xdd_outs _array _cr aA;
         Axdd_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      pre_rwp _cr nou _array _on_cr { M xdd };
      Cdegree_of_crystallinity _on_cr { n val_errs ^ } nr nc;
      Aout_Tji _on_cr { n fin6 ^ };
   xdd_scr_quant_comm _cr aA _on_cr { M xdd_recs };
      Csum_smvs Nr nyd;
         smvs_ndx _cr nou _array;
      Ccrystalline_area _on_cr { n val_errs ^ } Nr nyd;
      Camorphous_area _on_cr { n val_errs ^ } Nr nyd;
         Cmixture_MAC _on_cr { n val_errs ^ } Nr nyd;
         Cmixture_density_g_on_cm3 _on_cr { n val_errs ^ } Nr nyd;
         Cweight_percent_amorphous _on_cr { g wt_amor_orig n val_errs ^ } Nr nyd;
            spiked_mwps _cr nou _array;
            Cwt_amor_orig nyd Nr;
         el_stuff _cr aA;
            Aelemental_composition _on_cr { n ios_to_save ^ };
               elements _cr aA _array;
                  Aelement;
                     element_atm_dets _cr nou _array;
                     Cel_qpa nyd Nr _cr prm_10;
                     Cel_known_diff nyd Nr;
                     Cel_wtp nmbu Nr _on_cr { n val_errs ^ } nyd _tem Tepw_corr;
               elements_known _cr aA _array;
                  Aelement_known _cr element _on_cr { g sum_el_known_diff };
                     Cel_wtp_known nyd Nr;
               Csum_el_known_diff nyd Nr;
   xdd_com2 _cr aA;
      Cyobs_eqn nr fn { Tx };
      xy_ycalc _cr xy_data;
      Alaue_lam _cr fucd _on_cr { M xdd };
      xy_yobs;
         xobs _on_cr { n xy_yobs ^ };
         Asigmayobs _cr fucd _on_cr { d xy_yobs e M xdd };
         Ctof_t0 _cr prm_10 nr  _on_cr { n xy_yobs ^ };
            Ctof_t1 _cr prm_10 nr _def 1;
      Axdd_path_name;
         xye_fmt _cr aA;
         gsas_format _cr aA;
         fullprof_format _cr aA;
      Cchi2 nyd nr nc nsv fn { Ty Tx }
         _on_cr {
            M xdd
            n penalties ^
            n val_errs ^
         };
      xdd_sums _array _cr aA _on_cr { M xdd };
         Cxdd_sum nc nsv nyd nr ES_FOR_OUTPUT fn { Ty Tx } ;
         Cxdd_array nc nsv nyd nr ES_FOR_OUTPUT fn { Ty Tx } ;
   xdd_com3 _cr aA;
      Cweighting nyd nsv nc nr fn { Ty Tx } _def -9999;
      Cyobs_to_xo_posn_yobs _on_cr { d xdd_path_name gui_reload n on_first_ycalc ^ } fn { Tx Th_ };
      Crebin_with_dx_of _cr prm_6 _on_cr { d xdd_path_name gui_reload } fn { Tx } _tem Trebin_start_x_at;
      Crebin_tollerance_in_Y _cr prm_6 _on_cr { d xdd_path_name gui_reload };
         Crebin_min_merge _cr prm_6 _def 10;
      Cmax_yobs nr nyd;
      Cmin_yobs nr nyd;
      sf_X;
         Cstart_X nr nyd _cr prm_6;
         Cfinish_X nr nyd _cr prm_6;
      Cextra_X_left _cr prm_6 _def 0.5;
      Cextra_X_right _cr prm_6 _def 0.5;
      Asmooth _on_cr { d xdd_path_name gui_reload };
      excls _array;
         Aexcl_x12 _cr fud;
   Cbkg nc nyd nsv _on_cr { n fit_objs ^ M xdd };
      Cforce_chubychev_positive _cr prm_6 nmbu _def 0;
      xy_bkg _cr xy_data _on_cr { M xdd };
      bkg_recs _array _cr aA;
         Cbkg_rec;
}
{ Ttags;
   tags _cr aA _array;
      Atag _cr fua _on_cr { n tags_all ^ };
   tags_2 _cr aA _array;
      Atag_2 _cr fua _on_cr { n tags_all_2 ^ };
}
{ Tcomm_2;
   comm_2 _cr aA;
      lam search_up _on_cr { U pk_to_Lam };
         Aymin_on_ymax _cr fud _def 0.001; 
         Ano_th_dep _cr fui; 
         lam_recs _array _cr aA; 
            lam_rec;
               lam_rec_prms _cr aA; 
                  Clo _cr lam_prm pt ~pk fn Th_ Flags Ffsti; 
                  Cla _cr conv_prm pt ~pk fn Th_ Flags Ffsti; 
                  Clh _cr lam_prm _on_cr { 6 lam_rec } pt ~pk fn Th_ Flags Ffsti;
                  Clg _cr lam_prm _on_cr { 6 lam_rec } pt ~pk fn Th_ Flags Ffsti;
               lo_ref _cr aA _on_cr { n lam ^ };
         Cpk_to_Lam nr search_up;
         Clam_for_Bragg_ang _on_cr { n val_errs ^ d lam lfd  } nr nc;
      scale_pks _cr aA _array;
         Cscale_pks_prm _cr prm_10 nyd nsv fn Th_;
}
{ Tcomm_3;
   comm_3 _cr aA _on_cr { take_locals_up_ };
      prms_10 _array;
         Cprm_10 nyd pre_on_l;
      pen_comm _cr aA _array;
         Cpenalty nyd nr _on_cr { n val_errs ^ n penalties ^ };
      g_outs _array _cr aA;
         Ag_out _tem Tout_rec_ndx _on_cr { n all_outs ^ n last_out ^ };
      out_recs _array _tem Tout_recs _cr aA;
      fns_10 _array _cr aA;
         Cfn_10 nyd _array;
            fn_10_args _cr aA _array;
               Cfn_10_arg nyd;
      locals _array _cr nou _on_cr { n all_locals ^ };
      locals_owns _array _cr aA;
         Cloc_10 nyd pre_on_l _cr prm_10 local_ _on_cr { n locals ^ };
      user_ys _array _cr aA;
         Cuser_y nc nv nmbu nyd nsv fn Tx _tem Tuser_y Flags ansv;
}
{ Tscrysts;
   xdd_recs _array _on_cr { n xdds_pre_calc ^ };
      Cxdd _cr xdd_scryst _tem { Tx_ps Tcomm_2 Tcomm_3 Tfit_stats Tmin_max_r Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias { prm_bin single_crystal }
         _on_cr {
            j x_calculation_step 1 n xdd_fit_ndx _ d xdd_path_name gui_reload
         };
         quant_strs_ndx _array _cr nou _on_cr { g elemental_composition };
         str_recs _array _cr aA;
            Cstr _cr scryst
               _on_cr {
                  n fit_objs ^
                  n phase_ndx ^
                  n fin4 ^
               }
               _tem { Tstr Tcomm_2 Tcomm_3 Thkl_lat TPhase_Powder_Single_crystal Tmin_max_r Trigids Tstr_sg Tscry1 Ttags Tf0_f1_f11_atoms }
               _alias { prm_bin phase hkl_p fo };
}
{ Tscry1;
   scry1 _cr aA;
      Aion_err_toll _def 0 _cr fud;
      Akeep_N_I_values _cr fui;
      pk_to_xi nsv _cr scpk_to_xi type { Ty };
      pk_to_yobs nsv _cr scpk_to_yobs type { Ty };
      pk_to_ycalc nsv _cr scpk_to_ycalc type { Ty };
      pk_to_sigmayobs nsv _cr scpk_to_sigmayobs type { Ty };
      pk_to_Mobs nsv;
      pk_to_Laue_Lam nsv;
      CFlack _on_cr { M str };
}
{ Thkli;
   AI_parameter_names_have_hkl _cr fus;
   Asp_grp_char _cr hkli_sp_grp_char;
      str_sg _on_cr { d ^ do };
      sg_set _on_cr { d ^ do };
   ds_for_out _cr aA _array;
      Ad_for_out _cr iod _on_cr { n val_errs ^ } _fmt %-12.6f;
   th2s_for_out _cr aA _array;
      Ath2_for_out _cr iod _on_cr { n val_errs ^ } _fmt %-12.5f;
}
{ Tuser_y_num_hats;
   Cuser_y_num_hats _cr prm_10 nr nyd _def 1;
}
{ Trebin_start_x_at;
   Crebin_start_x_at _cr prm_6;
}
{ Tuser_y_exp_conv;
   Cuser_y_exp_limit _cr prm_10 _on_cr { P n ^ _  };
}
{ Tuser_y;
   Auser_y_file;
      xye_fmt _cr aA;
      xy_yobs;
         xobs _on_cr { n xy_yobs ^ };
         Asigmayobs _cr fucd _on_cr { d xy_yobs e };
         Crebin_with_dx_of _cr prm_6 fn { Tx } _tem Trebin_start_x_at;
         Crebin_tollerance_in_Y _cr prm_6;
            Crebin_min_merge _cr prm_6 _def 10;
   user_y_convs _array _cr aA _on_cr { M user_y };
      Cuser_y_hat _tem Tuser_y_num_hats nyd;
      Cuser_y_exp_conv_const _tem Tuser_y_exp_conv nyd;
      Cuser_y_gauss_fwhm nyd;
      Cuser_y_lor_fwhm nyd;
}
{ Tdstrs;
   str_recs _array _cr aA;
      Cstr _on_cr
         {
            n fit_objs ^
            n phase_ndx ^
         }
         _tem { Tstr Thkl_lat TPhase_Powder_Single_crystal TPhase_Powder Tcomm_1 Tcomm_2 Tcomm_3 Tmin_max_r Tstr_sg Ttags Trigids Tf0_f1_f11_atoms } _alias { prm_bin phase hkl_p fo };
}
{ Tpdf_num_hats;
   Cnum_hats _cr prm_10 nr nyd _def 1;
}
{ Tpdf_generate;
   Cdr _cr prm_10 nr nyd _def 0.01;
   Cr_max _cr prm_10 nr nyd _def 50;
   Cgr_sst_file _cr sprm nr nyd nc mhe;
   Cgr_to_fq _cr prm_10 nr nyd;
   Cx_axis_is_Th2 _cr prm_10 nr nyd _def 0;
   Chat _cr prm_10 nr nyd _tem Tpdf_num_hats;
}
{ Txdds;
   xdd_recs _array _on_cr { n xdds_pre_calc ^ };
      Cxdd nr nyd nc _tem { Tx_ps Tx_p Tcomm_1 Tcomm_2 Tcomm_3 Tfit_stats Tmin_max_r Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias prm_bin
         _on_cr {
            n xdd_fit_ndx ^
         };
         xdd_1 _cr aA;
            Arange _cr fui _def 1;
            Cradius_p _cr prm_6 search_up _on_cr { j ^ 217.5 };
            Cradius_s _cr prm_6 search_up _on_cr { j ^ 217.5 };
            remove_phases _array _on_cr { n on_cont2 ^ g do_errors };
            Cgui_add_bkg _cr prm_6 nr nyd _on_cr { M xdd } _def 1;
            Apdf_data _cr aA _on_cr { M xdd };
            pdf_generate _tem Tpdf_generate _on_cr { n fin6 ^ };
         gen_fit_objs _array _cr aA _on_cr { M xdd };
            Cgen_fit_obj _on_cr { n fit_objs ^ } _tem { Tgen_fit_obj Tcomm_3 } _alias fo;
         xis _array _cr aA;
            Cxi _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
               _tem { TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Txprms Tiprms Tlebail Ttags } _alias { prm_bin phase fo };
         dis _array _cr aA;
            Cdi _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
               _tem { TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Tdprms Tiprms Tlebail Ttags } _alias { prm_bin phase fo };
         hklis _array _cr aA;
            Chkli _on_cr { n fit_objs ^ n phase_ndx ^ g pk_buffer_step }
               _tem { Thkli TPhase_Powder TPhase_Powder_Single_crystal Tcomm_1 Tcomm_2 Tcomm_3 Thkl_lat Tiprms Tlebail Ttags } _alias { prm_bin phase hkl_p fo };
         str_recs _array _cr aA;
            Cstr _on_cr
               {
                  n fit_objs ^
                  n phase_ndx ^
                  n fin4 ^
                  g pk_buffer_step
               }
               _tem { Tstr Thkl_lat TPhase_Powder_Single_crystal TPhase_Powder Tcomm_1 Tcomm_2 Tcomm_3 Tmin_max_r Tstr_sg Ttags Trigids Tf0_f1_f11_atoms } _alias { prm_bin phase hkl_p fo };
         dstrs _cr aA _tem Tdstrs;
         quant_strs_ndx _array _cr nou;
}
{ Tout_prm_vals;
   Aout_prm_vals_filter _cr fus;
   Aout_prm_vals_dependents_filter _cr fus;
}
{ Tf_atom_type;
   Cf_atom_quantity _cr prm_6;
   Af0 _cr fud;
}
{ Tscale_Aij;
   Cscale_Aij _cr prm_6;
   AAij _cr fud nsv;
}
{ Tfourier_map;
   Cextend_calculated_sphere_to _cr prm_6;
   Cmin_grid_spacing _cr prm_6 _def 0.3;
   Aout_str_dets _cr fus;
   Aout_Fc _cr fus;
   Ccorrect_for_atomic_scattering_factors _cr prm_6 _def 1;
   Cuse_E_values _cr prm_6 _def 1;
   Cout_merged_only _cr prm_6 _def 0;
   f_atom_types _array;
      Af_atom_type _tem Tf_atom_type;
   Apk_to_Fobs nsv _cr fud type { Tfmap };
   Apk_to_Fcalc nsv _cr fud type { Tfmap };
}
{ Tcf_hkl_file;
   cf_merged _cr aA;
}
{ Tatp;
   Cobey_symm _cr prm_10 _def 0;
}
{ Tactivate;
   Cactivate _cr prm_6 _def 1;
}
{ Txyzo;
   Cx _cr prm_10;
   Cy _cr prm_10;
   Cz _cr prm_10;
   Cor_occ _cr prm_10;
}
{ Tpick_atoms;
   Comit_fwhm _cr prm_10 _def 1.7;
   Cinsert_fwhm _cr prm_10 _def 1.7;
   Cpick_fwhm _cr prm_10 _def 1.7;
   Cchoose_from _cr prm_6 _on_cr { M pick_atoms };
   Cchoose_to _cr prm_6 _on_cr { M pick_atoms };
   Cchoose_randomly _cr prm_6 _on_cr { M pick_atoms };
   Comit _cr prm_10 _on_cr { M pick_atoms } _def 1;
   origin_omits _cr aA _array _on_cr { M pick_atoms };
      origin_omit _cr aA _tem Txyzo _on_cr { g x g y g z g or_occ };
   Cinsert _cr prm_10 _on_cr { M pick_atoms g omit };
   Cinsert_ats _cr prm_10 _def 1 _array _on_cr { M pick_atoms g omit g x g y g z g or_occ };
      insert_at _cr aA _tem Txyzo;
}
{ Tatp_ymm_err;
   Catp_ok_at _cr prm_6 _def 0;
   Catp_non_weak_symm_err_to _cr prm_6 _def 1;
}
{ Tcharge_flipping;
   Acf_hkl_file _cr fus _tem Tcf_hkl_file _on_cr { M charge_flipping };
   CF2_pow _cr prm_10;
   Acf_in_A_matrix _cr fus _tem Tscale_Aij _on_cr { M charge_flipping };
   lat_prms_prms _cr aA _on_cr { g a g b g c g al g be g ga };
      Ca _cr prm_6;
      Cb _cr prm_6;
      Cc _cr prm_6;
      Cal _cr prm_6 _def 90;
      Cbe _cr prm_6 _def 90;
      Cga _cr prm_6 _def 90;
   more_phase_corrections_ndx _cr nou _array _on_cr { M charge_flipping };
   on_new_d_ndx _cr nou _array _on_cr { M charge_flipping };
   new_E_values_powder_ndx _cr nou _array _on_cr { M charge_flipping };
   control_prms _cr aA;
      Cmin_F_non_weak _cr prm_6 _def 0;
      Cmin_d _cr prm_6;
      Cdelete_observed_reflections _cr prm_6 fn { Td Tdinv };
      Cfraction_density_to_flip _cr prm_6 _def 0.75;
      Cbreak_cycle_if_true _cr prm_6;
      Cfraction_reflections_weak _cr prm_6 _def 0;
      Cfind_origin _def 1 _on_cr { M charge_flipping g shift };
         Ashift _cr fuci _on_cr { M charge_flipping } nsv;
         Cfind_origin_percent_ok _cr prm_6 _def 0.1;
      Ccorrect_for_temperature_effects _cr prm_6 _def 1;
      Cscale_F000 _cr prm_6;
   misc_cr _cr aA;
      Ccf_out_fc_file _cr sprm nr nyd nc mhe;
      Cfc_with_d_E _cr prm_10 _def 0;
      Ccf_plot_fit _cr prm_10 _def 0;
      atm_dis_dets;
      Cuser_threshold _cr prm_6;
      Cpick_atoms_when _cr prm_6 _on_cr { M charge_flipping };
      Cview_cloud _cr prm_6 _def 1;
      Ccf_cloud_add _cr prm_10 _def 0;
      hkl_planes _array _cr aA;
         Ahkl_plane;
      neutron _cr aA _on_cr { M charge_flipping };
      Cd_spacing_to_energy_in_eV_for_f1_f11 _cr prm_10 nr fn Th_;
      atm_dets _array;
         atm_det;
      Ccf_plot_histo _cr prm_6;
      Ccf_set_phases _on_cr { M charge_flipping };
   phase_perturbations _cr aA;
      Aset_initial_phases_to _cr fus;
         use_Fc _cr aA;
      Crandomize_initial_phases_by _cr prm_6 _on_cr { M charge_flipping };
      atp_weak _array  _cr aA;
         Cadd_to_phases_of_weak_reflections _on_cr { n more_phase_corrections_ndx ^ }  _tem { Tatp Tactivate };
      atp_non_weak _array _cr aA;
         Cadd_to_phases_of_non_weak_reflections _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
      atp_weak_rand_plus_minuss _array _cr aA;
         Catp_weak_rand_plus_minus _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
      atp_non_weak_rand_plus_minuss _array _cr aA;
         Catp_non_weak_rand_plus_minus _on_cr { n more_phase_corrections_ndx ^ } _tem { Tatp Tactivate };
   intensity_perturbations _cr aA;
      Capply_exp_scale _cr prm_6 _def 1;
      Cexp_scale_b_start _cr prm_6 _def 0.3;
      Cscale_F _cr prm_6 _def 1 fn { Td Tdinv };
      Cscale_E _cr prm_6 _def 1 fn { Td Tdinv };
      Cscale_weak_reflections _def 1 _on_cr { M charge_flipping } fn { Td Tdinv } _tem { Tactivate Tatp };
      Cscale_non_weak_reflections _def 1 _on_cr { M charge_flipping } fn { Td Tdinv } _tem { Tactivate Tatp };
   ed_perturbations _cr aA;
      Cscale_flipped _cr prm_6 _def 0;
      Csymmetry_obey_0_to_1 _def 0 _on_cr { M charge_flipping g sym_err g find_origin };
      Cscale_density_below_threshold;
      Chistogram_match_scale_fwhm _on_cr { n on_new_d_ndx ^ };
         Chm_size_limit_in_fwhm _cr prm_6 _def 1;
         Chm_covalent_fwhm _cr prm_6 _def 1;
         Chm_weighting _cr prm_6 _def 1;
         Chm_weighting_2 _cr prm_6 _def 1;
         Chm_max_gauss _cr prm_6 _def 1;
         Chm_fraction_do _cr prm_6 _def 1;
         Chm_do_rest _cr prm_6 _def -1;
         Chm_scale_rest _cr prm_6 _def 1;
         Chm_plot _cr prm_6 _def 0;
      pick_atomss _array _on_cr { M charge_flipping };
         Apick_atoms _tem { Tpick_atoms Tactivate };
   flips _cr aA;
      Cflip_equation _tem { Tactivate };
      Cflip_regime_2 _tem { Tactivate };
      Cflip_regime_3 _tem { Tactivate };
      Cflip_regime_4 _tem { Tactivate };
      Cflip_neutron _def 0.4 _tem { Tactivate };
   tangent_formula _on_cr { n on_new_d_ndx ^ M charge_flipping n new_E_values_powder_ndx ^ };
      Ctangent_scale_difference_by _cr prm_6 _def 1;
      Ctangent_num_h_process _cr prm_6 _def -1;
      Ctangent_num_h_read _cr prm_6;
      Ctangent_num_k_read _cr prm_6;
      Ctangent_num_h_keep _cr prm_6;
      Ctangent_max_triplets_per_h _cr prm_6 _def 30;
      Ctangent_min_triplets_per_h _cr prm_6 _def 1;
      Ctangent_tiny _cr prm_6 _def 0.01;
      Ctangent_max_al_sum_allowed _cr prm_6 _def 2;
      Ctangent_include _cr prm_6 _def 0;
   updated_prms _cr aA;
      Abeen_there_i _cr fud nsv _def 0;
      Abeen_there_0 _cr fud nsv _def 0;
      Citers_since_last_best _cr prm_6 nc nsv;
      Ccycles_since_last_best _cr prm_6 nc nsv;
      Cnum_observed_reflections_above_d_min _cr prm_6 nc nsv;
      Cphase_difference _cr prm_6 nc nsv;
      Cinitial_phase _cr prm_6 nc nsv;
      Ae _cr fud nsv;
      Aei _cr fud nsv;
      AF2 _cr fud nsv;
      Cmin_density _cr prm_6 nc nsv;
      Cmax_density _cr prm_6 nc nsv;
      Cthreshold nsv _cr prm_6 nc;
      Adensity _cr fud nsv type { Tden };
      Ad_squared_inverse _cr fud nsv type { Tdinv };
      Calpha_sum _cr prm_6 nc nsv _on_cr { M charge_flipping };
      CF000 _cr prm_6 nc nsv;
      Csym_err _cr prm_6 nc nsv _on_cr { M charge_flipping };
}
{ Tglobal_sg;
   hkls_save;
   site_sg_save;
   site_non_refine_save;
   str_m4_d2_inv_fast_exp_hkl;
}
{ Tkernel _tem Tkernel;
   stuff_to_keep _cr aA;
      load_xdd_type_data _cr aA;
         Aload_dat;
         Aload_xdd;
         Aload_sst;
         Aload_cpi;
         Aload_xy;
         Aload_scr;
         Aload_hkl;
         Aload_hkl_lam;
         Aload_uxd;
         Aload_xye;
         Aload_vct;
         Aload_gsas;
         Aload_fullprof;
      macros _on_cr { j ^ topas.inc };
      Acalc_for_index _cr fui _def 17; 
      Acalc_for_cf _cr fui _def 11; 
      Acalc_for_non _cr fui _def 3; 
      Anum_runs _cr fui _def 1;
      Aprocess_marker _cr fui;
      Acloud_run_number _cr fui _def -1;
      Asuspend_writing_to_log_file _cr fui _def 1;
      nsv_stuff _cr aA;
         Axdd_x _cr fud_nsv nsv type { Tx };
         Apk_to_xi _cr fud_nsv nsv type { Ty };
         Apk_to_yobs _cr fud_nsv nsv type { Ty };
         Apk_to_sigmayobs _cr fud_nsv nsv type { Ty };
         Apk_to_ycalc _cr fud_nsv nsv type { Ty };
      hkl_pk_to _cr aA;
         Apk_to_Th _cr fud nsv type Th_;
         Apk_to_Xo _cr fud nsv type Th_;
         Apk_to_D _cr fud nsv type { Th_ Td };
         Apk_to_H _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
         Apk_to_K _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
         Apk_to_L _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
         Apk_to_M _cr fud nsv type Th_ Flags Individual_Peak_Shapes;
   delete_froms _array;
      riet_app_3 _on_cr { n in_deriv ^ };
         timings;
            Apks_deriv _cr timing      _def "Peak buffer derivatives";
            Anormal_sol _cr timing     _def "Solution to the normal equations";
            Atime_use_ex _cr timing    _def "use_extrapolation";
            Atime_line_min _cr timing  _def "line_min";
            Atime_AYd _cr timing       _def "A and Y matrix dot products and derivatives";
            Atime_pend _cr timing      _def "Penalty derivatives";
            Atime_ycd _cr timing       _def "Ycalc derivatives";
            Atime_yc _cr timing        _def "Ycalc calculation and Penalties";
            Atime_pens _cr timing      _def "Penalties";
            Atime_aydot _cr timing     _def "A and Y matrix dot products";
         fit_0 _cr aA;
            post_iter _cr nou _array _on_cr { M riet_app_3 };
            on_first_ycalc _cr nou _array _on_cr { M riet_app_3 };
            Afft_max_order _cr fui;
            gui_ref_reset _cr nou _array _on_cr { M riet_app_3 };
            gui_ref_update _cr nou _array _on_cr { M riet_app_3 };
            kgui_texts _cr aA _array;
               kgui_text;
         fit_1 _cr aA;
            fin4 _cr nou _array;
            fin5 _cr nou _array _on_cr { M riet_app_3 };
            fin6 _cr nou _array _on_ex { W ^ fin6 W all_outs fin6 };
            Afin5_flags _cr fui;
            on_cont0 _cr nou _array _on_cr { M riet_app_3 };
            on_cont1 _cr nou _array _on_cr { M riet_app_3 };
            on_cont11 _cr nou _array _on_cr { M riet_app_3 };
            on_cont2 _cr nou _array _on_cr { M riet_app_3 };
         fit_6 _cr aA;
            all_sites_geometrys _cr nou _array;
            Aload_raw_single;
            Aload_brml_single;
            Achk_name_same _cr fui;
         fit_2 _cr aA;
            use_old_disp _cr aA;
            tags_all _cr nou _array;
            tags_all_2 _cr nou _array;
            do_errors _cr aA;
            out_A_matrixs _cr aA _array;
               Aout_A_matrix _on_cr { n fin5 ^ };
                  AA_matrix_prm_filter _cr fus;
            AA_matrix _cr ac_matrix _on_cr { n ios_to_save ^ };
            AA_matrix_normalized _cr ac_matrix_norm _on_cr { n ios_to_save ^ };
            AC_matrix _cr ac_matrix  _on_cr { n ios_to_save ^ };
            AC_matrix_normalized _cr ac_matrix_norm _on_cr { n ios_to_save ^ };
            Apercent_zeros_before_sparse_A _cr fud _def 60;
            Averbose _cr fui _def 1;
            process_times _cr aA;
            continue_ref _cr aA;
            no_normal_eqs _cr aA;
            Aconserve_memory _cr fui;
            Aend_ref _cr fui;
               Aend_ref_mess _cr fus;
            Abreak_process _cr fui;
            lnched _cr aA;
            mag_j0_j2s _array;
               mag_j0_j2;
         Cnon_fit _tem { Tcomm_1 Tcomm_2 Tcomm_3 Tfit_stats Tref_and_non_ref_prms Ttags Tf0_f1_f11_atoms } _alias prm_bin;
            Ccharge_flipping
               _tem { Tcharge_flipping Tcomm_3 Tfourier_map Tstr_sg Tcomm_2 }
               _on_cr { j sp_grp_char 1 };
            index _tem Ttags;
               Cindex_x0 _cr prm_6;
               Cindex_max_th2_error _cr prm_6 _def 0.05;
               Cindex_max_zero_error _cr prm_6 _def 0.1;
               Cindex_th2_resolution _cr prm_6 _def 0;
               Cindex_max_Nc_on_No _cr prm_6 _def 5;
               Cindex_min_lp _cr prm_6 _def 2;
               Cindex_lam _cr prm_6 _def 1.540596;
               Cindex_max_lp _cr prm_6 _def 15;
               Aindex_max_number_of_solutions _cr fui _def 3000;
               index_zero_error _cr aA;
               index_ds _cr aA _array;
                  Cindex_d nr;
                     Cindex_I _cr prm_6 _def 1;
               try_sgss _cr aA _array;
                  Atry_space_groups _tem Ttry_space_groups;
               ndx_dets _array _cr aA;
                  ndx_det _cr aA;
                     Andx_sg _cr fus;
                     Cndx_status _cr prm_6;
                     Cndx_uni  _cr prm_6;
                     Cndx_ze   _cr prm_6;
                     Cndx_alp  _cr prm_6;
                     Cndx_blp  _cr prm_6;
                     Cndx_clp  _cr prm_6;
                     Cndx_allp _cr prm_6;
                     Cndx_belp _cr prm_6;
                     Cndx_galp _cr prm_6;
            fit_3 _cr aA;
               Aquick_refine _cr fud;
                  Cquick_refine_remove _cr prm_6;
                  Cquick_refine_No _cr prm_6;
                  Cquick_refine_cycle_iter_start _cr prm_6 _def 2;
               filestuff _cr aA;
                  Cout_file _cr sprm nr nyd nc mhe;
                  Ainp_in_tag _cr fui;
                  Ainp_path _cr fus;
                  Ainp_path_name _cr fus;
                  Afile_for_sols _cr fus _on_cr { M riet_app_3 };
                  Aerror_out _tem Tout_rec_ndx _on_cr { n last_out ^ };
               use_LU _cr aA;
               line_min _cr aA;
               extrap _cr aA;
               system_before_save_OUTs _cr aA _array _on_cr { n riet_app_3 ^ };
                  Asystem_before_save_OUT _cr fus;
               system_after_save_OUTs _cr aA _array _on_cr { n riet_app_3 ^ };
                  Asystem_after_save_OUT _cr fus;
               Citers _cr prm_10 nyd nr nc _def 500000;
               Cnum_cycles _cr prm_10 nyd nr nc _def -1;
               Cmarquardt_mul nr nyd _cr prm_10 _on_cr { M non_fit };
               Cdummy_prm _cr prm_10 nyd nc nr;
               approximate_A _cr aA;
                  CA_matrix_memory_allowed_in_Mbytes _cr prm_6;
                  CA_matrix_elements_tollerance _cr prm_6;
               rnd_errs _cr aA;
                  Crandomize_on_errors_buffer _cr prm_6 _def 200;
                  Callowed_visits _cr prm_6 _def 5;
                  Crandomize_on_errors_do _cr prm_6 _def 1;
                  Ct_scaler_1 _cr prm_6 _def 1;
                  Ct_scaler_2 _cr prm_6 _def 2.0;
                  Ct_scaler_3 _cr prm_6 _def 1.02;
                  Ct_scaler_4 _cr prm_6 nc _def .9;
                  Ct_scaler_5 _cr prm_6 _def .98;
                  Ct_scaler_6 _cr prm_6 nc _def 1;
               only_pen _cr aA _on_cr { M non_fit };
               vonc_2 _cr nou _array _on_ex { W ^ vonc_2 } _on_cr { M non_fit };
               rand_on_avg _cr nou _array _on_ex { W ^ rand_on_avg };
               out_refinement_stats _cr aA _on_cr { M non_fit };
               Arefine_ls_shift_on_su_max _cr fud _def -1 nc _on_cr { M non_fit };
               fit_3_1 _cr aA;
                  pre_calc_derivs _cr nou _array _on_cr { M non_fit };
                  on_converged _cr nou _array _on_cr { M non_fit };
                  pre_iter _cr nou _array _on_cr { M non_fit };
                  post_iter_2 _cr nou _array _on_cr { M non_fit };
                  pu1 _cr nou _array _on_cr { M non_fit };
            fit_4 _cr aA;
               Aout_rwp _cr fus;
               Aout_chi2 _cr fus;
               Achi2_ctr _cr fucd;
               Arwp_ctr _cr fucd;
               Crwp_tolerance _cr prm_6 _def 0.001;
               anneal;
                  Ctemperature _cr prm_6 nc _def 1;
                  CTi nr nc;
                  tempers _cr aA _array;
                     Ctemper nyd nr _cr prm_10;
                        use_best_values _cr aA;
                        stop_rewind _cr aA;
                        save_values _cr aA;
                        next_temp _cr aA;
                        not_start_of_anneal _cr aA;
                        Aon_best_goto _cr fus;
                        on_best_rewind _cr aA;
               global_best_rwp _cr brefinement;
               Cper_pen _cr prm_6 _def 1.0;
                  Apen_Ai _cr fud nsv;
                  Apen_Aii _cr fud nsv;
                  Apen_Pi _cr fud nsv;
                  Apen_Pii  _cr fud nsv;
                  Cpen_weight _cr prm_10 nr nc nsv nyd _on_cr { M non_fit };
               all_outs _cr nou _array;
               all_locals _cr nou _array;
               Alast_out _cr fub;
               Alast_out_rec _cr fub;
            fit_5 _cr aA;
               strs_ed _tem { Tstrs_ed } _cr aA;
               phase_pks_buff_reuse;
               global_sgs _cr aA _array;
                  global_sg _tem Tglobal_sg;
               rgds_ed _tem { Trigids } _cr aA;
            prm_stuff _cr aA;
               prm_6s _array _cr aA;
                  Cprm_6 _cr prm_6 nyd; 
               Aredo_prms _def 1;
               Aredo_ycalc _cr fui _def 1;
               ios_to_save _cr nou _array;
               val_errs _cr nou _array;
               no_LIMIT_warnings _cr aA;
               out_prm_vals_per_iteration_ _cr aA _array;
                  Aout_prm_vals_per_iteration _cr out_prm_vals _tem Tout_prm_vals _on_cr { n pre_iter ^ n on_converged ^ };
               out_prm_vals_on_convergence_ _cr aA _array;
                  Aout_prm_vals_on_convergence _cr out_prm_vals _tem Tout_prm_vals _on_cr { n on_converged ^ };
               Cbootstrap_errors nr _def 200 _on_cr { n on_converged ^ n fin5 ^ g continue_ref };
                  Cfraction_of_yobs_to_resample _def 0.37 _cr prm_6;
                  determine_values_from_samples _cr aA;
                  resample_from_current_ycalc _cr aA;
               out_dependences_fors _cr aA _array;
                  out_dependences_for _on_cr { n fin5 ^ };
               out_dependencess _cr aA _array;
                  out_dependences _on_cr { n fin5 ^ };
            penalties _cr nou _array;
            min_max_r _cr aA;
               Amin_r _cr fud _def 0.0;
               Amax_r _cr fud  _def 3.2;
               Andxs_marq_move _on_cr { d ^ movin n fin7 ^ };
            xdd_fit_ndx _cr nou _array;
            xdds_pre_calc _cr nou _array _on_cr { 4 non_fit };
            xdds_post_calc _cr nou _array _on_cr { 4 non_fit };
            xdds_misc _cr aA;
               Cradius_p _cr prm_6 _on_cr { j ^ 173 };
               Cradius_s _cr prm_6 _on_cr { j ^ 173 };
               ft_stuff _cr aA;
                  Apk_to_FT_K _cr fud nsv type { TFT_K };
                  Apk_to_WPPM_L _cr fud nsv type { TWPPM_L };
                  AWPPM_dL _cr fud nsv;
                  AWPPM_Ln_k _cr fud nsv Flags ansv;
                  Aft_0 _cr fud nsv Flags ansv;
               Aphase_ycalc _cr fud nsv;
               Cto_cycle _cr prm_6 nc nsv;
               Cto_iter _cr prm_6 nc nsv;
               Cto_cycle_iter _cr prm_6 nc nsv;
               Asite_radius _cr fud nsv type { TR };
               Apk_to_Ri _cr fud nsv type { TRi };
               Aqr_n_small _cr fud nsv;
               Aqr_removed _cr fud nsv;
               Anumber_independent_parameters _cr fud nc;
            scrysts _tem Tscrysts _alias prm_bin _cr aA;
            xdds _tem Txdds _alias prm_bin _cr aA;
}
end_templates

Personal Tools