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. Interaction.master  (  t delta = None m = 0 v = None y0 = None  )[source]

Solver for the master equation $$\begin{aligned} \frac{\partial\rho}{\partial t} &= -i[H, \rho] + \sum\limits_{i,j} \Gamma_{\!ij}\mathcal{D}[\sigma_{ij}]\rho\\[2ex] \mathcal{D}[\sigma]\rho &\coloneqq \sigma\rho\sigma^\dagger - \frac{1}{2}(\sigma^\dagger\sigma\rho + \rho\sigma^\dagger\sigma),\quad\sigma_{ij} = |i\rangle\langle j|\\[2ex] \Gamma_{\!ij} &= \sum\limits_{Xk_{ij}} (a_{ij,k_{ij}}^{m_j - m_i})^2\,A_{ji}^{Xk_{ij}}\\[2ex] a_{ij,k_{ij}}^\lambda &= (-1)^{F_i + I + k_{ij} + J_j}\sqrt{(2F_i + 1)(2J_j + 1)} \langle F_im_ik_{ij}\lambda|F_jm_j\rangle\begin{Bmatrix}J_j & J_i & k_{ij} \\F_i & F_j & I\end{Bmatrix}\\[2ex] X_{\!ij} &= \begin{cases}+1, & \text{if electric } (\mathrm{E}k_{ij}) \\ \ \,0, & \text{if magnetic } (\mathrm{M}k_{ij})\end{cases}, \end{aligned}$$ where the Hamiltonian $H$ (2π MHz) is time-independent whenever possible, see qspec.simulate.Interaction.hamiltonian. Solutions for n samples can be calculated in parallel for nt times.

Parameters:
tarray_like

The times $t$ when to compute the solution. Any array is cast to the shape (nt, ), where nt is the size of the array t (μs).

deltaarray_like | None

An array of laser frequency shifts $\vec{\Delta}$. delta must be a scalar, a 1d- or 2d-array with shapes (n, ) or (n, nl), respectively, where nl is the number of lasers of the Interaction (MHz).

mint | None

The index of the shifted laser. If delta is a 2d-array, m ist omitted.

varray_like | None

Atom velocities $\vec{v}$. Must be a scalar or have shape (n, ) or (n, 3). In the first two cases, the velocity vector(s) are assumed to be aligned with the $x$-axis (m/s).

y0array_like | None

The initial state / density matrix of the Atom. This must be None or have shape (Atom.size, ), (n or 1, Atom.size) or (n or 1, Atom.size, Atom.size). If None, all states with the same label as the first State in atom.states are populated equally.

Returns:
rho_tnumpy.ndarray[tuple[Any, ...], numpy.dtype[numpy.complexfloating]]

The integrated master equation as a complex-valued array of shape (n, Atom.size, Atom.size, nt).

API navigation