qimpy.transport.material.ab_initio.PulseB

class PulseB(*, ab_initio, B0=(0.0, 0.0, 0.0), g=0.0, g_flip=0.0, t_starts=(0.0,), angles=(3.141592653589793,), checkpoint_in=(None, ''))

Bases: TreeNode

Magnetic field pulse to rotate spins by specific angles.

Parameters:
  • ab_initio (AbInitio)

  • B0 (TensorCompatible)

  • g (float)

  • g_flip (float)

  • t_starts (dict[int, Tensor])

  • angles (TensorCompatible)

  • checkpoint_in (CheckpointPath)

__init__(*, ab_initio, B0=(0.0, 0.0, 0.0), g=0.0, g_flip=0.0, t_starts=(0.0,), angles=(3.141592653589793,), checkpoint_in=(None, ''))

Initialize relaxation time approximation for scattering.

Parameters:
  • B0 (Tensor | ndarray | float | Sequence[float]) – [Input file] Magnetic field amplitude vector.

  • g (float) – [Input file] Gyromagnetic ratio magnitude to calculate mean Larmor frequency.

  • g_flip (float) – [Input file] Gyromagnetic ratio magnitude to calculate flip time. May be different from g for anisotropic system. If unspecified or set to zero, assumed to be same as g.

  • t_starts (Tensor | ndarray | float | Sequence[float]) – [Input file] Start times of oscillating magnetic field pulse.

  • angles (Tensor | ndarray | float | Sequence[float]) – [Input file] Corresponding target spin rotation angles (in radians).

  • ab_initio (AbInitio)

  • checkpoint_in (CheckpointPath)

Return type:

None

Methods

__init__

Initialize relaxation time approximation for scattering.

add_child

Construct child object self.`attr_name` of type cls.

add_child_one_of

Invoke add_child on one of several child options in args.

initialize_fields

rho_dot

save_checkpoint

Save self and all children in hierarchy to cp_path.

Attributes

ab_initio

constant_params

constant values of parameters

H0

Perturbing Hamiltonian amplitude

omega

Larmor precession frequencies

t_starts

Pulse start times

t_stops

Pulse stop times

child_names

Names of attributes with child objects.

variant_name

Version of children having variants (if any)

H0: dict[int, Tensor]

Perturbing Hamiltonian amplitude

constant_params: dict[str, Tensor]

constant values of parameters

omega: dict[int, Tensor]

Larmor precession frequencies

t_starts: dict[int, Tensor]

Pulse start times

t_stops: dict[int, Tensor]

Pulse stop times