MQDS  0.0.1
Molecular Quantum Dynamics and Spectroscopy
Functions/Subroutines | Variables
harmonic_bath Module Reference

Module to handle a harmonic-oscillator model for the bath in quantum dynamics simulations. More...

Functions/Subroutines

subroutine initialize_bath
 Allocates the necessary arrays to describe the bath and system-bath interactions. Also, the spectral density is uniformly sampled according to frequency-dependent reorganization energy. More...
 
subroutine sample_thermal_wigner (x_init, p_init, beta)
 Sample the initial thermal distribution for harmonic bath from the Wigner transform of the Boltzmann operator. This is under the assumption that the full initil density operator can be written as \( \hat{\rho}_s\hat{\rho}_b^{eq} \). More...
 
subroutine finalize_bath
 
real(dp) function, dimension(nbath *nosc) bilinear_harmonic_force_pldm (x, x_map, p_map, xt_map, pt_map)
 Calculate bilinear coupling force for PLDM. More...
 
real(dp) function, dimension(nbath *nosc) bilinear_harmonic_force_twa (x, x_map, p_map)
 Calculate the bilinear coupling force for TWA and SQC calculations. More...
 
real(dp) function, dimension(0 :nbstep) redfield_bath_correlation_function (sd, w, beta_local)
 Calculate the harmonic bath correlation function for a bilinearly coupled system-bath model in the Redfield Approximation for 1 ps. More...
 
subroutine bath_coupled_to_vibrational_mode (q_init, pq_init, beta)
 Subroutine to prepare the spectral density that is coupled to an "intramolecular" vibrational mode. More...
 

Variables

real(dp), dimension(:), allocatable x_bath
 
real(dp), dimension(:), allocatable p_bath
 
real(dp), dimension(:), allocatable omega
 
real(dp), dimension(:,:), allocatable c
 
real(dp), dimension(:,:), allocatable site_sd
 
real(dp), dimension(:), allocatable site_reorg
 
real(dp), dimension(:), allocatable site_bath_freq
 

Detailed Description

Module to handle a harmonic-oscillator model for the bath in quantum dynamics simulations.

Function/Subroutine Documentation

◆ bath_coupled_to_vibrational_mode()

subroutine harmonic_bath::bath_coupled_to_vibrational_mode ( real(dp), dimension(:), intent(inout)  q_init,
real(dp), dimension(:), intent(inout)  pq_init,
real(dp), intent(in)  beta 
)

Subroutine to prepare the spectral density that is coupled to an "intramolecular" vibrational mode.

◆ bilinear_harmonic_force_pldm()

real(dp) function, dimension(nbath*nosc) harmonic_bath::bilinear_harmonic_force_pldm ( real(dp), dimension(nbath*nosc), intent(in)  x,
real(dp), dimension(nstate), intent(in)  x_map,
real(dp), dimension(nstate), intent(in)  p_map,
real(dp), dimension(nstate), intent(in)  xt_map,
real(dp), dimension(nstate), intent(in)  pt_map 
)

Calculate bilinear coupling force for PLDM.

◆ bilinear_harmonic_force_twa()

real(dp) function, dimension(nbath*nosc) harmonic_bath::bilinear_harmonic_force_twa ( real(dp), dimension(nbath*nosc), intent(in)  x,
real(dp), dimension(nstate), intent(in)  x_map,
real(dp), dimension(nstate), intent(in)  p_map 
)

Calculate the bilinear coupling force for TWA and SQC calculations.

◆ finalize_bath()

subroutine harmonic_bath::finalize_bath ( )

◆ initialize_bath()

subroutine harmonic_bath::initialize_bath ( )

Allocates the necessary arrays to describe the bath and system-bath interactions. Also, the spectral density is uniformly sampled according to frequency-dependent reorganization energy.

Note: This is restricted to a single range and discretization of frequencies (defined by a single dw)

Sample bath according to the method described by Wang et al JCP 110, 4828 (1999)

Writes a log of sampled modes into a file called "sampledbath.log"

◆ redfield_bath_correlation_function()

real(dp) function, dimension(0 : nbstep) harmonic_bath::redfield_bath_correlation_function ( real(dp), dimension(:), intent(in)  sd,
real(dp), dimension(:), intent(in)  w,
real(dp), intent(in)  beta_local 
)

Calculate the harmonic bath correlation function for a bilinearly coupled system-bath model in the Redfield Approximation for 1 ps.

◆ sample_thermal_wigner()

subroutine harmonic_bath::sample_thermal_wigner ( real(dp), dimension(nbath*nosc), intent(out)  x_init,
real(dp), dimension(nbath*nosc), intent(out)  p_init,
real(dp), intent(in)  beta 
)

Sample the initial thermal distribution for harmonic bath from the Wigner transform of the Boltzmann operator. This is under the assumption that the full initil density operator can be written as \( \hat{\rho}_s\hat{\rho}_b^{eq} \).

Variable Documentation

◆ c

real(dp), dimension(:,:), allocatable harmonic_bath::c

◆ omega

real(dp), dimension(:), allocatable harmonic_bath::omega

◆ p_bath

real(dp), dimension(:), allocatable harmonic_bath::p_bath

◆ site_bath_freq

real(dp), dimension(:), allocatable harmonic_bath::site_bath_freq

◆ site_reorg

real(dp), dimension(:), allocatable harmonic_bath::site_reorg

◆ site_sd

real(dp), dimension(:,:), allocatable harmonic_bath::site_sd

◆ x_bath

real(dp), dimension(:), allocatable harmonic_bath::x_bath