Freeslip Wall Flux Boundary Condition This boundary condition is meant to set the boundary condition on a freesslip wall for 5-Moment This just sets the local x momentum flux to the presssure This isn't really correct as it is not the solution to the Riemann problem in which the velocity is supposed to flip signs from left to right, so really you need to solve the Riemann problem properly (which will depend on weather you get 2 shocks, 2 rarefaction waves, or some other combination) or put in the soluition of a approximate Riemann Solve directly.
More...
Freeslip Wall Flux Boundary Condition This boundary condition is meant to set the boundary condition on a freesslip wall for 5-Moment This just sets the local x momentum flux to the presssure This isn't really correct as it is not the solution to the Riemann problem in which the velocity is supposed to flip signs from left to right, so really you need to solve the Riemann problem properly (which will depend on weather you get 2 shocks, 2 rarefaction waves, or some other combination) or put in the soluition of a approximate Riemann Solve directly.
Therefore you should use a nodal boundary condition instead in which you set the ghost (right) value and use the approximate Riemann solver if to solve the numerical flux
|
| FiveMomentFreeslipWallBCFlux () |
| Constructor.
|
|
| ~FiveMomentFreeslipWallBCFlux () override |
| Destructor.
|
|
void | setup (const WxCryptSet &wxc) override |
| Setup.
|
|
const std::vector< int > & | getInputVariableIndexes (int flag) const override |
| Grab input variable indices.
|
|
const std::vector< int > & | getOutputVariableIndexes (int flag) const override |
| Grab output variable indices.
|
|
real | bcNumericalFlux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const override |
| Redefinition of the boundary condition numerical flux.
|
|
| WmApplication () |
|
virtual | ~WmApplication ()=default |
|
virtual void | setup (const WxCryptSet &wxc) |
|
virtual const std::vector< int > & | getAuxiliaryVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
|
virtual const std::vector< int > & | getCrossVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
|
const std::vector< std::string > & | getBoundaryNames () const |
|
bool | isOnBoundary (const std::string &boundaryName) const |
|
bool | has (int flag) const |
|
virtual real | numerical_flux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
|
virtual real | internal_flux (const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const |
|
virtual real | source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const |
|
virtual void | bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const |
| Boundary Condition Application which sets the boundary condition on ghost nodes.
|
|
virtual real | bcNumericalFlux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
|
virtual void | conserved_to_primitive (const real *q, const real *aux, real *w) const |
|
virtual void | primitive_to_conserved (const real *w, const real *aux, real *q) const |
|
virtual void | evaluate_function (const real *q, const real *aux, const solverVariables_t *pSV, real *result) const |
|
virtual void | bc_q_kinetic (const real *q_in, const real *aux_in, const solverVariables_t *pFV, real *q_out) const |
|
std::shared_ptr< std::string > | app_name () |
|
virtual const std::vector< int > & | getInputVariableIndexes (int flag=0) const |
|
virtual const std::vector< int > & | getOutputVariableIndexes (int flag=0) const |
|