CylinderAbsorption
From MantidProject
Contents |
Summary
Calculates bin-by-bin correction factors for attenuation due to absorption and scattering in a cylindrical sample.
Properties
| Order | Name | Direction | Type | Default | Description |
|---|---|---|---|---|---|
| 1 | InputWorkspace | Input | Workspace | Mandatory | The name of the input workspace. The input workspace must have X units of wavelength. |
| 2 | OutputWorkspace | Output | Workspace | Mandatory | The name to use for the output workspace. |
| 3 | AttenuationXSection | Input | double | Mandatory | The attenuation cross-section for the sample material in barns. |
| 4 | ScatteringXSection | Input | double | Mandatory | The scattering cross-section for the sample material in barns. |
| 5 | SampleNumberDensity | Input | double | Mandatory | The number density of the sample in .
|
| 6 | NumberOfWavelengthPoints | Input | integer | All points | The number of wavelength points for which the numerical integral is calculated |
| 7 | ExpMethod | Input | string | Normal | Method to use to calculate exponentials, normal or a fast approximation |
| 8 | EMode | Input | double | Elastic | The energy mode (Elastic, Direct or Indirect). |
| 9 | EFixed | Input | double | 0.0 | Value of fixed energy: EI (emode=Direct) or EF (emode=Indirect) (meV). Must be set for indirect instruments, either here or in the instrument definition. |
| 10 | CylinderSampleHeight | Input | double | Mandatory | The height of the cylindrical sample in centimetres. |
| 11 | CylinderSampleRadius | Input | double | Mandatory | The radius of the cylindrical sample in centimetres. |
| 12 | NumberOfSlices | Input | integer | 1 | The number of slices into which the cylinder is divided for the calculation. |
| 13 | NumberOfAnnuli | Input | integer | 1 | The number of annuli into which each slice is divided for the calculation. |
Description
This algorithm uses a numerical integration method to calculate attenuation factors resulting from absorption and single scattering in a cylindrical sample with the dimensions and material properties given. Factors are calculated for each spectrum (i.e. detector position) and wavelength point, as defined by the input workspace. The sample is divided up into a stack of slices, which are then divided into annuli (rings). These annuli are further divided (see Ref. [2], Appendix A) to give the full set of elements for which a calculation will be carried out. Thus the calculation speed depends linearly on the total number of bins in the workspace and on the number of slices. The dependence on the number of annuli is stronger, going as 3n(n + 1).
Path lengths through the sample are then calculated for the centre-point of each element and a numerical integration is carried out using these path lengths over the volume elements.
Restrictions on the input workspace
The input workspace must have units of wavelength. The instrument associated with the workspace must be fully defined because detector, source & sample position are needed.
References
The method used here is based upon work presented in the following two papers, although it does not yet fully implement all aspects discussed there (e.g. there's no multiple scattering and no concentric cylinders).
- I.A. Blech & B.L. Averbach, Multiple Scattering of Neutrons in Vanadium and Copper, Phys. Rev. 137 4A (1965) A1113.
- A.K. Soper & P.A. Egelstaff, Multiple Scattering and Attenuation of Neutrons in Concentric Cylinders, NIM 178 (1980) 415.
Source Code
Header CylinderAbsorption.h
Source CylinderAbsorption.cpp
.
