Incoherent Interactions

Three common sources of incoherent dynamics in systems featuring ODMR are:

  1. Incoherent optical excitation and decay of electronic transitions.

  2. Dissipative interaction with a quantum mechanical environment (bath).

  3. Stochastic modulations of (classical) system parameters (e.g. rotational diffusion in a liquid environment, flow in a field gradient, static field drifts).

Stochastic modulations can be included with our Fokker-Planck module. A description of SimOS functionality to incorporate optical excitation/decay and empirical spin relaxation is described in the following.

_images/interactions_incoherentscheme.png

Optical Transitions

Optical excitation and decay events are characterized by collapse operators of the type \(\ket{m}\bra{n}\) for pairs of electronic levels \(m, n\) and classical transition rates that are readily available for many systems.

SimOS allows to incorporate incoherent level transitions in three steps:

  • Specify all transitions and their rates in a dictionary.

  • Utilize the tidyup_ratedict() method to tidy up the dictionary; i.e. to ensure that the rates were entered in a correct format.

  • Utilize the transition_operators() method to generate the collapse operators.

The rate dictionary is set up in the following way:

  • The keys of the dictionary are strings that specify between which levels a transition occurs The “source” and “sink” levels, i.e. the starting and the end points of the transition, are single or multiple member names of the system, separated by commatas. If an excitation only occurs from or to a specific sublevel of a member, the sublevel is specified in square brackets behind the members’ name. The direction of the transition is indicated with arrows between the source and sink names.

  • The values of the keys specify the transition rates.

Let us showcase this flow and how to set up a rate dictionary with a simple example - the Nitrogen-Vacancy center in diamond, which is introduced extensively in a separate section. We can construct a minimal model of a negatively charged NV center as:

GS  = {"name": "GS", "val": 0}
ES  = {"name": "ES", "val": 0}
SS  = {"name": "SS", "val": 0}
S  = {"name": "S", "val": 1}
NV = sos.System(([(GS, ES), S], SS))

We now want to construct the collapse operators for the laser excitation, i.e. off-resonant excitation from the electronic ground to the electronic excited state of the NV center. Note that the excitation is spin conserving, i.e. the spin state is preserved during the optical excitation. We hence must introduce separate excitation processes for all spin sublevels.

# Step 1: Prepare dictionary
laser_rates = {}
laser_rates["GS,S[0]->ES,S[0]"] = 10e6
laser_rates["GS,S[1]->ES,S[1]"] = 10e6
laser_rates["GS,S[-1]->ES,S[-1]"] = 10e6
# Step 2: Tidy-up dictionary
laser_rates = sos.tidyup_ratedict(NV, laser_rates)
# Step 3: Generate the collapse operators.
c_ops = sos.transition_operators(NV, laser_rates)

The returned c_ops is a list of collapse operators for the three excitation channels that can be used to generate a Liouvillian superoperator. The collapse operators for the decay channels can be constructed in an analogous fashion. You can find the full code for the whole simulation of this example in our examples section.

Spin Relaxation

Both, the interaction with a quantum mechanical bath as well as stochastic modulation of (classical) system parameter, induces a relaxation of coherences and non-equilibrium populations of the quantum system.

The construction of suitable collapse operators is usually non-trivial and requiires detailed knowledge about the time correlation functions of the bath and the spectral density of the system. The underlying theory was originally developed for the case of a true quantum mechanical bath and later adapted for the semi-classical case.

SimOS provides a method relaxation_operators that generates collapse operators for longitudinal and transverse spin relaxation based on empirical relaxation rates in the Lindblad formalism. If relaxation is induced by stoachstic modulation of (classical) system parameters, you may find our Fokker-Planck module helpful which allows to explicitly model these dynamics instead of approximating them with a set of collapse operators.

Syntax Reference

relaxation_operators(spin_system, temperature='infinity')[source]

Returns the collapse operators for a spin system for which T1 and T2 times have been supplied in the system dictionary.

Parameters:

spin_system – The spin system for which the collapse operators are to be calculated.

Keyword Arguments:
  • temperature (‘infinity’) – The temperature at which the system is to be simulated. The default is ‘infinity’.

Returns list:

A list of collapse operators.

tidyup_ratedict(spinsystem, rates)[source]

Tidies up a rate dictionary, i.e. ensures that the keys have a correct format for usage with the transition_operators method.

Parameters:
  • spinsystem (System) – The spin system for which the collapse operators are to be calculated. (future use)

  • rates (dict) – A rate dictionary for level transitions. The keys of the dictionary describe the levels between which transitions occur, the values are the rates of the transitions. e.g. {‘A->B’: 1e6, ‘B->A’: 1e6} describes a transition from level A to level B with a rate of 1e6 s^-1 and vice versa.

Returns dict:

A tidy rate dictionary.

transition_operators(spinsystem, rates)[source]

Returns the collapse operators for incoherent (optical) transitions described in a rate dictionary.

Parameters:
  • spinsystem (System) – The spin system for which the collapse operators are to be calculated.

  • rates (dict) – A rate dictionary for level transitions. The keys of the dictionary describe the levels between which transitions occur, the values are the rates of the transitions. e.g. {‘A->B’: 1e6, ‘B->A’: 1e6} describes a transition from level A to level B with a rate of 1e6 s^-1 and vice versa.

Returns list:

A list of collapse operators.