![]() |
A Modular Arbitrary-Order Ocean-Atmosphere Model -- Stochastic implementation
|
Module with the WL rk2 integration routines. More...
Functions/Subroutines | |
| subroutine, public | init_integrator |
| Subroutine that initialize the MARs, the memory unit and the integration buffers. More... | |
| subroutine | compute_m1 (y) |
| Routine to compute the \(M_1\) term. More... | |
| subroutine | compute_m2 (y) |
| Routine to compute the \(M_2\) term. More... | |
| subroutine, public | step (y, t, dt, dtn, res, tend) |
| Routine to perform an integration step (Heun algorithm) of the WL system. The incremented time is returned. More... | |
| subroutine, public | full_step (y, t, dt, dtn, res) |
| Routine to perform an integration step (Heun algorithm) of the full stochastic system. The incremented time is returned. More... | |
Variables | |
| real(kind=8), dimension(:), allocatable | buf_y1 |
| real(kind=8), dimension(:), allocatable | buf_f0 |
| real(kind=8), dimension(:), allocatable | buf_f1 |
| Integration buffers. More... | |
| real(kind=8), dimension(:), allocatable | buf_m2 |
| real(kind=8), dimension(:), allocatable | buf_m1 |
| real(kind=8), dimension(:), allocatable | buf_m3 |
| real(kind=8), dimension(:), allocatable | buf_m |
| real(kind=8), dimension(:), allocatable | buf_m3s |
| Dummy buffers holding the terms /f$M_i. More... | |
| real(kind=8), dimension(:), allocatable | anoise |
| Additive noise term. More... | |
| real(kind=8), dimension(:), allocatable | dwar |
| real(kind=8), dimension(:), allocatable | dwau |
| real(kind=8), dimension(:), allocatable | dwor |
| real(kind=8), dimension(:), allocatable | dwou |
| Standard gaussian noise buffers. More... | |
| real(kind=8), dimension(:,:), allocatable | x1 |
| Buffer holding the subsequent states of the first MAR. More... | |
| real(kind=8), dimension(:,:), allocatable | x2 |
| Buffer holding the subsequent states of the second MAR. More... | |
Module with the WL rk2 integration routines.
|
private |
Routine to compute the \(M_1\) term.
| y | Present state of the WL system |
Definition at line 106 of file rk2_WL_integrator.f90.
|
private |
Routine to compute the \(M_2\) term.
| y | Present state of the WL system |
Definition at line 115 of file rk2_WL_integrator.f90.
| subroutine, public rk2_wl_integrator::full_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), intent(in) | dtn, | ||
| real(kind=8), dimension(0:ndim), intent(out) | res | ||
| ) |
Routine to perform an integration step (Heun algorithm) of the full stochastic system. The incremented time is returned.
| y | Initial point. |
| t | Actual integration time |
| dt | Integration timestep. |
| dtn | Stochastoc integration timestep (normally square-root of dt). |
| res | Final point after the step. |
Definition at line 185 of file rk2_WL_integrator.f90.
| subroutine, public rk2_wl_integrator::init_integrator | ( | ) |
| subroutine, public rk2_wl_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), intent(in) | dtn, | ||
| real(kind=8), dimension(0:ndim), intent(out) | res, | ||
| real(kind=8), dimension(0:ndim), intent(out) | tend | ||
| ) |
Routine to perform an integration step (Heun algorithm) of the WL system. The incremented time is returned.
| y | Initial point. |
| t | Actual integration time |
| dt | Integration timestep. |
| dtn | Stochastic integration timestep (normally square-root of dt). |
| res | Final point after the step. |
| tend | Partial or full tendencies used to perform the step (used for debugging). |
Definition at line 132 of file rk2_WL_integrator.f90.
|
private |
Additive noise term.
Definition at line 33 of file rk2_WL_integrator.f90.
|
private |
Definition at line 31 of file rk2_WL_integrator.f90.
|
private |
Integration buffers.
Definition at line 31 of file rk2_WL_integrator.f90.
|
private |
Definition at line 32 of file rk2_WL_integrator.f90.
|
private |
Definition at line 32 of file rk2_WL_integrator.f90.
|
private |
Definition at line 32 of file rk2_WL_integrator.f90.
|
private |
Definition at line 32 of file rk2_WL_integrator.f90.
|
private |
Dummy buffers holding the terms /f$M_i.
Definition at line 32 of file rk2_WL_integrator.f90.
|
private |
Definition at line 31 of file rk2_WL_integrator.f90.
|
private |
Definition at line 34 of file rk2_WL_integrator.f90.
|
private |
Definition at line 34 of file rk2_WL_integrator.f90.
|
private |
Definition at line 34 of file rk2_WL_integrator.f90.
|
private |
Standard gaussian noise buffers.
Definition at line 34 of file rk2_WL_integrator.f90.
|
private |
Buffer holding the subsequent states of the first MAR.
Definition at line 36 of file rk2_WL_integrator.f90.
|
private |
Buffer holding the subsequent states of the second MAR.
Definition at line 37 of file rk2_WL_integrator.f90.
1.8.11