MCTDH-X
v2.22
|
Public Member Functions | |
subroutine | get_current_cavity_pumprate (Current_Cavity_PumpRate, Time) |
This routine evaluates the current pump laser power. More... | |
subroutine | get_cavityaction (Time, OneBodyPotential, CavityField) |
This routine evaluates the action of the cavity field on the atomic sample through the dipole force. The cavity field is updated using the ABM integrator and the one-body potential of the atoms is updated using the cavity mode and pump laser intensity profiles defined through the input. More... | |
subroutine | func_cavity (Time, CavityField_In, CavityField_Out, static) |
This routine evaluates the right-hand side of the cavity mode equation of motion. More... | |
subroutine | propagate_cavityfield (Time, IntegrationPeriod, CavityField_In, CavityField_Out) |
This routine calls the ABM integrator to solve the cavity mode equation of motion. More... | |
subroutine | get_atom_pump_cavityexpectations (AtomCavityExpectation, AtomPumpExpectation, PSI_Cavity, Full_Rho1_Elements, Time) |
This routine computes the expectation values with the atomic density which are necessary to evaluate the right-hand side of the cavity equation of motion. More... | |
subroutine | complex_rk4vec (t0, m, u0, dt, func, u) |
subroutine cavitybec::complex_rk4vec | ( | real ( kind = 8 ) | t0, |
integer ( kind = 4 ) | m, | ||
complex*16, dimension(m) | u0, | ||
real ( kind = 8 ) | dt, | ||
external | func, | ||
complex*16, dimension(m) | u | ||
) |
References orbital_equationofmotion::func().
Referenced by propagate_cavityfield().
subroutine cavitybec::func_cavity | ( | real*8 | Time, |
complex*16, dimension(ncavity_modes) | CavityField_In, | ||
complex*16, dimension(ncavity_modes) | CavityField_Out, | ||
logical, optional | static | ||
) |
This routine evaluates the right-hand side of the cavity mode equation of motion.
Referenced by propagate_cavityfield().
subroutine cavitybec::get_atom_pump_cavityexpectations | ( | real*8, dimension(ncavity_modes) | AtomCavityExpectation, |
real*8, dimension(ncavity_modes) | AtomPumpExpectation, | ||
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb) | PSI_Cavity, | ||
complex*16, dimension(morb,morb) | Full_Rho1_Elements, | ||
real*8 | Time | ||
) |
This routine computes the expectation values with the atomic density which are necessary to evaluate the right-hand side of the cavity equation of motion.
References get_current_cavity_pumprate(), and auxiliary_routines::get_ijk_from_m().
Referenced by kineticenergyaction::get_kineticenergyaction_allorbitals().
subroutine cavitybec::get_cavityaction | ( | real*8, intent(in) | Time, |
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z), intent(inout) | OneBodyPotential, | ||
complex*16, dimension(ncavity_modes), intent(inout) | CavityField | ||
) |
This routine evaluates the action of the cavity field on the atomic sample through the dipole force. The cavity field is updated using the ABM integrator and the one-body potential of the atoms is updated using the cavity mode and pump laser intensity profiles defined through the input.
References get_current_cavity_pumprate(), auxiliary_routines::get_ijk_from_m(), and propagate_cavityfield().
Referenced by kineticenergyaction::get_kineticenergyaction_allorbitals().
subroutine cavitybec::get_current_cavity_pumprate | ( | real*8 | Current_Cavity_PumpRate, |
real*8 | Time | ||
) |
This routine evaluates the current pump laser power.
Referenced by get_atom_pump_cavityexpectations(), get_cavityaction(), and analysis_routines_onebody::get_cavityorderparameter().
subroutine cavitybec::propagate_cavityfield | ( | real*8 | Time, |
real*8 | IntegrationPeriod, | ||
complex*16, dimension(ncavity_modes) | CavityField_In, | ||
complex*16, dimension(ncavity_modes) | CavityField_Out | ||
) |
This routine calls the ABM integrator to solve the cavity mode equation of motion.
References abm_integrators::abm(), abm_integrators::absabmerror(), complex_rk4vec(), and func_cavity().
Referenced by get_cavityaction().