At the NCNR, we usually apply absorption corrections directly to diffraction data. Assuming one knows the neutron wavelength, approximate sample volume, mass and composition of the sample, (you really should know all of these,) the effects of absorption can be computed
- How much absorption do I have? You can plug the material composition, wavelength, thickness and density into the 'absorption and scattering' part of the BT-7 calculator. Incoherent scattering, like absorption, makes neutrons unavailable for diffraction, so sum all values in the "Scattering cross section" column to obtain a "Linear Attenuation Factor (LAF)" in units of cm-1. (Note that the thickness is not used in calculating the LAF using this calculator but is for the Neutron Transmission given under the outputted table.) Multiply this LAF by the sample radius in cm (common BT-1 can sizes: A: 0.3 cm, B: 0.46 cm, C: 0.54 cm, D: 0.62 cm, E: 0.78 cm). This provides a unit-less constant, "mu.R". When mu.R << 1, absorption is negligible. When mu.R <= 1, absorption will shift atomic displacement parameters ("temperature parameters") somewhat, but corrections are probably not needed. If mu.R > 1, an absorption correction is certainly needed, but a better choice is to do the experiment better: Use a smaller diameter can, or even better use an annular can, to reduce the absorption effects and increase the scattering intensities.
- Obtain Absorption Correction Factors Using the "Mu.R" value, one can look up absorption correction factors for the cylindrical geometry (A*). Table 5.3.5B in Volume II of the International Tables for X-Ray Crystallography (p. 295ff) tabulates A* for 0 <= mu.R <= 20, while Table 188.8.131.52 in Volume C of the International Tables for Crystallography (p. 523 in the 1995 ed.) tabulates A* for 0 <= mu.R <= 2.5. It is possible to compute absorption correction factors using the DAVE program, for both cylindrical and annual geometries (see, "Planning tools" -> "Self-shielding" in the menu, plot self-shielding factors and take the reciprocal). OR run the supplied python script and select the closest value to your "Mu.R".
- Fit the A* vs theta values to a Chebyshev polynomial Use the supplied Python fitting routine to extract the coefficients either through using the "Mu.R" selector or reading a file of A* values. Save the coefficients in your data directory with the name abs.corr [line 1: header, line 2: the number of Chebyshev terms, followed by the terms.) Rename .py and check your local pythonw location: absorption.py.txt
- Run gformat using the Chebyshev polynomial values To apply an absorption correction :
- Run proprep on the BT-1 file(s) to create .raw versions of the .bt1 files.:
proprep file1.bt1 file2.bt1 ...
- Run gformat on the .raw files, using the -a option to trigger the program to apply the absorption correction:
gformat -a file.raw
gformat -a -s file1.raw file2.raw ...