![]() |
A Modular Arbitrary-Order Ocean-Atmosphere Model -- Stochastic implementation
|
Tangent Linear (TL) and Adjoint (AD) model versions of MAOOAM. Integrators module. More...
Functions/Subroutines | |
subroutine, public | init_tl_ad_integrator |
Routine to initialise the integration buffers. More... | |
subroutine, public | ad_step (y, ystar, t, dt, res) |
Routine to perform an integration step (Heun algorithm) of the adjoint model. The incremented time is returned. More... | |
subroutine, public | tl_step (y, ystar, t, dt, res) |
Routine to perform an integration step (Heun algorithm) of the tangent linear model. The incremented time is returned. More... | |
Variables | |
real(kind=8), dimension(:), allocatable | buf_y1 |
Buffer to hold the intermediate position (Heun algorithm) of the tangent linear model. More... | |
real(kind=8), dimension(:), allocatable | buf_f0 |
Buffer to hold tendencies at the initial position of the tangent linear model. More... | |
real(kind=8), dimension(:), allocatable | buf_f1 |
Buffer to hold tendencies at the intermediate position of the tangent linear model. More... | |
real(kind=8), dimension(:), allocatable | buf_ka |
Buffer to hold tendencies in the RK4 scheme for the tangent linear model. More... | |
real(kind=8), dimension(:), allocatable | buf_kb |
Buffer to hold tendencies in the RK4 scheme for the tangent linear model. More... | |
Tangent Linear (TL) and Adjoint (AD) model versions of MAOOAM. Integrators module.
subroutine public tl_ad_integrator::ad_step | ( | real(kind=8), dimension(0:ndim), intent(in) | y, |
real(kind=8), dimension(0:ndim), intent(in) | ystar, | ||
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) of the adjoint model. The incremented time is returned.
Routine to perform an integration step (RK4 algorithm) of the adjoint model. The incremented time is returned.
y | Initial point. |
ystar | Adjoint model at the point ystar. |
t | Actual integration time |
dt | Integration timestep. |
res | Final point after the step. |
Definition at line 61 of file rk2_tl_ad_integrator.f90.
subroutine public tl_ad_integrator::init_tl_ad_integrator | ( | ) |
Routine to initialise the integration buffers.
Routine to initialise the TL-AD integration bufers.
Definition at line 41 of file rk2_tl_ad_integrator.f90.
subroutine public tl_ad_integrator::tl_step | ( | real(kind=8), dimension(0:ndim), intent(in) | y, |
real(kind=8), dimension(0:ndim), intent(in) | ystar, | ||
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) of the tangent linear model. The incremented time is returned.
Routine to perform an integration step (RK4 algorithm) of the tangent linear model. The incremented time is returned.
y | Initial point. |
ystar | Adjoint model at the point ystar. |
t | Actual integration time |
dt | Integration timestep. |
res | Final point after the step. |
Definition at line 86 of file rk2_tl_ad_integrator.f90.
|
private |
Buffer to hold tendencies at the initial position of the tangent linear model.
Definition at line 31 of file rk2_tl_ad_integrator.f90.
|
private |
Buffer to hold tendencies at the intermediate position of the tangent linear model.
Definition at line 32 of file rk2_tl_ad_integrator.f90.
|
private |
Buffer to hold tendencies in the RK4 scheme for the tangent linear model.
Definition at line 33 of file rk4_tl_ad_integrator.f90.
|
private |
Buffer to hold tendencies in the RK4 scheme for the tangent linear model.
Definition at line 34 of file rk4_tl_ad_integrator.f90.
|
private |
Buffer to hold the intermediate position (Heun algorithm) of the tangent linear model.
Buffer to hold the intermediate position of the tangent linear model.
Definition at line 30 of file rk2_tl_ad_integrator.f90.