Fixed Object

A FixedObject is an object in the beam path that has fixed scattering factor and matrix at a specific energy or over a detuning range. The advantage of a fixed object is that the scattering matrix can be set freely and optical activity can be introduced even without having a nuclear resonant material.

A fixed object does not have any fittable variables.

A fixed object is specified by the electronic scattering factor and the complex 2x2 scattering matrix. Which property is used depends on the calculation method. All polarization dependent calculations use the matrix, non-polarization sensitive methods use the scattering factor.

import nexus as nx
import numpy as np

factor = 0.876-0.965j

matrix = np.array([[0.5, 0.5j], [-0.5j, 0.5]])

fixed_object = nx.FixedObject(factor, matrix, "my object")

print(fixed_object)
FixedObject:
  .id: my object
  .scattering_factor: (0.876-0.965j)
  .matrix:
[[ 0.5+0.j   0. +0.5j]
 [-0. -0.5j  0.5+0.j ]]

The default arguments nx.FixedObject() create an object with a scattering factor of 1 and the identity matrix.

A fixed object is added to the objects list of the experiment like any other object

exp = nx.Experiment(id = "test experiment",
                    objects [sample1, fixed_object],
                    isotope = nx.lib.Moessbauer.Sn119)

Notebooks

fixed object - nb_fixed_object.ipynb.

Please have a look to the API Reference for more information.