MCTDH-X
v2.22
|
This module contains the Bulirsch-Stoer Integrator routines. More...
Public Member Functions | |
subroutine | bsstep (Psi, DtPsi, PsiDim, IntPeriod, AbsTime, IntOrder, LargeStep, TolError, ActualLargeStep, NextLargeStep, SmallSteps, ErrorCode, AuxPsi, Func, CalcError, Extrapol) |
Driver routine for the BS integrator. More... | |
subroutine | modmidpoint (SavedPsi, EstimatedPsi, DtPsi, Psi1, Psi2, PsiDim, LargeStepSize, InitialTime, NumberOfSteps, Func) |
BS modified middle point evaluation. More... | |
subroutine | absbserror (PsiError, PsiDim, Error) |
Absolute BS error evaluation. More... | |
subroutine | relbserror (Psi, PsiError, PsiDim, Error) |
Relative BS error evaluation. More... | |
subroutine | polyextrapol (Column, Psi, DeltaPsi, Difference, Tableau, PsiDim, SquaredStepSize, IntOrder) |
Polynomial extrapolation for the first step. More... | |
subroutine | bserrormsg (Error, Msg) |
BS error message output. More... | |
This module contains the Bulirsch-Stoer Integrator routines.
subroutine bulirsch_stoer::absbserror | ( | complex*16, dimension(psidim) | PsiError, |
integer | PsiDim, | ||
real*8 | Error | ||
) |
Absolute BS error evaluation.
Referenced by integration::integrator_nlevelorb(), and integration::integrator_orb().
subroutine bulirsch_stoer::bserrormsg | ( | integer | Error, |
character*(*) | Msg | ||
) |
BS error message output.
subroutine bulirsch_stoer::bsstep | ( | complex*16, dimension(psidim) | Psi, |
complex*16, dimension(psidim) | DtPsi, | ||
integer | PsiDim, | ||
real*8 | IntPeriod, | ||
real*8 | AbsTime, | ||
integer | IntOrder, | ||
real*8 | LargeStep, | ||
real*8 | TolError, | ||
real*8 | ActualLargeStep, | ||
real*8 | NextLargeStep, | ||
integer | SmallSteps, | ||
integer | ErrorCode, | ||
complex*16, dimension(psidim,intorder+2) | AuxPsi, | ||
external | Func, | ||
external | CalcError, | ||
external | Extrapol | ||
) |
Driver routine for the BS integrator.
References orbital_equationofmotion::func(), and modmidpoint().
Referenced by integration::integrator_nlevelorb(), and integration::integrator_orb().
subroutine bulirsch_stoer::modmidpoint | ( | complex*16, dimension(psidim) | SavedPsi, |
complex*16, dimension(psidim) | EstimatedPsi, | ||
complex*16, dimension(psidim) | DtPsi, | ||
complex*16, dimension(psidim) | Psi1, | ||
complex*16, dimension(psidim) | Psi2, | ||
integer | PsiDim, | ||
real*8 | LargeStepSize, | ||
real*8 | InitialTime, | ||
integer | NumberOfSteps, | ||
external | Func | ||
) |
BS modified middle point evaluation.
References orbital_equationofmotion::func().
Referenced by bsstep().
subroutine bulirsch_stoer::polyextrapol | ( | integer | Column, |
complex*16, dimension(psidim) | Psi, | ||
complex*16, dimension(psidim) | DeltaPsi, | ||
complex*16, dimension(psidim) | Difference, | ||
complex*16, dimension(psidim,intorder-1) | Tableau, | ||
integer | PsiDim, | ||
real*8 | SquaredStepSize, | ||
integer | IntOrder | ||
) |
Polynomial extrapolation for the first step.
Referenced by integration::integrator_nlevelorb(), and integration::integrator_orb().
subroutine bulirsch_stoer::relbserror | ( | complex*16, dimension(psidim) | Psi, |
complex*16, dimension(psidim) | PsiError, | ||
integer | PsiDim, | ||
real*8 | Error | ||
) |
Relative BS error evaluation.