Choral
Private Member Functions | Private Attributes | List of all members
ode_opsplt_mod::ode_opsplt Interface Reference

The type opSplt defines operator spltting methods. More...

Collaboration diagram for ode_opsplt_mod::ode_opsplt:
Collaboration graph

Private Member Functions

final ode_opsplt_clear
 destructor More...
 
type(ode_opsplt) function ode_opsplt_create (method, L_meth, NL_meth, check_overflow)
  Constructor for the type ode_opSplt More...
 

Private Attributes

integer method = -1
 operator spltiting method descriptor More...
 
integer ns = -1
 number of stages More...
 
integer l_meth = -1
 one-step linear ode solver More...
 
integer nl_meth = -1
 one-step non-linear ode solver More...
 
real(rp), dimension(:), allocatable a_nl
 time step for the non-linear part at stage i = a_NL(i)*dt More...
 
real(rp), dimension(:), allocatable a_l
 time step for the linear part at stage i = a_L(i)*dt More...
 
logical, dimension(:), allocatable nl_first
 does stage i start with the non-linear solver ? if yes, NL_first(i) = TRUE More...
 
procedure(ode_lin_solver), pointer, nopass slv_l =>NULL()
 solver for the linear part More...
 
procedure(ode_nl_1s_solver), pointer, nopass slv_nl =>NULL()
 solver for the non-linear part More...
 
logical check_overflow = .FALSE.
 check overfolws when solving More...
 

Detailed Description

The type opSplt defines operator spltting methods.

See the description in ode_opsplt_mod detailed description.

Definition at line 77 of file ode_opSplt_mod.f90.

Member Function/Subroutine Documentation

◆ ode_opsplt_clear()

final ode_opsplt_mod::ode_opsplt::ode_opsplt_clear ( )
finalprivate

destructor

Definition at line 113 of file ode_opSplt_mod.f90.

Here is the call graph for this function:

◆ ode_opsplt_create()

type(ode_opsplt) function ode_opsplt_mod::ode_opsplt::ode_opsplt_create ( integer, intent(in)  method,
integer, intent(in)  L_meth,
integer, intent(in)  NL_meth,
logical, intent(in), optional  check_overflow 
)
private

Constructor for the type ode_opSplt

  • INPUT:
    • method = operator spltiting method
    • L_meth = one step solver for the linear part
    • NL_meth = one step solver for the non-linear part
    • optional: check_overflow = checks overflow when solving

Definition at line 183 of file ode_opSplt_mod.f90.

Member Data Documentation

◆ a_l

real(rp), dimension(:), allocatable ode_opsplt_mod::ode_opsplt::a_l
private

time step for the linear part at stage i = a_L(i)*dt

Definition at line 95 of file ode_opSplt_mod.f90.

◆ a_nl

real(rp), dimension(:), allocatable ode_opsplt_mod::ode_opsplt::a_nl
private

time step for the non-linear part at stage i = a_NL(i)*dt

Definition at line 92 of file ode_opSplt_mod.f90.

◆ check_overflow

logical ode_opsplt_mod::ode_opsplt::check_overflow = .FALSE.
private

check overfolws when solving

Definition at line 108 of file ode_opSplt_mod.f90.

◆ l_meth

integer ode_opsplt_mod::ode_opsplt::l_meth = -1
private

one-step linear ode solver

Definition at line 86 of file ode_opSplt_mod.f90.

◆ method

integer ode_opsplt_mod::ode_opsplt::method = -1
private

operator spltiting method descriptor

Definition at line 80 of file ode_opSplt_mod.f90.

◆ nl_first

logical, dimension(:), allocatable ode_opsplt_mod::ode_opsplt::nl_first
private

does stage i start with the non-linear solver ? if yes, NL_first(i) = TRUE

Definition at line 99 of file ode_opSplt_mod.f90.

◆ nl_meth

integer ode_opsplt_mod::ode_opsplt::nl_meth = -1
private

one-step non-linear ode solver

Definition at line 89 of file ode_opSplt_mod.f90.

◆ ns

integer ode_opsplt_mod::ode_opsplt::ns = -1
private

number of stages

Definition at line 83 of file ode_opSplt_mod.f90.

◆ slv_l

procedure(ode_lin_solver ), pointer, nopass ode_opsplt_mod::ode_opsplt::slv_l =>NULL()
private

solver for the linear part

Definition at line 102 of file ode_opSplt_mod.f90.

◆ slv_nl

procedure(ode_nl_1s_solver), pointer, nopass ode_opsplt_mod::ode_opsplt::slv_nl =>NULL()
private

solver for the non-linear part

Definition at line 105 of file ode_opSplt_mod.f90.


The documentation for this interface was generated from the following file: