pf_mod_imex Module


Uses

  • module~~pf_mod_imex~~UsesGraph module~pf_mod_imex pf_mod_imex module~pf_mod_utils pf_mod_utils module~pf_mod_imex->module~pf_mod_utils module~pf_mod_dtype pf_mod_dtype module~pf_mod_imex->module~pf_mod_dtype module~pf_mod_utils->module~pf_mod_dtype module~pf_mod_timer pf_mod_timer module~pf_mod_utils->module~pf_mod_timer iso_c_binding iso_c_binding module~pf_mod_dtype->iso_c_binding module~pf_mod_timer->module~pf_mod_dtype

Contents


Interfaces

interface

  • public subroutine pf_f_eval_p(this, y, t, level, f, piece)

    Arguments

    Type IntentOptional AttributesName
    class(pf_imex_t), intent(inout) :: this
    class(pf_encap_t), intent(in) :: y
    real(kind=pfdp), intent(in) :: t
    integer, intent(in) :: level
    class(pf_encap_t), intent(inout) :: f
    integer, intent(in) :: piece

interface

  • public subroutine pf_f_comp_p(this, y, t, dt, rhs, level, f, piece)

    Arguments

    Type IntentOptional AttributesName
    class(pf_imex_t), intent(inout) :: this
    class(pf_encap_t), intent(inout) :: y
    real(kind=pfdp), intent(in) :: t
    real(kind=pfdp), intent(in) :: dt
    class(pf_encap_t), intent(in) :: rhs
    integer, intent(in) :: level
    class(pf_encap_t), intent(inout) :: f
    integer, intent(in) :: piece

Derived Types

type, public, abstract, extends(pf_sweeper_t) :: pf_imex_t

IMEX SDC sweeper type (old style), extends abstract sweeper

Components

TypeVisibility AttributesNameInitial
integer, public :: npieces
logical, public :: use_LUq
real(kind=pfdp), public, allocatable:: SdiffE(:,:)
real(kind=pfdp), public, allocatable:: SdiffI(:,:)

Type-Bound Procedures

procedure(pf_f_eval_p), public :: f_eval
procedure(pf_f_comp_p), public :: f_comp
procedure, public :: sweep => imex_sweep
procedure, public :: initialize => imex_initialize
procedure, public :: evaluate => imex_evaluate
procedure, public :: integrate => imex_integrate
procedure, public :: residual => imex_residual
procedure, public :: spreadq0 => imex_spreadq0
procedure, public :: evaluate_all => imex_evaluate_all
procedure, public :: destroy => imex_destroy
procedure, public :: imex_destroy

Subroutines

public subroutine imex_sweep(this, pf, lev, t0, dt)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
type(pf_pfasst_t), intent(inout) :: pf
class(pf_level_t), intent(inout) :: lev
real(kind=pfdp), intent(in) :: t0
real(kind=pfdp), intent(in) :: dt

public subroutine imex_evaluate(this, lev, t, m)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev
real(kind=pfdp), intent(in) :: t
integer, intent(in) :: m

public subroutine imex_initialize(this, lev)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev

public subroutine imex_destroy(this, lev)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev

public subroutine imex_integrate(this, lev, qSDC, fSDC, dt, fintSDC)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(in) :: lev
class(pf_encap_t), intent(in) :: qSDC(:)
class(pf_encap_t), intent(in) :: fSDC(:,:)
real(kind=pfdp), intent(in) :: dt
class(pf_encap_t), intent(inout) :: fintSDC(:)

public subroutine imex_residual(this, lev, dt)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev
real(kind=pfdp), intent(in) :: dt

public subroutine imex_spreadq0(this, lev, t0)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev
real(kind=pfdp), intent(in) :: t0

public subroutine imex_evaluate_all(this, lev, t)

Arguments

Type IntentOptional AttributesName
class(pf_imex_t), intent(inout) :: this
class(pf_level_t), intent(inout) :: lev
real(kind=pfdp), intent(in) :: t(:)