OpenMCTDHB v2.3
|
Go to the source code of this file.
Modules | |
module | moduleintegration |
This module contains seven routines which do the 7 integration steps of the MCTDHB algorithm, as it is described in the paper PRA 77, 033613 (2008). | |
Functions/Subroutines | |
subroutine | moduleintegration::do_stepOne (nConf, MOrb, NPar, CVec_zero, CData, readPotential, V_ext, NDX, NDY, NDZ, Dims, gridx, gridy, gridz, AbsTime, nSuperDiags, lambda0, Psi_zero, BandMat, rho_jk_zero, rho_ijkl_zero) |
This subroutine supplies the initial values of the h_kq,W_kqsl,rho_kq,rho_kqsl at t=0 for the subsequent integration steps. | |
subroutine | moduleintegration::do_stepTwo (AbsTime, CVec_zero, DtCVec, BandMat, RData, IData, LData, CVec_tauhalf, NPar, nConf, MOrb, IntPeriod, SILmaxIntOrder, IntegratorTolError, Relax, CData, tau, SILIntPeriod1, nSuperDiags, rho_ijkl_tauhalf, rho_jk_tauhalf, propDirection) |
This subroutine propagates the CI vector from t=0 to t=tau/2 using SIL and the matrix elements at t=0. The Matrix elements at t=tau/2 are evaluated. | |
subroutine | moduleintegration::do_stepThree (Psi_tauhalf, Psi_zero, Psi_WORK, AbsTime, DtPsi_WORK, CData, RData, IData, LData, NDX, NDY, NDZ, MOrb, Relax, tau, IntegratorTolError, restartABM, SILIntPeriod1, ABMIntOrder) |
This subroutine propagates the Orbitals from t=0 to t=tau/2 using ABM and the matrix elements obtained in step two. | |
subroutine | moduleintegration::do_stepFour (rho_jk_zero, rho_ijkl_zero, CData, Rdata, IData, LData, Psi_tildetauhalf, Psi_zero, restartABM, SILIntPeriod1, AbsTime, IntegratorTolError, NDX, NDY, NDZ, MOrb, ABMIntOrder) |
This subroutine propagates the Orbitals from t=tau/2 to t=0 using ABM and the matrix elements obtained in step one for error estimation. | |
subroutine | moduleintegration::do_stepFive (CData, RData, IData, LData, rho_jk_tauhalf, rho_ijkl_tauhalf, Psi_tau, Psi_tauhalf, readPotential, V_ext, NDX, NDY, NDZ, MOrb, nConf, nPar, Dims, gridx, gridy, gridz, AbsTime, SILIntPeriod1, ABMIntOrder, IntegratorTolError, restartABM, nSuperDiags, BandMat, lambda0) |
This subroutine propagates the Orbitals from t=tau/2 to t=tau using ABM and the matrix elements obtained in step two. The matrix elements h_kq, W_kqsl at t=tau are evaluated. | |
subroutine | moduleintegration::do_stepSix (CVec_tau, CVec_tauhalf, SILIntPeriod1, BandMat, CData, RData, IData, LData, nConf, SILmaxIntOrder, IntegratorTolError, Relax, RestartSIL, StdForm, SILIntPeriod2, AbsTime, iFail, MOrb, nSuperDiags, tau) |
This subroutine propagates the CI vector from t=tau/2 to t=tau using SIL and the matrix elements obtained in step five. | |
subroutine | moduleintegration::do_stepSeven (CVec_tildezero, CVec_tauhalf, AbsTime, SILIntPeriod1, CVec_tau, BandMat, CData, RData, IData, LData, nConf, MOrb, propDirection, nSuperDiags, SILmaxIntOrder, IntegratorTolError, Stepsize, iFail, Relax) |
This subroutine propagates the CI vector from t=tau/2 to t=0 using SIL and the matrix elements obtained in step five for error estimation. The error is given by the differences of the CI vector of this step to the CI vector of step one and the difference of the orbitals obtained in step three and step four. |