FixedObject
- class nexus.FixedObject(factor=1 + 0j, matrix=array([[0. + 0.j, 0. + 0.j], [0. + 0.j, 0. + 0.j]]), id='')
Bases:
NxObject
Constructor for a
FixedObject
. AFixedObject
is an object in the beam path without any energy dependence.- Parameters:
scattering_factor (complex) – Electronic scattering factor of the object.
matrix (ndarray) – Fixed (detuning-independent) 2x2 complex object matrix. Corresponds to a layer/sample/object matrix type.
id (string) – User identifier.
- scattering_factor
Electronic scattering factor of the object.
- Type:
complex
- matrix
Fixed (detuning-independent) 2x2 complex object matrix. Corresponds to a layer/sample/object matrix type.
- Type:
ndarray
- id
User identifier.
- Type:
string
- ElectronicAmplitude(energy)
Returns the relative electronic amplitude behind the fixed object. Corresponds to the electronic scattering factor.
- Parameters:
energy (float) – no dependence
- Returns:
electronic scattering factor set during initialization
- Return type:
complex
- ElectronicAmplitudeMatrix(energy)
Electronic scattering matrix of the fixed object.
- Parameters:
energy (float) – Not used.
- Returns:
2x2 scattering matrix.
- Return type:
list
- ObjectMatrix(isotope, detuning, calc_transitions=True)
Returns the detuning-independent object matrix. Corresponds to a layer matrix type.
- Parameters:
isotope (MoessbauerIsotope) – Moessbauer isotope of the experiment
detuning (ndarray or list) – n-dimensional array with detuning values
- Returns:
n-dimensional array of 2x2 complex arrays. All entries are the same for a fixed object.
- Return type:
LayerMatrix2
Examples
Define a FixedObject
.
factor = 0.876-0.965j
mat = np.array([[0.5, 0.5j],
[-0.5j, 0.5]],
dtype=complex)
fixed_object = nx.FixedObject(factor, mat, "my object")
print(fixed_object)