Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
c [2009/08/06 15:37]
clare
c [2009/08/27 12:12] (current)
clare
Line 1: Line 1:
 ====== c ====== ====== c ======
  
 +**[//​capillary_diameter_mm//​ E]...**
 +
 +**//​capillary_u_cm_inv//​ E**
 +
 +**//​capillary_parallel_beam//​** **%%|%% //​capillary_divergent_beam//​**
 +
 +Calculates an aberration for capillary samples. and convolutes it into phase peaks. //​capillary_diameter_mm//​ corresponds to the capillary diameter in mm and //​capillary_u_cm_inv//​ the linear absorption coefficient of the sample in units of cm<​sup>​-1</​sup>​. The //​capillary_diameter_mm//​ convolution corrects for peak shapes, intensities and 2Th shifts, see example CAPILLARY-SIMULATED.INP.
 +
 +Use of //​capillary_parallel_beam//​ results in a correction for a parallel primary beam.
 +
 +Use of //​capillary_divergent_beam//​ results in a correction for a divergent primary beam.
 +
 +Both //​capillary_parallel_beam//​ and //​capillary_divergent_beam//​ assume that the capillary is fully illuminated by the beam in the equitorial plane.
 +
 +**[//​cell_mass//​ !E] [//​cell_volume//​ !E] [//​weight_percent//​ !E]**
 +
 +**[****//​spiked_phase_measured_weight_percent//​** **!E] [//​corrected_weight_percent//​ !E]**
 +
 +//​cell_mass//,​ //​cell_volume//​ and //​weight_percent//​ correspond to  unit cell mass, volume and weight percent of the phase within the mixture.
 +
 +//​spiked_phase_measured_weight_percent//​ defines the weight percent of a spiked phase. Used by the xdd dependent keyword //​weight_percent_amorphous//​ to determine amorphous weight percent. Only one phase per xdd is allowed to contain the keyword //​spiked_phase_measured_weight_percent//​.
 +
 +//​corrected_weight_percent//​is the weight percent after considering amorphous content as determined by //​weight_percent_amorphous//​.
 +
 +The weight fraction w<​sub>​p</​sub>​ for phase "​p"​ is calculated as follows:
 +
 +| <​sub>​{{techref_files:​image156.gif?​76x70}}</​sub>​   | where   N<​sub>​p</​sub>​ = Number of phases Q<​sub>​p</​sub>​ = S<​sub>​p</​sub>​M<​sub>​p</​sub>​V<​sub>​p</​sub>/​B<​sub>​p</​sub>​ S<​sub>​p</​sub>​ = Rietveld scale factor for phase p. M<​sub>​p</​sub>​ = Unit cell mass for phase p. V<​sub>​p</​sub>​ = Unit cell volume for phase p. B<​sub>​p</​sub>​ = Brindley correction for phase p. |
 +
 +The Brindley correction is a function of //​brindley_spherical_r_cm//​ and the phase and mixture linear absorption coefficients;​ the latter two are in turn functions of //​phase_MAC//​ and //​mixture_MAC//​ respectively,​ or,
 +
 +B<​sub>​p</​sub>​ is function of :  (LAC<​sub>​phase</​sub>​-MAC<​sub>​mixture</​sub>​) //​brindley_spherical_r_cm//​
 +
 +where
 +
 +LAC<​sub>​phase</​sub>​       = linear absorption coefficient of phase p, packing density of 1.
 +
 +MAC<​sub>​mixture</​sub>​     = linear absorption coefficient of the mixture, packing density of 1.
 +
 +This makes B<​sub>​p</​sub>​ a function of the weight fractions w<​sub>​p</​sub>​ of all phases and thus w<​sub>​p</​sub>​ as written above cannot be solved analytically. Subsequently w<​sub>​p</​sub>​ is solved numerically through the use of iteration.
 +
 +**[//​chi2_convergence_criteria//​ !E]**
 +
 +Convergence is determined when the change in <​sub>​{{techref_files:​image002.gif?​20x23}}</​sub>​ is less than //​chi2_convergence_criteria//​ for three consecutive cycles and when all defined //​stop_when//​ parameter attributes evaluate to true. Example:
 +
 +chi2_convergence_criteria =  If(Cycle_Iter < 10, .001, .01);
 +
 +**[//​circles_conv//​ E]...**
 +
 +Defines //​e//<​sub>​m</​sub>​  in the convolution function:
 +
 +(1 - ½//​e//<​sub>​m</​sub>​ / //​e//​½<​sup>​½</​sup>​)          for //e// = 0 to //​e//<​sub>​m</​sub>​ 
 +
 +that is convoluted into phase peaks. //​e//<​sub>​m</​sub>​ can be greater than or less than zero. //​circles_conv//​ is used for example by the Simple_Axial_Model macro.
 +
 +**[//​cloud//​ $sites]...**
 +
 +**[//​cloud_population//​ !E]**
 +
 +**[//​cloud_save//​ $file]**
 +
 +**[//​cloud_save_xyzs//​ $file]**
 +
 +**[//​cloud_load_xyzs//​ $file]**
 +
 +**[//​cloud_load_xyzs_omit_rwps//​ !E]**
 +
 +**[//​cloud_formation_omit_rwps//​ !E]**
 +
 +**[//​cloud_try_accept//​ !E]**
 +
 +**[//​cloud_gauss_fwhm//​ !E]**
 +
 +**[//​cloud_extract_and_save_xyzs//​ $file]**
 +
 +**[//​cloud_number_to_extract//​ !E]**
 +
 +**[//​cloud_atomic_separation//​ !E]**
 +
 +//cloud// allows for the tracking of atoms defined in $sites in three dimensions. It can be useful for determining the average positions of heavy atoms or rigid bodies during refinement cycles. For example, a dummy atom, “site X1” say, can be placed at the center of a benzene ring and then tracked as follows:
 +
 +continue_after_convergence
 +
 +
 +
 +cloud “X1”
 +
 +cloud_population 100
 +
 +cloud_save SOME_FILE.CLD
 +
 +On termination of refinement the CLD file is saved; it can be viewed using the rigid body editor of the GUI; see examples AE14-12.INP for a cloud example. //​cloud_population//​ is the maximum number of population members. Each population member comprises the fractional coordinates of $sites and an associated Rwp value.
 +
 +//​cloud_save_xyzs//​ saves a cloud populations to file.
 +
 +//​cloud_load_xyzs//​ loads and reuses previously saved populations. //​cloud_load_xyzs_omit_rwps//​ can be used to exclude population membes whilst loading; it can be a function of Get(Cloud_Rwp) where Cloud_Rwp is the associated Rwp of a population member.
 +
 +//​cloud_formation_omit_rwps//​ can be used to limit population membes in the formation of CLD files; it can be a function of Get(Cloud_Rwp).
 +
 +//​cloud_try_accept//​ accepts population members if it evaluates to non-zero and if the best Rwp since the last acceptance is less than a present population member or if the number of members is less than //​cloud_population//​.  If the number of population members equals //​cloud_population//​ then the population member with the lowest Rwp is discarded. //​cloud_try_accept//​  is evaluated at the end of each refinement cycle; it default value is true. Here’s are some examples:
 +
 +cloud_try_accept = And(Cycle, Mod(Cycle, 50);
 +
 +cloud_try_accept = T == 10;
 +
 +//​cloud_gauss_fwhm//​ is the full width at half maximum of a three dimensional Gaussian that is used to fill the cloud.
 +
 +//​cloud_extract_and_save_xyzs//​ searches the three dimensional cloud for high densities and extracts xyz positions; these are then saved to $file. //​cloud_number_to_extract//​ defines the number of  positions to extract and //​cloud_atomic_separation//​ limits the atomic separation during the extraction. The actual number of positions extracted may be less than //​cloud_number_to_extract//​ depending on the cloud.
 +
 +** [//​conserve_memory//​]**
 +
 +Deletes temporary arrays used in intermediate calculations;​ memory savings of up to 70% can be expected on some problems with subsequent lengthening of execution times by up to 40%. When //​approximate_A//​ is used on dense matrices then //​conserve_memory//​ can reduce memory usage by up to 90%.
 +
 +**[//​continue_after_convergence//​]**
 +
 +Refinement is continued after convergence. Before continuing the following actions are performed:
 +
 +//​[[#​x000|val_on_continue]]//​ equations for independent parameters are evaluated
 +
 +//​[[#​k133|randomize_on_errors]]//​ process is performed
 +
 +//​[[#​k128|rand_xyz]]//​ processes are performed
 +
 +Also, when //​val_on_continue//​ is defined then the corresponding parameter is not randomized according to //​randomize_on_errors//​.
 +
 +**[//​convolution_step//​ #]**
 +
 +An integer defining the number of calculated data points per measured data point. It may be useful to increase this number when the measurement step is large. //​convolution_step//​ is set to 1 by default. Only when the measurement step is greater than about 0.03 degrees 2Th or when high precision is required is it necessary to increase //​convolution_step//​.

Personal Tools