|
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 | Equation = meta::Equation< const Hll< Equation, Signals > & > |
| using | Complete = ::fub::Complete< Equation > |
| using | Conservative = ::fub::Conservative< Equation > |
| using | CompleteArray = ::fub::CompleteArray< Equation > |
| using | ConservativeArray = ::fub::ConservativeArray< Equation > |
Public Member Functions | |
| const Hll< Equation, Signals > & | Base () const noexcept |
| Returns the Implementation class which will be used to compute single fluxes. More... | |
| Hll< Equation, Signals > & | Base () noexcept |
| Returns the Implementation class which will be used to compute single fluxes. More... | |
| void | ComputeNumericFluxes (const View< Conservative > &fluxes, const View< const Complete > &states, Duration dt, double dx, Direction dir) |
| This function computes numerical fluxes. More... | |
| void | ComputeNumericFluxes (execution::SequentialTag, const View< Conservative > &fluxes, const View< const Complete > &states, Duration dt, double dx, Direction dir) |
| This function computes numerical fluxes. More... | |
| void | ComputeNumericFluxes (execution::SimdTag, const View< Conservative > &fluxes, const View< const Complete > &states, Duration dt, double dx, Direction dir) |
| This function computes numerical fluxes. More... | |
| void | ComputeNumericFluxes (execution::OpenMpTag, const View< Conservative > &fluxes, const View< const Complete > &states, Duration dt, double dx, Direction dir) |
| This function computes numerical fluxes. More... | |
| void | ComputeNumericFluxes (execution::OpenMpSimdTag, const View< Conservative > &fluxes, const View< const Complete > &states, Duration dt, double dx, Direction dir) |
| This function computes numerical fluxes. More... | |
| double | ComputeStableDt (const View< const Complete > &states, double dx, Direction dir) |
| This function computes a time step size such that no signal will leave any cell covered by this view. More... | |
| double | ComputeStableDt (execution::SequentialTag, const View< const Complete > &states, double dx, Direction dir) |
| This function computes a time step size such that no signal will leave any cell covered by this view. More... | |
| double | ComputeStableDt (execution::SimdTag, const View< const Complete > &states, double dx, Direction dir) |
| This function computes a time step size such that no signal will leave any cell covered by this view. More... | |
| double | ComputeStableDt (execution::OpenMpTag, const View< const Complete > &states, double dx, Direction dir) |
| This function computes a time step size such that no signal will leave any cell covered by this view. More... | |
| double | ComputeStableDt (execution::OpenMpSimdTag, const View< const Complete > &states, double dx, Direction dir) |
| This function computes a time step size such that no signal will leave any cell covered by this view. More... | |
Static Public Member Functions | |
| static constexpr int | GetStencilWidth () noexcept |
| Returns the stencil width of this flux method. More... | |
| static constexpr int | GetStencilSize () noexcept |
| Returns the number of elements in a stencil of this flux method. More... | |
Public Attributes | |
| std::array< Complete, StencilSize > | stencil_ |
| Conservative | numeric_flux_ |
| std::array< CompleteArray, StencilSize > | stencil_array_ |
| ConservativeArray | numeric_flux_array_ |
Static Public Attributes | |
| static constexpr int | Rank |
| static constexpr std::size_t | StencilSize |
| Returns the number of elements in a stencil of this flux method (std::size_t version). More... | |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
noexceptinherited |
Returns the Implementation class which will be used to compute single fluxes.
Returns the Implementation class which will be used to compute single fluxes.
|
inherited |
This function computes numerical fluxes.
| [out] | fluxes | The destination view where numeric fluxes will be stored at. |
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dt | The time step size which will be used to compute the numerical flux. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes numerical fluxes.
| [out] | fluxes | The destination view where numeric fluxes will be stored at. |
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dt | The time step size which will be used to compute the numerical flux. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes numerical fluxes.
| [out] | fluxes | The destination view where numeric fluxes will be stored at. |
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dt | The time step size which will be used to compute the numerical flux. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes numerical fluxes.
| [out] | fluxes | The destination view where numeric fluxes will be stored at. |
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dt | The time step size which will be used to compute the numerical flux. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes numerical fluxes.
| [out] | fluxes | The destination view where numeric fluxes will be stored at. |
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dt | The time step size which will be used to compute the numerical flux. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes a time step size such that no signal will leave any cell covered by this view.
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes a time step size such that no signal will leave any cell covered by this view.
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes a time step size such that no signal will leave any cell covered by this view.
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes a time step size such that no signal will leave any cell covered by this view.
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
inherited |
This function computes a time step size such that no signal will leave any cell covered by this view.
| [in] | states | A view over cell states which will be used to fill the stencil for this method. |
| [in] | dir | The direction parameter specifies which directional flux method to use. |
| [in] | dx | The cell width size which will be used to compute the numerical flux. |
|
staticconstexprnoexceptinherited |
Returns the number of elements in a stencil of this flux method.
|
staticconstexprnoexceptinherited |
Returns the stencil width of this flux method.
|
inherited |
|
inherited |
|
staticconstexprinherited |
|
inherited |
|
inherited |
|
staticconstexprinherited |
Returns the number of elements in a stencil of this flux method (std::size_t version).