Table of Contents
Calculates the scattering & transmission for a given sample material and size over a given wavelength range.
Name | Direction | Type | Default | Description |
---|---|---|---|---|
WavelengthRange | Input | string | Mandatory | Wavelength range to calculate transmission for. |
ChemicalFormula | Input | string | Mandatory | Sample chemical formula |
DensityType | Input | string | Mass Density | Use of Mass density or Number density. Allowed values: [‘Mass Density’, ‘Number Density’] |
Density | Input | number | 0.1 | Mass density (g/cm^3) or Number density (atoms/Angstrom^3). Default=0.1 |
Thickness | Input | number | 0.1 | Sample thickness (cm). Default=0.1 |
OutputWorkspace | Output | MatrixWorkspace | Mandatory | Outputs the sample transmission over the wavelength range as a function of wavelength. |
Calculates the theoretical scattering & transmission for a given sample over a given wavelength range.
The sample chemical formula is input for the SetSampleMaterial algorithm to calculate the cross-sections. The sample mass density/number density & thickness is input to then calculate the percentage scattering & transmission.
A flat plate sample which is perpendicular to the beam is assumed.
Example - Running CalculateSampleTransmission.
ws = CalculateSampleTransmission(WavelengthRange='2.0, 0.1, 10.0',
ChemicalFormula='H2-O')
print('Transmission: {:.6f}, {:.6f}, {:.6f} ...'.format(*ws.readY(0)[:3]))
print('Scattering: {:.6f}, {:.6f}, {:.6f} ...'.format(*ws.readY(1)[:3]))
Output:
Transmission: 0.945063, 0.945051, 0.945040 ...
Scattering: 0.054697, 0.054697, 0.054697 ...
Example - Running CalculateSampleTransmission with a specified number density and thickness.
ws = CalculateSampleTransmission(WavelengthRange='2.0, 0.1, 10.0',
ChemicalFormula='H2-O',
DensityType='Number Density',
Density=0.2,
Thickness=0.58)
print('Transmission: {:.6f}, {:.6f}, {:.6f} ...'.format(*ws.readY(0)[:3]))
print('Scattering: {:.6f}, {:.6f}, {:.6f} ...'.format(*ws.readY(1)[:3]))
Output:
Transmission: 0.001450, 0.001448, 0.001446 ...
Scattering: 0.998506, 0.998506, 0.998506 ...
Categories: Algorithms | Sample
Python: CalculateSampleTransmission.py (last modified: 2017-07-13)