Exact (Newton-iterative) Riemann Solver.
This is the implemention for conservative_compressible Riemann states.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=R8P), | public | :: | tolerance | = | 1.e-10_R8P | Tolerance on Newton convergence. |
Initialize solver.
Initialize solver.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(riemann_solver_compressible_exact), | intent(inout) | :: | self | Solver. |
||
| character(len=*), | intent(in), | optional | :: | config | Configuration for solver algorithm. |
Solve Riemann Problem.
Solve Riemann Problem.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(riemann_solver_compressible_exact), | 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. |
type, extends(riemann_solver_object) :: riemann_solver_compressible_exact
!< Exact (Newton-iterative) Riemann Solver.
!<
!< @note This is the implemention for [[conservative_compressible]] Riemann states.
real(R8P) :: tolerance=1.e-10_R8P !< Tolerance on Newton convergence.
contains
! public deferred methods
procedure, pass(self) :: initialize !< Initialize solver.
procedure, pass(self) :: solve !< Solve Riemann Problem.
endtype riemann_solver_compressible_exact