foreseer_riemann_pattern_object Module

module~~foreseer_riemann_pattern_object~~UsesGraph module~foreseer_riemann_pattern_object foreseer_riemann_pattern_object module~foreseer_conservative_object foreseer_conservative_object module~foreseer_conservative_object->module~foreseer_riemann_pattern_object vecfor vecfor vecfor->module~foreseer_riemann_pattern_object vecfor->module~foreseer_conservative_object module~foreseer_eos_object foreseer_eos_object module~foreseer_eos_object->module~foreseer_riemann_pattern_object module~foreseer_eos_object->module~foreseer_conservative_object penf penf penf->module~foreseer_conservative_object penf->module~foreseer_eos_object
Help

Define the abstract Riemann (states) pattern for FORESEER library.

Used By

module~~foreseer_riemann_pattern_object~~UsedByGraph module~foreseer_riemann_pattern_object foreseer_riemann_pattern_object module~foreseer foreseer module~foreseer_riemann_pattern_object->module~foreseer module~foreseer_riemann_pattern_compressible_object foreseer_riemann_pattern_compressible_object module~foreseer_riemann_pattern_object->module~foreseer_riemann_pattern_compressible_object program~foreseer_test_riemann_solver_compressible_pvl foreseer_test_riemann_solver_compressible_pvl module~foreseer->program~foreseer_test_riemann_solver_compressible_pvl module~foreseer_euler_1d foreseer_euler_1d module~foreseer->module~foreseer_euler_1d program~foreseer_test_conservative_compressible foreseer_test_conservative_compressible module~foreseer->program~foreseer_test_conservative_compressible program~foreseer_test_riemann_solver_compressible_hllc~2 foreseer_test_riemann_solver_compressible_hllc module~foreseer->program~foreseer_test_riemann_solver_compressible_hllc~2 program~foreseer_test_eos_compressible foreseer_test_eos_compressible module~foreseer->program~foreseer_test_eos_compressible program~foreseer_test_shock_tube foreseer_test_shock_tube module~foreseer->program~foreseer_test_shock_tube program~foreseer_test_riemann_solver_compressible_llf foreseer_test_riemann_solver_compressible_llf module~foreseer->program~foreseer_test_riemann_solver_compressible_llf program~foreseer_test_compressible_transformations foreseer_test_compressible_transformations module~foreseer->program~foreseer_test_compressible_transformations program~foreseer_test_riemann_solver_compressible_hllc foreseer_test_riemann_solver_compressible_hllc module~foreseer->program~foreseer_test_riemann_solver_compressible_hllc program~foreseer_test_primitive_compressible foreseer_test_primitive_compressible module~foreseer->program~foreseer_test_primitive_compressible program~foreseer_test_riemann_solver_compressible_roe foreseer_test_riemann_solver_compressible_roe module~foreseer->program~foreseer_test_riemann_solver_compressible_roe module~foreseer_riemann_pattern_compressible_object->module~foreseer module~foreseer_riemann_pattern_compressible_pvl foreseer_riemann_pattern_compressible_pvl module~foreseer_riemann_pattern_compressible_object->module~foreseer_riemann_pattern_compressible_pvl module~foreseer_euler_1d->program~foreseer_test_shock_tube module~foreseer_riemann_pattern_compressible_pvl->module~foreseer module~foreseer_riemann_solver_compressible_exact foreseer_riemann_solver_compressible_exact module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_exact module~foreseer_riemann_solver_compressible_llf foreseer_riemann_solver_compressible_llf module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_llf module~foreseer_riemann_solver_compressible_pvl foreseer_riemann_solver_compressible_pvl module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_pvl module~foreseer_riemann_solver_compressible_roe foreseer_riemann_solver_compressible_roe module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_roe module~foreseer_riemann_solver_compressible_hllc foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_solver_compressible_exact->module~foreseer module~foreseer_riemann_solver_compressible_llf->module~foreseer module~foreseer_riemann_solver_compressible_pvl->module~foreseer module~foreseer_riemann_solver_compressible_roe->module~foreseer module~foreseer_riemann_solver_compressible_hllc->module~foreseer
Help


Abstract Interfaces

abstract interface

Abstract interfaces of deferred methods of riemann_pattern_object.

abstract interface

Abstract interfaces of deferred methods of riemann_pattern_object.

  • private elemental subroutine compute_fluxes_interface(self, normal, fluxes)

    Compute fluxes at initial discontinuity interface.

    Arguments

    Type IntentOptional AttributesName
    class(riemann_pattern_object), intent(in) :: self

    Riemann (states) pattern solution.

    type(vector), intent(in) :: normal

    Normal (versor) of face where fluxes are given.

    class(conservative_object), intent(inout) :: fluxes

    Fluxes at initial discontinuity interface.

abstract interface

Abstract interfaces of deferred methods of riemann_pattern_object.

  • private pure subroutine compute_waves_interface(self)

    Compute fluxes at initial discontinuity interface.

    Arguments

    Type IntentOptional AttributesName
    class(riemann_pattern_object), intent(inout) :: self

    Riemann (states) pattern solution.

abstract interface

Abstract interfaces of deferred methods of riemann_pattern_object.

  • private pure function description_interface(self, prefix) result(desc)

    Return a pretty-formatted object description.

    Arguments

    Type IntentOptional AttributesName
    class(riemann_pattern_object), intent(in) :: self

    Riemann pattern.

    character(len=*), intent(in), optional :: prefix

    Prefixing string.

    Return Value character(len=:), allocatable

    Description.

abstract interface

Abstract interfaces of deferred methods of riemann_pattern_object.

  • private elemental subroutine initialize_interface(self, eos_left, state_left, eos_right, state_right, normal)

    Initialize pattern with left and right states.

    Arguments

    Type IntentOptional AttributesName
    class(riemann_pattern_object), intent(inout) :: self

    Riemann (states) pattern solution.

    class(eos_object), intent(in) :: eos_left

    Equation of state for left state.

    class(conservative_object), intent(in) :: state_left

    Left Riemann state.

    class(eos_object), intent(in) :: eos_right

    Equation of state for right state.

    class(conservative_object), intent(in) :: state_right

    Right Riemann state.

    type(vector), intent(in) :: normal

    Normal (versor) of face where fluxes are given.


Derived Types

type, public, abstract :: riemann_pattern_object

Riemann (states) pattern object class.

Type-Bound Procedures

generic, public :: assignment(=) => rpat_assign_rpat

Overload =.

procedure(compute_fluxes_interface), public, pass(self) :: compute_fluxes

Compute fluxes at interface.

procedure(compute_waves_interface), public, pass(self) :: compute_waves

Compute waves speed.

procedure(description_interface), public, pass(self) :: description

Return pretty-printed object description.

procedure(initialize_interface), public, pass(self) :: initialize

Initialize pattern with left/right states.

procedure(assignment_interface), public, pass(lhs) :: rpat_assign_rpat

Operator =.