atomsmltr.environment.fields package#

The atomsmltr.environment.fields subpackage provides definitions for vector fields

Currently, only magnetic fields are implemented, but this could be extented to electric fields

Examples

Setup a magnetic field offset

from atomsmltr.environment.fields import MagneticOffset
offset_field = MagneticOffset(field_value=(0,1,0), tag="offset")
class atomsmltr.environment.fields.ConstantForce(field_value: ndarray = (0, 0, 0), tag: str = None)[source]#

Bases: Force, ConstantField

A constant Force

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.Force(*args, **kwargs)[source]#

Bases: Field

A generic force field class. Used to set some properties common to all forces objects, and to have a way to identify magnetic field objects.

property type#

a description of the object type

Type:

str

property unit#

returns the unit of the field

Type:

str

class atomsmltr.environment.fields.GradientForce(origin: ndarray, slope: float, gradient_direction: ndarray, field_direction: ndarray, offset: float = 0.0, tag: str = None)[source]#

Bases: Force, GradientField

A perfect force gradient

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.InterpMag1D1D(data_position: ndarray, data_field: ndarray, field_direction: ndarray = (1, 0, 0), position_direction: ndarray = (1, 0, 0), origin: ndarray = (0, 0, 0), scale: float = 1.0, tag: str = None)[source]#

Bases: MagneticField, InterpolatedField1D1D

An interpolated field 1D / 1D

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.InterpMag3D3D(data_position: tuple, data_field: ndarray, origin: ndarray = (0, 0, 0), scale: float = 1.0, tag: str = None)[source]#

Bases: MagneticField, InterpolatedField3D3D

An interpolated field 3D/3D

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticGradient(origin: ndarray, slope: float, gradient_direction: ndarray, field_direction: ndarray, offset: float = 0.0, tag: str = None)[source]#

Bases: MagneticField, GradientField

A perfect magnetic field gradient

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticOffset(field_value: ndarray = (0, 0, 0), tag: str = None)[source]#

Bases: MagneticField, ConstantField

A perfect magnetic field offset

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticQuadrupole(origin: ndarray, strong_axis: ndarray, slope: float, tag: str = None)[source]#

Bases: MagneticField, QuadrupoleField

A perfect magnetic field quadrupole, with strong axis along a given vector (x,y,z)

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticQuadrupoleX(origin: ndarray, slope: float, tag: str = None)[source]#

Bases: MagneticField, QuadrupoleFieldX

A perfect magnetic field quadrupole, with strong axis along X

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticQuadrupoleY(origin: ndarray, slope: float, tag: str = None)[source]#

Bases: MagneticField, QuadrupoleFieldY

A perfect magnetic field quadrupole, with strong axis along Y

property type#

a description of the object type

Type:

str

class atomsmltr.environment.fields.MagneticQuadrupoleZ(origin: ndarray, slope: float, tag: str = None)[source]#

Bases: MagneticField, QuadrupoleFieldZ

A perfect magnetic field quadrupole, with strong axis along Z

property type#

a description of the object type

Type:

str

Subpackages#

Submodules#