Bosonic Bath (under rotating wave approximation)

Overview

This describes the interaction between the system ($s$) and a exterior bosonic environment ($b$) under the rotating wave approximation (RWA), which can be modeled by

\[H_{sb}=\sum_k g_k b_k^\dagger a_s + g_k^* b_k a_s^\dagger,\]

where $g_k$ is the coupling strength and $b_k (b_k^\dagger)$ is the annihilation (creation) operator for the $k$-th mode of the bosonic environment. Here, $a_s$ refers to the system annihilation operator.

The effects of a bosonic environment (initially in thermal equilibrium, linearly coupled to the system, and under the rotating wave approximation) are completely encoded in the two-time correlation functions, namely

\[C^{\nu}(t_{1},t_{2}) =\frac{1}{2\pi}\int_{0}^{\infty} d\omega J(\omega)\left[\delta_{\nu,-1}+ n(\omega) \right]e^{\nu i\omega (t_{1}-t_{2})}.\]

where $J(\omega)=2\pi\Sigma_k |g_k|^2 \delta(\omega-\omega_k)$ is the spectral density of the bath and $n(\omega)=\{\exp[\omega/k_B T]-1\}^{-1}$ represents the Bose-Einstein distribution. Here, $\nu=+$ and $\nu=-$ denotes the absorption and emission process of the bosonic system, respectively.

A more practical representation can be found by expressing the correlation function as a sum of exponential terms (Exponent), namely

\[C^{\nu}(t_1, t_2)=\sum_i \eta_i^{\nu} e^{-\gamma_i^{\nu} (t_1-t_2)}.\]

This allows us to define an iterative procedure which leads to the hierarchical equations of motion (HEOM).

Construct BosonBath (RWA)

One can construct the BosonBath object under RWA by calling the function BosonBathRWA together with the following parameters: system annihilation operator a_s::QuantumObject and the four lists η_absorb::AbstractVector, γ_absorb::AbstractVector, η_emit::AbstractVector and γ_emit::AbstractVector which correspond to the exponential terms $\{\eta_i^{+}\}_i$, $\{\gamma_i^{+}\}_i$, $\{\eta_i^{-}\}_i$ and $\{\gamma_i^{-}\}_i$, respectively.

bath = BosonBathRWA(a_s, η_absorb, γ_absorb, η_emit, γ_emit)
Warning

Here, the length of the four lists (η_absorb, γ_absorb, η_emit and γ_emit) should all be the same. Also, all the elements in γ_absorb should be complex conjugate of the corresponding elements in γ_emit.

One can check the information of the BosonBath by the print function, for example:

print(bath)
BosonBath object with 4 exponential-expansion terms

Note that BosonBath under RWA always have even number of exponential terms (half for $C^{\nu=+}$ and half for $C^{\nu=-}$)

Calculate the correlation function

To check whether the exponential terms in the FermionBath is correct or not, one can call correlation_function to calculate the correlation function $C(t)$, where $t=t_1-t_2$:

cp_list, cm_list = correlation_function(bath, tlist)

Here, cp_list and cm_list are the lists which contain the value of $C^{\nu=+}(t)$ and $C^{\nu=-}(t)$ correspond to the given time series tlist, respectively.

Exponent

HierarchicalEOM.jl also supports users to access the specific exponential term with brackets []. This returns an Exponent object, which contains the corresponding value of $\eta_i^\nu$ and $\gamma_i^\nu$:

e = bath[2] # the 2nd-term
print(e)
Bath Exponent with types = "bA", η = 0.0 + 3.4090909090909113e-6im, γ = 0.1732050807568877 - 0.005im.

The different types of the (bosonic-bath under RWA) Exponent:

  • "bA" : from absorption bosonic correlation function $C^{\nu=+}(t_1, t_2)$
  • "bE" : from emission bosonic correlation function $C^{\nu=-}(t_1, t_2)$

One can even obtain the Exponent with iterative method:

for e in bath
    println(e)
end
Bath Exponent with types = "bA", η = 6.25e-6 - 3.4090909090909113e-6im, γ = 0.05 - 0.005im.

Bath Exponent with types = "bA", η = 0.0 + 3.4090909090909113e-6im, γ = 0.1732050807568877 - 0.005im.

Bath Exponent with types = "bE", η = 6.25e-6 - 3.4090909090909113e-6im, γ = 0.05 + 0.005im.

Bath Exponent with types = "bE", η = 0.0 + 3.4090909090909113e-6im, γ = 0.1732050807568877 + 0.005im.