![]() |
A Modular Arbitrary-Order Ocean-Atmosphere Model -- Stochastic implementation
|
Module with the integration routines. More...
Functions/Subroutines | |
subroutine, public | init_integrator |
Routine to initialise the integration buffers. More... | |
subroutine | tendencies (t, y, res) |
Routine computing the tendencies of the model. More... | |
subroutine, public | step (y, t, dt, res) |
Routine to perform an integration step (Heun algorithm). The incremented time is returned. More... | |
Variables | |
real(kind=8), dimension(:), allocatable | buf_y1 |
Buffer to hold the intermediate position (Heun algorithm) More... | |
real(kind=8), dimension(:), allocatable | buf_f0 |
Buffer to hold tendencies at the initial position. More... | |
real(kind=8), dimension(:), allocatable | buf_f1 |
Buffer to hold tendencies at the intermediate position. More... | |
real(kind=8), dimension(:), allocatable | buf_ka |
Buffer A to hold tendencies. More... | |
real(kind=8), dimension(:), allocatable | buf_kb |
Buffer B to hold tendencies. More... | |
Module with the integration routines.
Module with the RK4 integration routines.
subroutine public integrator::init_integrator | ( | ) |
subroutine public integrator::step | ( | real(kind=8), dimension(0:ndim), intent(in) | y, |
real(kind=8), intent(inout) | t, | ||
real(kind=8), intent(in) | dt, | ||
real(kind=8), dimension(0:ndim), intent(out) | res | ||
) |
Routine to perform an integration step (Heun algorithm). The incremented time is returned.
Routine to perform an integration step (RK4 algorithm). The incremented time is returned.
y | Initial point. |
t | Actual integration time |
dt | Integration timestep. |
res | Final point after the step. |
Definition at line 61 of file rk2_integrator.f90.
|
private |
Routine computing the tendencies of the model.
t | Time at which the tendencies have to be computed. Actually not needed for autonomous systems. |
y | Point at which the tendencies have to be computed. |
res | vector to store the result. |
y
as a result buffer, as this operation does multiple passes. Definition at line 49 of file rk2_integrator.f90.
|
private |
Buffer to hold tendencies at the initial position.
Definition at line 28 of file rk2_integrator.f90.
|
private |
Buffer to hold tendencies at the intermediate position.
Definition at line 29 of file rk2_integrator.f90.
|
private |
Buffer A to hold tendencies.
Definition at line 28 of file rk4_integrator.f90.
|
private |
Buffer B to hold tendencies.
Definition at line 29 of file rk4_integrator.f90.
|
private |
Buffer to hold the intermediate position (Heun algorithm)
Definition at line 27 of file rk2_integrator.f90.