MCTDH-X
v2.22
|
This module contains the different Runge Kutta wrappers. More...
Public Member Functions | |
subroutine | rungekutta5 (psi, dtpsi, psidim, intperiod, abstime, initstep, accuracy, error, auxpsi, func, rksteps) |
MCTDH interface to the call of the Runge-Kutta (order 5) integrator from the ODESIM project. More... | |
subroutine | rungekutta8 (psi, dtpsi, psidim, intperiod, abstime, initstep, accuracy, error, auxpsi, func, rksteps) |
MCTDH interface to the call of the Runge-Kutta (order 8) integrator from the ODESIM project. More... | |
subroutine | od85cr (ODEMOD, ndgl, y, t, tend, hmax, h, hopt, tol, uround, safe, beta, facdec, facinc, y1, k1, k2, k3, k4, k5, k6, k7, k8, k9, k10, kerr, kerr2, wt, nfcn, nstep, naccpt, nrejct, intgfl, ierr, rerr) |
Core of the Runge-Kutta integrator DoPri853. More... | |
subroutine | odp5cr (ODEMOD, ndgl, y, t, tend, hmax, h, hopt, tol, uround, safe, beta, facdec, facinc, y1, k1, k2, k3, k4, k5, k6, ys, wt, nfcn, nstep, naccpt, nrejct, intgfl, ierr, rerr) |
Core of the Runge-Kutta integrator of order 5. More... | |
subroutine | odehin (ODEMOD, ndgl, t, y, tend, posneg, dy0, dy1, y1, iord, hmax, small, wt, tol, nfcn, hini) |
computes an initial stepsize guess for Runge Kutta integration More... | |
subroutine | setewv (ndim, y0, y1, tol, small, wt) |
set the error weight vector according to the given tolerance More... | |
real *8 function | wgtnrm (ndim, vec, wt) |
computes the weighted norm of a vector More... | |
real *8 function | wgtdst (ndim, vec1, vec2, wt) |
computes the weighted distance of two vectors More... | |
This module contains the different Runge Kutta wrappers.
subroutine runge_kutta::od85cr | ( | external | ODEMOD, |
integer | ndgl, | ||
complex*16, dimension(ndgl) | y, | ||
real*8 | t, | ||
real*8 | tend, | ||
real*8 | hmax, | ||
real*8 | h, | ||
real*8 | hopt, | ||
real*8 | tol, | ||
real*8 | uround, | ||
real*8 | safe, | ||
real*8 | beta, | ||
real*8 | facdec, | ||
real*8 | facinc, | ||
complex*16, dimension(ndgl) | y1, | ||
complex*16, dimension(ndgl) | k1, | ||
complex*16, dimension(ndgl) | k2, | ||
complex*16, dimension(ndgl) | k3, | ||
complex*16, dimension(ndgl) | k4, | ||
complex*16, dimension(ndgl) | k5, | ||
complex*16, dimension(ndgl) | k6, | ||
complex*16, dimension(ndgl) | k7, | ||
complex*16, dimension(ndgl) | k8, | ||
complex*16, dimension(ndgl) | k9, | ||
complex*16, dimension(ndgl) | k10, | ||
complex*16, dimension(ndgl) | kerr, | ||
complex*16, dimension(ndgl) | kerr2, | ||
real*8, dimension(ndgl) | wt, | ||
integer | nfcn, | ||
integer | nstep, | ||
integer | naccpt, | ||
integer | nrejct, | ||
integer | intgfl, | ||
integer | ierr, | ||
real*8 | rerr | ||
) |
Core of the Runge-Kutta integrator DoPri853.
References function_library::beta(), odehin(), setewv(), and wgtnrm().
Referenced by rungekutta8().
subroutine runge_kutta::odehin | ( | external | ODEMOD, |
integer | ndgl, | ||
real*8 | t, | ||
complex*16, dimension(ndgl) | y, | ||
real*8 | tend, | ||
real*8 | posneg, | ||
complex*16, dimension(ndgl) | dy0, | ||
complex*16, dimension(ndgl) | dy1, | ||
complex*16, dimension(ndgl) | y1, | ||
integer | iord, | ||
real*8 | hmax, | ||
real*8 | small, | ||
real*8, dimension(ndgl) | wt, | ||
real*8 | tol, | ||
integer | nfcn, | ||
real*8 | hini | ||
) |
subroutine runge_kutta::odp5cr | ( | external | ODEMOD, |
integer | ndgl, | ||
complex*16, dimension(ndgl) | y, | ||
real*8 | t, | ||
real*8 | tend, | ||
real*8 | hmax, | ||
real*8 | h, | ||
real*8 | hopt, | ||
real*8 | tol, | ||
real*8 | uround, | ||
real*8 | safe, | ||
real*8 | beta, | ||
real*8 | facdec, | ||
real*8 | facinc, | ||
complex*16, dimension(ndgl) | y1, | ||
complex*16, dimension(ndgl) | k1, | ||
complex*16, dimension(ndgl) | k2, | ||
complex*16, dimension(ndgl) | k3, | ||
complex*16, dimension(ndgl) | k4, | ||
complex*16, dimension(ndgl) | k5, | ||
complex*16, dimension(ndgl) | k6, | ||
complex*16, dimension(ndgl) | ys, | ||
real*8, dimension(ndgl) | wt, | ||
integer | nfcn, | ||
integer | nstep, | ||
integer | naccpt, | ||
integer | nrejct, | ||
integer | intgfl, | ||
integer | ierr, | ||
real*8 | rerr | ||
) |
Core of the Runge-Kutta integrator of order 5.
References function_library::beta(), odehin(), setewv(), and wgtnrm().
Referenced by rungekutta5().
subroutine runge_kutta::rungekutta5 | ( | complex*16, dimension(psidim) | psi, |
complex*16, dimension(psidim) | dtpsi, | ||
integer | psidim, | ||
real*8 | intperiod, | ||
real*8 | abstime, | ||
real*8 | initstep, | ||
real*8 | accuracy, | ||
integer | error, | ||
complex*16, dimension(psidim*7) | auxpsi, | ||
external | func, | ||
integer | rksteps | ||
) |
MCTDH interface to the call of the Runge-Kutta (order 5) integrator from the ODESIM project.
References function_library::beta(), orbital_equationofmotion::func(), and odp5cr().
Referenced by integration::integrator_nlevelorb(), and integration::integrator_orb().
subroutine runge_kutta::rungekutta8 | ( | complex*16, dimension(psidim) | psi, |
complex*16, dimension(psidim) | dtpsi, | ||
integer | psidim, | ||
real*8 | intperiod, | ||
real*8 | abstime, | ||
real*8 | initstep, | ||
real*8 | accuracy, | ||
integer | error, | ||
complex*16, dimension(psidim*12) | auxpsi, | ||
external | func, | ||
integer | rksteps | ||
) |
MCTDH interface to the call of the Runge-Kutta (order 8) integrator from the ODESIM project.
References function_library::beta(), orbital_equationofmotion::func(), and od85cr().
Referenced by integration::integrator_nlevelorb(), and integration::integrator_orb().
subroutine runge_kutta::setewv | ( | integer | ndim, |
complex*16, dimension(ndim) | y0, | ||
complex*16, dimension(ndim) | y1, | ||
real*8 | tol, | ||
real*8 | small, | ||
real*8, dimension(ndim) | wt | ||
) |
real*8 function runge_kutta::wgtdst | ( | integer | ndim, |
complex*16, dimension(ndim) | vec1, | ||
complex*16, dimension(ndim) | vec2, | ||
real*8, dimension(ndim) | wt | ||
) |
computes the weighted distance of two vectors
Referenced by odehin().
real*8 function runge_kutta::wgtnrm | ( | integer | ndim, |
complex*16, dimension(ndim) | vec, | ||
real*8, dimension(ndim) | wt | ||
) |