|
Nektar++
|
#include <AUSM0Solver.h>
Static Public Member Functions | |
| static RiemannSolverSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession) |
Static Public Attributes | |
| static std::string | solverName |
Protected Member Functions | |
| AUSM0Solver (const LibUtilities::SessionReaderSharedPtr &pSession) | |
| void | v_PointSolve (double rhoL, double rhouL, double rhovL, double rhowL, double EL, double rhoR, double rhouR, double rhovR, double rhowR, double ER, double &rhof, double &rhouf, double &rhovf, double &rhowf, double &Ef) override |
| AUSM0 Riemann solver. More... | |
| double | M1Function (int A, double M) |
| double | M2Function (int A, double M) |
| double | M4Function (int A, double beta, double M) |
| double | P5Function (int A, double alpha, double M) |
Protected Member Functions inherited from Nektar::CompressibleSolver | |
| CompressibleSolver (const LibUtilities::SessionReaderSharedPtr &pSession) | |
| Session ctor. More... | |
| CompressibleSolver () | |
| Programmatic ctor. More... | |
| void | v_Solve (const int nDim, const Array< OneD, const Array< OneD, ND > > &Fwd, const Array< OneD, const Array< OneD, ND > > &Bwd, Array< OneD, Array< OneD, ND > > &flux) override |
| virtual void | v_ArraySolve (const Array< OneD, const Array< OneD, ND > > &Fwd, const Array< OneD, const Array< OneD, ND > > &Bwd, Array< OneD, Array< OneD, ND > > &flux) |
| virtual void | v_PointSolve (ND rhoL, ND rhouL, ND rhovL, ND rhowL, ND EL, ND rhoR, ND rhouR, ND rhovR, ND rhowR, ND ER, ND &rhof, ND &rhouf, ND &rhovf, ND &rhowf, ND &Ef) |
| ND | GetRoeSoundSpeed (ND rhoL, ND pL, ND eL, ND HL, ND srL, ND rhoR, ND pR, ND eR, ND HR, ND srR, ND HRoe, ND URoe2, ND srLR) |
Protected Member Functions inherited from Nektar::SolverUtils::RiemannSolver | |
| SOLVER_UTILS_EXPORT | RiemannSolver () |
| SOLVER_UTILS_EXPORT | RiemannSolver (const LibUtilities::SessionReaderSharedPtr &pSession) |
| virtual SOLVER_UTILS_EXPORT | ~RiemannSolver () |
| virtual void | v_Solve (const int nDim, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, Array< OneD, Array< OneD, NekDouble > > &flux)=0 |
| SOLVER_UTILS_EXPORT void | GenerateRotationMatrices (const Array< OneD, const Array< OneD, NekDouble > > &normals) |
| Generate rotation matrices for 3D expansions. More... | |
| void | FromToRotation (Array< OneD, const NekDouble > &from, Array< OneD, const NekDouble > &to, NekDouble *mat) |
| A function for creating a rotation matrix that rotates a vector from into another vector to. More... | |
| SOLVER_UTILS_EXPORT void | rotateToNormal (const Array< OneD, const Array< OneD, NekDouble > > &inarray, const Array< OneD, const Array< OneD, NekDouble > > &normals, const Array< OneD, const Array< OneD, NekDouble > > &vecLocs, Array< OneD, Array< OneD, NekDouble > > &outarray) |
| Rotate a vector field to trace normal. More... | |
| SOLVER_UTILS_EXPORT void | rotateFromNormal (const Array< OneD, const Array< OneD, NekDouble > > &inarray, const Array< OneD, const Array< OneD, NekDouble > > &normals, const Array< OneD, const Array< OneD, NekDouble > > &vecLocs, Array< OneD, Array< OneD, NekDouble > > &outarray) |
| Rotate a vector field from trace normal. More... | |
| SOLVER_UTILS_EXPORT bool | CheckScalars (std::string name) |
| Determine whether a scalar has been defined in m_scalars. More... | |
| SOLVER_UTILS_EXPORT bool | CheckVectors (std::string name) |
| Determine whether a vector has been defined in m_vectors. More... | |
| SOLVER_UTILS_EXPORT bool | CheckParams (std::string name) |
| Determine whether a parameter has been defined in m_params. More... | |
| SOLVER_UTILS_EXPORT bool | CheckAuxScal (std::string name) |
| Determine whether a scalar has been defined in m_auxScal. More... | |
| SOLVER_UTILS_EXPORT bool | CheckAuxVec (std::string name) |
| Determine whether a vector has been defined in m_auxVec. More... | |
| virtual SOLVER_UTILS_EXPORT void | v_CalcFluxJacobian (const int nDim, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, const Array< OneD, const Array< OneD, NekDouble > > &normals, DNekBlkMatSharedPtr &FJac, DNekBlkMatSharedPtr &BJac) |
Additional Inherited Members | |
Public Member Functions inherited from Nektar::SolverUtils::RiemannSolver | |
| SOLVER_UTILS_EXPORT void | Solve (const int nDim, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, Array< OneD, Array< OneD, NekDouble > > &flux) |
| Perform the Riemann solve given the forwards and backwards spaces. More... | |
| template<typename FuncPointerT , typename ObjectPointerT > | |
| void | SetScalar (std::string name, FuncPointerT func, ObjectPointerT obj) |
| void | SetScalar (std::string name, RSScalarFuncType fp) |
| template<typename FuncPointerT , typename ObjectPointerT > | |
| void | SetVector (std::string name, FuncPointerT func, ObjectPointerT obj) |
| void | SetVector (std::string name, RSVecFuncType fp) |
| template<typename FuncPointerT , typename ObjectPointerT > | |
| void | SetParam (std::string name, FuncPointerT func, ObjectPointerT obj) |
| void | SetALEFlag (bool &ALE) |
| void | SetParam (std::string name, RSParamFuncType fp) |
| template<typename FuncPointerT , typename ObjectPointerT > | |
| void | SetAuxScal (std::string name, FuncPointerT func, ObjectPointerT obj) |
| template<typename FuncPointerT , typename ObjectPointerT > | |
| void | SetAuxVec (std::string name, FuncPointerT func, ObjectPointerT obj) |
| void | SetAuxVec (std::string name, RSVecFuncType fp) |
| std::map< std::string, RSScalarFuncType > & | GetScalars () |
| std::map< std::string, RSVecFuncType > & | GetVectors () |
| std::map< std::string, RSParamFuncType > & | GetParams () |
| SOLVER_UTILS_EXPORT void | CalcFluxJacobian (const int nDim, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, DNekBlkMatSharedPtr &FJac, DNekBlkMatSharedPtr &BJac) |
| Calculate the flux jacobian of Fwd and Bwd. More... | |
Public Attributes inherited from Nektar::SolverUtils::RiemannSolver | |
| int | m_spacedim |
Protected Types inherited from Nektar::CompressibleSolver | |
| using | ND = NekDouble |
Protected Attributes inherited from Nektar::CompressibleSolver | |
| bool | m_pointSolve |
| EquationOfStateSharedPtr | m_eos |
| bool | m_idealGas |
Protected Attributes inherited from Nektar::SolverUtils::RiemannSolver | |
| bool | m_requiresRotation |
| Indicates whether the Riemann solver requires a rotation to be applied to the velocity fields. More... | |
| std::map< std::string, RSScalarFuncType > | m_scalars |
| Map of scalar function types. More... | |
| std::map< std::string, RSVecFuncType > | m_vectors |
| Map of vector function types. More... | |
| std::map< std::string, RSParamFuncType > | m_params |
| Map of parameter function types. More... | |
| std::map< std::string, RSScalarFuncType > | m_auxScal |
| Map of auxiliary scalar function types. More... | |
| std::map< std::string, RSVecFuncType > | m_auxVec |
| Map of auxiliary vector function types. More... | |
| Array< OneD, Array< OneD, NekDouble > > | m_rotMat |
| Rotation matrices for each trace quadrature point. More... | |
| Array< OneD, Array< OneD, Array< OneD, NekDouble > > > | m_rotStorage |
| Rotation storage. More... | |
| bool | m_ALESolver = false |
| Flag if using the ALE formulation. More... | |
Definition at line 42 of file AUSM0Solver.h.
|
protected |
Definition at line 43 of file AUSM0Solver.cpp.
Referenced by create().
|
inlinestatic |
Definition at line 45 of file AUSM0Solver.h.
References AUSM0Solver().
|
protected |
Definition at line 126 of file AUSM0Solver.cpp.
Referenced by M4Function(), and P5Function().
|
protected |
Definition at line 142 of file AUSM0Solver.cpp.
Referenced by M4Function(), and P5Function().
|
protected |
Definition at line 161 of file AUSM0Solver.cpp.
References Nektar::LibUtilities::beta, M1Function(), and M2Function().
Referenced by v_PointSolve(), Nektar::AUSM1Solver::v_PointSolve(), Nektar::AUSM2Solver::v_PointSolve(), and Nektar::AUSM3Solver::v_PointSolve().
|
protected |
Definition at line 189 of file AUSM0Solver.cpp.
References M1Function(), and M2Function().
Referenced by v_PointSolve(), Nektar::AUSM1Solver::v_PointSolve(), Nektar::AUSM2Solver::v_PointSolve(), and Nektar::AUSM3Solver::v_PointSolve().
|
overrideprotectedvirtual |
AUSM0 Riemann solver.
| rhoL | Density left state. |
| rhoR | Density right state. |
| rhouL | x-momentum component left state. |
| rhouR | x-momentum component right state. |
| rhovL | y-momentum component left state. |
| rhovR | y-momentum component right state. |
| rhowL | z-momentum component left state. |
| rhowR | z-momentum component right state. |
| EL | Energy left state. |
| ER | Energy right state. |
| rhof | Computed Riemann flux for density. |
| rhouf | Computed Riemann flux for x-momentum component |
| rhovf | Computed Riemann flux for y-momentum component |
| rhowf | Computed Riemann flux for z-momentum component |
| Ef | Computed Riemann flux for energy. |
Reimplemented from Nektar::CompressibleSolver.
Reimplemented in Nektar::AUSM1Solver, Nektar::AUSM2Solver, and Nektar::AUSM3Solver.
Definition at line 67 of file AUSM0Solver.cpp.
References Nektar::LibUtilities::beta, M4Function(), Nektar::CompressibleSolver::m_eos, and P5Function().
|
static |
Definition at line 51 of file AUSM0Solver.h.