foreseer_riemann_solver_object Module

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

Define the abstract Riemann solver of FORESEER library.

Used By

module~~foreseer_riemann_solver_object~~UsedByGraph module~foreseer_riemann_solver_object foreseer_riemann_solver_object module~foreseer_riemann_solver_compressible_exact foreseer_riemann_solver_compressible_exact module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_exact module~foreseer_riemann_solver_compressible_llf foreseer_riemann_solver_compressible_llf module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_llf module~foreseer_riemann_solver_compressible_pvl foreseer_riemann_solver_compressible_pvl module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_pvl module~foreseer foreseer module~foreseer_riemann_solver_object->module~foreseer module~foreseer_riemann_solver_compressible_roe foreseer_riemann_solver_compressible_roe module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_roe module~foreseer_riemann_solver_compressible_hllc foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_solver_object->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 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_solver_compressible_roe->module~foreseer module~foreseer_riemann_solver_compressible_hllc->module~foreseer module~foreseer_euler_1d->program~foreseer_test_shock_tube
Help


Abstract Interfaces

abstract interface

Abstract interfaces of riemann_solver_object deferred methods.

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

    Return a pretty-formatted object description.

    Arguments

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

    Solver.

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

    Prefixing string.

    Return Value character(len=:), allocatable

    Description.

abstract interface

Abstract interfaces of riemann_solver_object deferred methods.

  • private subroutine initialize_interface(self, config)

    Initialize solver.

    Arguments

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

    Solver.

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

    Configuration for solver algorithm.

abstract interface

Abstract interfaces of riemann_solver_object deferred methods.

  • private subroutine solve_interface(self, eos_left, state_left, eos_right, state_right, normal, fluxes)

    Solve Riemann Problem.

    Arguments

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

    Solver.

    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.

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

    Fluxes of the Riemann Problem solution.


Derived Types

type, public, abstract :: riemann_solver_object

Abstract Riemann Solver.

Type-Bound Procedures

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

Initialize solver.

procedure(solve_interface), public, pass(self) :: solve

Solve Riemann Problem.