Logo

A physics toolbox for laser spectroscopy.

Static Badge Static Badge Static Badge

Static Badge Static Badge

© 2026 Patrick Müller. All rights reserved.

qspec.simulate.gen_hyperfine_state  (  freq_j = 0.0 parity = None j = 0 i = 0 f = 0 ls = None jj = None hyper_const = None gj = None gi = 0 label = None  )[source]

Creates all magnetic substates of a hyperfine-structure state $|\mathrm{[label]}\pi JIF\rangle$ using a common label.

Parameters:
freq_jscalar

The energetic position of the state without the hyperfine structure or the magnetic field (MHz).

paritybool | str | None

The parity $\pi$ of the state is used to check the selection rules. If None, it is inferred from ls if possible. It can be either "even" ("e", False) or "odd" ("o", True).

jscalar

The electronic total angular momentum quantum number $J$.

iscalar

The nuclear spin quantum number $I$.

fscalar

The total angular momentum quantum number $F$.

lsscalar_nd | None

A list or a single pair of electronic angular momentum and spin quantum numbers $(l_i, s_i)$ used to check the selection rules and to calculate the electronic g-factor in the LS-coupling scheme. If this is a list of LS-pairs, the parameter jj requires a list of $j_i$ quantum numbers.

jjscalar_1d | None

A list of two electronic total angular momentum quantum numbers $(j_0, j_1)$ used to calculate the electronic g-factor in the jj-coupling scheme. Either a list of two $(l_i, s_i)$ pairs needs to be specified for the parameter ls or a list of g-factors $g_{j_i}$ for the parameter gj.

hyper_constarray_like | None

A list of the hyperfine-structure constants. Currently, constants up to the electric quadrupole order are supported ($A$, $B$). If 'hyper_const' is a scalar, it is assumed to be the constant $A$ and the other orders are 0 (MHz).

gjscalar | None

A list of two $g_{j_i}$ or a single electronic g-factor $g_J$. If gj is a list, jj is required and ls is overwritten. If gj is a scalar, both ls and jj are overwritten.

giscalar

The nuclear g-factor $g_I$.

labelstr | None

The label of the states. The labels are used to link states via a DecayMap.

Returns:
stateslist[qspec.simulate.State]

A list of the created states $|\mathrm{[label]}\pi JIFm\rangle$.

API navigation