BasicSample

class nexus.BasicSample(*args, **kwargs)

Bases: NxObject

Constructor for BasicSample.

Added in version 2.0.0: This is a base class only, do not use it directly. Use the ForwardSample or GrazingSample instead.

Parameters:
  • layers (list) – List of Layer in order of beam propagation.

  • drive_detuning (list or ndarray) – Detuning values for a sample on a Moessbauer drive.

  • function_time (FunctionTime) – A FunctionTime implementation of the user to describe sample motion. Must return the phase factor \(\phi(t) = k x(t)\), where \(k\) is the photon wave vector along beam direction and \(x(t)\) the sample motion along the beam propagation direction.

  • id (string) – User identifier.

layers

List of Layer in order of beam propagation.

Type:

list

drive_detuning

Detuning values for a sample on a Moessbauer drive.

Type:

list or ndarray

function_time

A FunctionTime implementation of the user to describe sample motion. Must return the phase factor \(\phi(t) = k x(t)\), where \(k\) is the photon wave vector along beam direction and \(x(t)\) the sample motion along the beam propagation direction.

Type:

FunctionTime

id

User identifier.

Type:

string

ElectronicAmplitude(energy)
Args:

energy (float): Energy for the calculation of the scattering factor

Returns:

Electronic scattering factor

Return type:

complex

ElectronicAmplitudeMatrix(energy)

Calculates the detuning-dependent complex 2x2 object matrix.

Parameters:

energy (float) – Energy for the calculation of the scattering factor

Returns:

Complex 2x2 matrix.

Return type:

list

Ids()

List with all layer id of the sample.

Returns:

Layers ids.

Return type:

list

Interfaces()

A list with the positions of the layer interfaces.

Returns:

Position of the Layer interfaces.

Return type:

list

LayerCenters()

A list with the center coordinates of all layers in the sample.

Returns:

Position of the Layer centers.

Return type:

list

ObjectMatrix(isotope, detuning, calc_transitions)

Calculates the detuning-dependent complex 2x2 object matrix.

Parameters:
  • isotope (MoessbauerIsotope) – Moessbauer isotope of the experiment.

  • detuning (list or ndarray) – n-dimensional array with detuning values.

  • calc_transitions (bool) – Set to True for calculations of the nuclear transitions in the object.

Returns:

List of complex 2x2 matrices.

Return type:

list

TotalThickness()

Calculates the total thickness of the sample.

Returns:

Total thickness of the sample (nm).

Return type:

float