OpenMCTDHB v2.3
Modules | Functions/Subroutines

moduleintegration.F90 File Reference

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.
 All Namespaces Files Functions Variables