- qspec.simulate.lambda_ge_rec ( t , n , delta , a_ge , a_me , s , f , m , p0 = None , dt = None , time_resolved = False , show = False )[source]
Computes the evolution of Lambda-systems such as the alkali metals or the singly-charged alkaline-earth metals, taking into account photon recoils. The system is driven by a single laser. The state vector is defined as (g0, m0, e0, g1, m1, e1, ..., gn, mn, en), where g is the first end of the Lambda, m the second end and e the intermediate state. The photon recoils are modeled using a discrete subspace and not the continuous momentum space. The number of photon recoils increases by one when the system is excited from the g state to the e state. Vice-versa, the number of photon recoils decreases by one when the system is deexcited from the e state to the g state via the process of stimulated emission. When the system decays into the g state via the dissipative mechanism described by the Einstein coefficient 'a_ge', the number of photon recoils does not change.
- Parameters:
-
- tarray_like
The time after which the probability is returned. If all times from 0 to 't' are required, use 'time_resolved'=True (us).
- narray_like
The maximum number of photon recoils to consider.
- deltaarray_like
The detuning of the laser relative to the g->e transition (MHz).
- a_gearray_like
The Einstein coefficient of the e->g transition (MHz).
- a_mearray_like
The Einstein coefficient of the e->m transition (MHz).
- sarray_like
The saturation parameter of the g->e transition.
- farray_like
The transition frequency of the g->e transition (MHz).
- marray_like
The mass number of the element (u).
- p0array_like
The initial density matrix. Must have shape (6, ), containing the elements [gg, mm, ee, gm, eg, em](0) or be the full density matrix with all the recoil information.
- dtfloat
The width of the time steps.
- time_resolvedbool
Whether to return the complete history of the result.
- showbool
Whether to plot the result.
- Returns:
-
- outNone
The diagonal density matrix elements after the time 't'. If time_resolved is True, a 2-tuple similar to (time, density matrix) is returned, were the density matrix has shape (time.size, 3(n+1)). time will be an array of equally spaced times, such that numerical integrations can be performed easily.