42 "Lax-Friedrichs Riemann solver");
70 double rhowL,
double EL,
double rhoR,
71 double rhouR,
double rhovR,
double rhowR,
72 double ER,
double &rhof,
double &rhouf,
73 double &rhovf,
double &rhowf,
double &Ef)
84 NekDouble eL = (EL - 0.5 * (rhouL * uL + rhovL * vL + rhowL * wL)) / rhoL;
85 NekDouble eR = (ER - 0.5 * (rhouR * uR + rhovR * vR + rhowR * wR)) / rhoR;
101 NekDouble uRoe = (srL * uL + srR * uR) / srLR;
102 NekDouble vRoe = (srL * vL + srR * vR) / srLR;
103 NekDouble wRoe = (srL * wL + srR * wR) / srLR;
104 NekDouble URoe2 = uRoe * uRoe + vRoe * vRoe + wRoe * wRoe;
105 NekDouble HRoe = (srL * HL + srR * HR) / srLR;
107 srR, HRoe, URoe2, srLR);
113 rhof = 0.5 * (rhouL + rhouR - URoe * (rhoR - rhoL));
114 rhouf = 0.5 * (pL + rhouL * uL + pR + rhouR * uR - URoe * (rhouR - rhouL));
115 rhovf = 0.5 * (rhouL * vL + rhouR * vR - URoe * (rhovR - rhovL));
116 rhowf = 0.5 * (rhouL * wL + rhouR * wR - URoe * (rhowR - rhowL));
117 Ef = 0.5 * (uL * (EL + pL) + uR * (ER + pR) - URoe * (ER - EL));
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)
EquationOfStateSharedPtr m_eos
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
Lax-Friedrichs Riemann solver.
static RiemannSolverSharedPtr create(const LibUtilities::SessionReaderSharedPtr &pSession)
static std::string solverName
LaxFriedrichsSolver(const LibUtilities::SessionReaderSharedPtr &pSession)
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, std::string pDesc="")
Register a class with the factory.
std::shared_ptr< SessionReader > SessionReaderSharedPtr
RiemannSolverFactory & GetRiemannSolverFactory()
scalarT< T > sqrt(scalarT< T > in)