|
Finite Volume Solver
prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
|
#include <HllMethod.hpp>
Public Types | |
| using | ConservativeArray = ::fub::ConservativeArray< Equation > |
| using | CompleteArray = ::fub::CompleteArray< Equation > |
| using | Base = HllBase< Equation, SignalSpeeds > |
| using | Equation = Equation |
| using | Complete = typename Equation::Complete |
| using | Conservative = typename Equation::Conservative |
Public Member Functions | |
| void | SolveRiemannProblem (CompleteArray &solution, const CompleteArray &left, const CompleteArray &right, Direction dir) |
| void | ComputeNumericFlux (ConservativeArray &numeric_flux, span< const CompleteArray, 2 > states, Duration dt, double dx, Direction dir) |
| void | ComputeNumericFlux (ConservativeArray &numeric_flux, Array1d face_fraction, span< const CompleteArray, 2 > states, span< const Array1d, 2 > volume_fraction, Duration dt, double dx, Direction dir) |
| Array1d | ComputeStableDt (span< const CompleteArray, 2 > states, double dx, Direction dir) |
| Array1d | ComputeStableDt (span< const CompleteArray, 2 > states, Array1d face_fraction, span< const Array1d, 2 > volume_fraction, double dx, Direction dir) |
| void | SolveRiemannProblem (Complete &solution, const Complete &left, const Complete &right, Direction dir) |
| Computes an approximate solution to the rieman problem defined by left and right states. More... | |
| void | ComputeNumericFlux (Conservative &numeric_flux, span< const Complete, 2 > states, Duration dt, double dx, Direction dir) |
| double | ComputeStableDt (span< const Complete, 2 > states, double dx, Direction dir) |
| const SignalSpeeds & | GetSignalSpeeds () const noexcept |
| Returns the strategy object which computes the signal speeds for this method. More... | |
| SignalSpeeds & | GetSignalSpeeds () noexcept |
| Returns the strategy object which computes the signal speeds for this method. More... | |
| const Equation & | GetEquation () const noexcept |
| Returns the underlying equations object. More... | |
| Equation & | GetEquation () noexcept |
| Returns the underlying equations object. More... | |
Static Public Member Functions | |
| static constexpr int | GetStencilWidth () noexcept |
| Returns the stencil width of this method. More... | |
Private Attributes | |
| ConservativeArray | flux_left_array_ |
| ConservativeArray | flux_right_array_ |
| Equation | equation_ |
| SignalSpeeds | signal_speeds_ |
| Conservative | flux_left_ |
| Conservative | flux_right_ |
| using fub::HllArrayBase< Equation, SignalSpeeds, true >::Base = HllBase<Equation, SignalSpeeds> |
|
inherited |
| using fub::HllArrayBase< Equation, SignalSpeeds, true >::CompleteArray = ::fub::CompleteArray<Equation> |
|
inherited |
| using fub::HllArrayBase< Equation, SignalSpeeds, true >::ConservativeArray = ::fub::ConservativeArray<Equation> |
|
inherited |
|
inherited |
| void fub::HllArrayBase< Equation, SignalSpeeds, true >::ComputeNumericFlux | ( | ConservativeArray & | numeric_flux, |
| Array1d | face_fraction, | ||
| span< const CompleteArray, 2 > | states, | ||
| span< const Array1d, 2 > | volume_fraction, | ||
| Duration | dt, | ||
| double | dx, | ||
| Direction | dir | ||
| ) |
| void fub::HllArrayBase< Equation, SignalSpeeds, true >::ComputeNumericFlux | ( | ConservativeArray & | numeric_flux, |
| span< const CompleteArray, 2 > | states, | ||
| Duration | dt, | ||
| double | dx, | ||
| Direction | dir | ||
| ) |
|
inherited |
| Array1d fub::HllArrayBase< Equation, SignalSpeeds, true >::ComputeStableDt | ( | span< const CompleteArray, 2 > | states, |
| Array1d | face_fraction, | ||
| span< const Array1d, 2 > | volume_fraction, | ||
| double | dx, | ||
| Direction | dir | ||
| ) |
| Array1d fub::HllArrayBase< Equation, SignalSpeeds, true >::ComputeStableDt | ( | span< const CompleteArray, 2 > | states, |
| double | dx, | ||
| Direction | dir | ||
| ) |
|
inlinenoexceptinherited |
Returns the underlying equations object.
|
inlinenoexceptinherited |
Returns the underlying equations object.
|
inlinenoexceptinherited |
Returns the strategy object which computes the signal speeds for this method.
|
inlinenoexceptinherited |
Returns the strategy object which computes the signal speeds for this method.
|
inlinestaticconstexprnoexceptinherited |
Returns the stencil width of this method.
|
inherited |
Computes an approximate solution to the rieman problem defined by left and right states.
| [out] | solution | The solution to the riemann problem will be stored here. |
| [in] | left | The left state of the riemann problem |
| [in] | right | The right state of the riemann problem. |
| [in] | dir | The direction in which the riemann problem will be solved. |
| void fub::HllArrayBase< Equation, SignalSpeeds, true >::SolveRiemannProblem | ( | CompleteArray & | solution, |
| const CompleteArray & | left, | ||
| const CompleteArray & | right, | ||
| Direction | dir | ||
| ) |
|
privateinherited |
|
privateinherited |
|
private |
|
privateinherited |
|
private |
|
privateinherited |