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:
TreeNodeMagnetic 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
Initialize relaxation time approximation for scattering.
add_childConstruct child object self.`attr_name` of type cls.
add_child_one_ofInvoke add_child on one of several child options in args.
initialize_fieldsrho_dotsave_checkpointSave self and all children in hierarchy to cp_path.
Attributes
ab_initioconstant values of parameters
Perturbing Hamiltonian amplitude
Larmor precession frequencies
Pulse start times
Pulse stop times
child_namesNames of attributes with child objects.
variant_nameVersion 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