Choral
Functions/Subroutines
ode_sl_nl_dc_mod Module Reference

DEFERRED CORRECTION SOLVERS FOR A SEMILINEAR ODE coupled with a non-linear ODE system More...

Functions/Subroutines

logical function, public check_ode_method_sl_nl_dc (method)
 is 'method' a DC method for SL_NL problem ? More...
 
subroutine memsize_ode_sl_nl_dc (n_Y, n_FY, n_V, method)
 required sizes to allocate memory More...
 
subroutine, public create_ode_sl_nl_dc_sol (sol, pb, method)
 Create the solution data structure. More...
 
subroutine init_nl_dc (sol, pb, meth, t0, dt, KInv)
 
subroutine init_dc_2 (sol, pb, t0, dt, KInv)
 
subroutine init_dc_3 (sol, pb, t0, dt, KInv)
 
subroutine, public solve_ode_sl_nl_dc (sol, pb, t0, T, dt, meth, out, check_overflow, Kinv, kry)
 solve : multistep with constant time step More...
 
subroutine sl_nl_dc_2 (sol, dt, t, pb, KInv)
 DC order 2. More...
 
subroutine sl_nl_dc_3 (sol, dt, t, pb, KInv)
 DC order 3. More...
 
subroutine perm2 (T)
 
subroutine perm3 (T)
 

Detailed Description

DEFERRED CORRECTION SOLVERS FOR A SEMILINEAR ODE coupled with a non-linear ODE system

Solvers for ODE_PB_SL_NL, see ode_problem_mod detailed description.

Deferred correction, see "choral/Doc/doc_perso/ode_DC.pdf"

Author
Charles Pierre

Function/Subroutine Documentation

◆ check_ode_method_sl_nl_dc()

logical function, public ode_sl_nl_dc_mod::check_ode_method_sl_nl_dc ( integer, intent(in)  method)

is 'method' a DC method for SL_NL problem ?

Definition at line 44 of file ode_SL_NL_DC_mod.f90.

◆ create_ode_sl_nl_dc_sol()

subroutine, public ode_sl_nl_dc_mod::create_ode_sl_nl_dc_sol ( type(ode_solution), intent(inout)  sol,
type(ode_problem), intent(in)  pb,
integer, intent(in)  method 
)

Create the solution data structure.

Definition at line 82 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ init_dc_2()

subroutine ode_sl_nl_dc_mod::init_dc_2 ( type(ode_solution), intent(inout)  sol,
type(ode_problem), intent(in)  pb,
real(rp), intent(in)  t0,
real(rp), intent(in)  dt,
procedure(linsystem_solver)  KInv 
)
private

Definition at line 121 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ init_dc_3()

subroutine ode_sl_nl_dc_mod::init_dc_3 ( type(ode_solution), intent(inout)  sol,
type(ode_problem), intent(in)  pb,
real(rp), intent(in)  t0,
real(rp), intent(in)  dt,
procedure(linsystem_solver)  KInv 
)
private

Definition at line 170 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ init_nl_dc()

subroutine ode_sl_nl_dc_mod::init_nl_dc ( type(ode_solution), intent(inout)  sol,
type(ode_problem), intent(in)  pb,
integer, intent(in)  meth,
real(rp), intent(in)  t0,
real(rp), intent(in)  dt,
procedure(linsystem_solver)  KInv 
)
private

Definition at line 99 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ memsize_ode_sl_nl_dc()

subroutine ode_sl_nl_dc_mod::memsize_ode_sl_nl_dc ( integer, intent(out)  n_Y,
integer, intent(out)  n_FY,
integer, intent(out)  n_V,
integer, intent(in)  method 
)
private

required sizes to allocate memory

Definition at line 61 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ perm2()

subroutine ode_sl_nl_dc_mod::perm2 ( integer, dimension(2), intent(inout)  T)
private

Definition at line 673 of file ode_SL_NL_DC_mod.f90.

◆ perm3()

subroutine ode_sl_nl_dc_mod::perm3 ( integer, dimension(3), intent(inout)  T)
private

Definition at line 685 of file ode_SL_NL_DC_mod.f90.

◆ sl_nl_dc_2()

subroutine ode_sl_nl_dc_mod::sl_nl_dc_2 ( type(ode_solution), intent(inout)  sol,
real(rp), intent(in)  dt,
real(rp), intent(in)  t,
type(ode_problem), intent(in)  pb,
procedure(linsystem_solver)  KInv 
)
private

DC order 2.

Definition at line 382 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ sl_nl_dc_3()

subroutine ode_sl_nl_dc_mod::sl_nl_dc_3 ( type(ode_solution), intent(inout)  sol,
real(rp), intent(in)  dt,
real(rp), intent(in)  t,
type(ode_problem), intent(in)  pb,
procedure(linsystem_solver)  KInv 
)
private

DC order 3.

Definition at line 502 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function:

◆ solve_ode_sl_nl_dc()

subroutine, public ode_sl_nl_dc_mod::solve_ode_sl_nl_dc ( type(ode_solution), intent(inout)  sol,
type(ode_problem), intent(in)  pb,
real(rp), intent(in)  t0,
real(rp), intent(in)  T,
real(rp), intent(in)  dt,
integer, intent(in)  meth,
procedure(ode_output_proc out,
logical, intent(in)  check_overflow,
procedure(linsystem_solver), optional  Kinv,
type(krylov), optional  kry 
)

solve : multistep with constant time step

Definition at line 242 of file ode_SL_NL_DC_mod.f90.

Here is the call graph for this function: