foreseer_conservative_object Module

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

Define the abstract conservative state of a Riemann Problem for FORESEER library.

Used By

module~~foreseer_conservative_object~~UsedByGraph module~foreseer_conservative_object foreseer_conservative_object module~foreseer_riemann_solver_compressible_exact foreseer_riemann_solver_compressible_exact module~foreseer_conservative_object->module~foreseer_riemann_solver_compressible_exact module~foreseer_riemann_solver_compressible_roe foreseer_riemann_solver_compressible_roe module~foreseer_conservative_object->module~foreseer_riemann_solver_compressible_roe module~foreseer_riemann_pattern_compressible_pvl foreseer_riemann_pattern_compressible_pvl module~foreseer_conservative_object->module~foreseer_riemann_pattern_compressible_pvl module~foreseer_riemann_pattern_object foreseer_riemann_pattern_object module~foreseer_conservative_object->module~foreseer_riemann_pattern_object module~foreseer_riemann_solver_compressible_pvl foreseer_riemann_solver_compressible_pvl module~foreseer_conservative_object->module~foreseer_riemann_solver_compressible_pvl module~foreseer foreseer module~foreseer_conservative_object->module~foreseer module~foreseer_conservative_compressible foreseer_conservative_compressible module~foreseer_conservative_object->module~foreseer_conservative_compressible module~foreseer_riemann_solver_compressible_llf foreseer_riemann_solver_compressible_llf module~foreseer_conservative_object->module~foreseer_riemann_solver_compressible_llf module~foreseer_riemann_solver_object foreseer_riemann_solver_object module~foreseer_conservative_object->module~foreseer_riemann_solver_object module~foreseer_riemann_solver_compressible_hllc foreseer_riemann_solver_compressible_hllc module~foreseer_conservative_object->module~foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_pattern_compressible_object foreseer_riemann_pattern_compressible_object module~foreseer_conservative_object->module~foreseer_riemann_pattern_compressible_object module~foreseer_riemann_solver_compressible_exact->module~foreseer module~foreseer_riemann_solver_compressible_roe->module~foreseer module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_exact module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_roe module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_pvl module~foreseer_riemann_pattern_compressible_pvl->module~foreseer module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_llf module~foreseer_riemann_pattern_compressible_pvl->module~foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_pattern_object->module~foreseer module~foreseer_riemann_pattern_object->module~foreseer_riemann_pattern_compressible_object 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_conservative_compressible->module~foreseer_riemann_solver_compressible_exact module~foreseer_conservative_compressible->module~foreseer_riemann_solver_compressible_roe module~foreseer_conservative_compressible->module~foreseer_riemann_solver_compressible_pvl module~foreseer_conservative_compressible->module~foreseer module~foreseer_conservative_compressible->module~foreseer_riemann_solver_compressible_llf module~foreseer_conservative_compressible->module~foreseer_riemann_solver_compressible_hllc module~foreseer_conservative_compressible->module~foreseer_riemann_pattern_compressible_object module~foreseer_compressible_transformations foreseer_compressible_transformations module~foreseer_conservative_compressible->module~foreseer_compressible_transformations module~foreseer_riemann_solver_compressible_llf->module~foreseer module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_exact module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_roe module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_pvl module~foreseer_riemann_solver_object->module~foreseer module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_llf module~foreseer_riemann_solver_object->module~foreseer_riemann_solver_compressible_hllc module~foreseer_riemann_solver_compressible_hllc->module~foreseer module~foreseer_riemann_pattern_compressible_object->module~foreseer_riemann_pattern_compressible_pvl module~foreseer_riemann_pattern_compressible_object->module~foreseer module~foreseer_euler_1d->program~foreseer_test_shock_tube module~foreseer_compressible_transformations->module~foreseer
Help


Abstract Interfaces

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private pure function array_interface(self) result(array_)

    Return serialized array of conservative.

    Arguments

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

    Conservative.

    Return Value real(kind=R8P), allocatable, (:)

    Serialized array of conservative.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

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

    Compute conservative fluxes.

    Arguments

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

    Conservative.

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

    Equation of state.

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

    Normal (versor) of face where fluxes are given.

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

    Conservative fluxes.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private function cons_operator_real(lhs, rhs) result(operator_result)

    Operator cons.op.real.

    Arguments

    Type IntentOptional AttributesName
    class(conservative_object), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value class(conservative_object), allocatable

    Operator result.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

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

    Return a pretty-formatted object description.

    Arguments

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

    Conservative.

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

    Prefixing string.

    Return Value character(len=:), allocatable

    Description.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private elemental subroutine destroy_interface(self)

    Destroy conservative.

    Arguments

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

    Conservative.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private elemental function pressure_interface(self, eos) result(pressure_)

    Return pressure value.

    Arguments

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

    Conservative.

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

    Equation of state.

    Return Value real(kind=R8P)

    Pressure value.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private function real_operator_cons(lhs, rhs) result(operator_result)

    Operator real.op.cons.

    Arguments

    Type IntentOptional AttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

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

    Right hand side.

    Return Value class(conservative_object), allocatable

    Operator result.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private function unary_operator(self) result(operator_result)

    Unary operator .op.cons.

    Arguments

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

    Conservative.

    Return Value class(conservative_object), allocatable

    Operator result.

abstract interface

Abstract interfaces of deferred methods of conservative_object.

  • private elemental function velocity_interface(self) result(velocity_)

    Return velocity vector.

    Arguments

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

    Conservative.

    Return Value type(vector)

    Velocity vector.


Derived Types

type, public, abstract :: conservative_object

Convervative object class.

Type-Bound Procedures

procedure(symmetric_operator), public, pass(lhs) :: add

Operator +.

procedure(array_interface), public, pass(self) :: array

Return serialized array of conservative.

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

Overload =.

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

Compute conservative fluxes.

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

Operator =.

procedure(cons_operator_real), public, pass(lhs) :: cons_divide_real

Operator cons / real.

procedure(symmetric_operator), public, pass(lhs) :: cons_multiply_cons

Operator *.

procedure(cons_operator_real), public, pass(lhs) :: cons_multiply_real

Operator cons * real.

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

Return pretty-printed object description.

procedure(destroy_interface), public, pass(self) :: destroy

Destroy conservative.

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

Initialize conservative.

procedure(unary_operator), public, pass(self) :: negative

Unary operator - cons.

generic, public :: operator(*) => cons_multiply_cons, cons_multiply_real, real_multiply_cons

Overload *.

generic, public :: operator(+) => add, positive

Overload +.

generic, public :: operator(-) => sub, negative

Overload -.

generic, public :: operator(/) => cons_divide_real

Overload /.

procedure(unary_operator), public, pass(self) :: positive

Unary operator + cons.

procedure(pressure_interface), public, pass(self) :: pressure

Return pressure value.

procedure(real_operator_cons), public, pass(rhs) :: real_multiply_cons

Operator real * cons.

procedure(symmetric_operator), public, pass(lhs) :: sub

Operator -.

procedure(velocity_interface), public, pass(self) :: velocity

Return velocity vector.