46 "Upwind solver for the APE equation");
110 pF = pF + 0.5 * (c0L - u0L) *
111 (-rho0L * v0L * vL * (c0L * u0L + c0sqL) -
112 rho0L * w0L * wL * (c0L * u0L + c0sqL) +
113 (c0sqL - pow(u0L, 2)) * (rho0L * c0L * uL - pL)) /
114 (c0sqL - pow(u0L, 2));
118 (rho0L * c0L * (c0L * u0L + c0sqL) * (v0L * vL + w0L * wL) -
119 rho0L * c0sqL * uL * (c0sqL - pow(u0L, 2)) +
120 c0L * pL * (c0sqL - pow(u0L, 2))) /
121 (rho0L * c0sqL * (c0sqL - pow(u0L, 2)));
125 pF = pF + 0.5 * (c0R - u0R) *
126 (-rho0R * v0R * vR * (c0R * u0R + c0sqR) -
127 rho0R * w0R * wR * (c0R * u0R + c0sqR) +
128 (c0sqR - pow(u0R, 2)) * (rho0R * c0R * uR - pR)) /
129 (c0sqR - pow(u0R, 2));
133 (rho0R * c0R * (c0R * u0R + c0sqR) * (v0R * vR + w0R * wR) -
134 rho0R * c0sqR * uR * (c0sqR - pow(u0R, 2)) +
135 c0R * pR * (c0sqR - pow(u0R, 2))) /
136 (rho0R * c0sqR * (c0sqR - pow(u0R, 2)));
142 pF = pF + 0.5 * (c0L + u0L) *
143 (-rho0L * v0L * vL * (c0L * u0L - c0sqL) -
144 rho0L * w0L * wL * (c0L * u0L - c0sqL) +
145 (c0sqL - pow(u0L, 2)) * (rho0L * c0L * uL + pL)) /
146 (c0sqL - pow(u0L, 2));
150 (-rho0L * c0L * (c0L * u0L - c0sqL) * (v0L * vL + w0L * wL) +
151 rho0L * c0sqL * uL * (c0sqL - pow(u0L, 2)) +
152 c0L * pL * (c0sqL - pow(u0L, 2))) /
153 (rho0L * c0sqL * (c0sqL - pow(u0L, 2)));
157 pF = pF + 0.5 * (c0R + u0R) *
158 (-rho0R * v0R * vR * (c0R * u0R - c0sqR) -
159 rho0R * w0R * wR * (c0R * u0R - c0sqR) +
160 (c0sqR - pow(u0R, 2)) * (rho0R * c0R * uR + pR)) /
161 (c0sqR - pow(u0R, 2));
165 (-rho0R * c0R * (c0R * u0R - c0sqR) * (v0R * vR + w0R * wR) +
166 rho0R * c0sqR * uR * (c0sqR - pow(u0R, 2)) +
167 c0R * pR * (c0sqR - pow(u0R, 2))) /
168 (rho0R * c0sqR * (c0sqR - pow(u0R, 2)));
APEUpwindSolver(const LibUtilities::SessionReaderSharedPtr &pSession)
static std::string solverName
void v_PointSolve(NekDouble pL, NekDouble rhoL, NekDouble uL, NekDouble vL, NekDouble wL, NekDouble pR, NekDouble rhoR, NekDouble uR, NekDouble vR, NekDouble wR, NekDouble c0sqL, NekDouble rho0L, NekDouble u0L, NekDouble v0L, NekDouble w0L, NekDouble c0sqR, NekDouble rho0R, NekDouble u0R, NekDouble v0R, NekDouble w0R, NekDouble &pF, NekDouble &rhoF, NekDouble &uF, NekDouble &vF, NekDouble &wF) override
Upwind Riemann solver.
static RiemannSolverSharedPtr create(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)