class
CompFlowPhysicsNavierStokesContents
- Reference
CompFlow system of PDEs problem: Navier-Stokes (viscous flow)
This class adds the viscous force contributions to the momentum and energy conservation equations governing compressible flow.
Public static functions
-
static auto type() -> ctr::
PhysicsType noexcept - Return phsyics type.
Public functions
-
void viscousRhs(tk::
real dt, tk:: real J, const std::array<std::size_t, 4>& N, const std::array<std::array<tk:: real, 3>, 4>& grad, const std::array<std::array<tk:: real, 4>, 5>& u, const std::array<const tk:: real*, 5>& r, tk::Fields& R) const - Add viscous stress contribution to momentum and energy rhs.
-
auto viscous_dt(tk::
real L, const std::array<std::array<tk:: real, 4>, 5>& u) const -> tk:: real - Compute the minimum time step size based on the viscous force.
-
void conductRhs(tk::
real dt, tk:: real J, const std::array<std::size_t, 4>& N, const std::array<std::array<tk:: real, 3>, 4>& grad, const std::array<std::array<tk:: real, 4>, 5>& u, const std::array<const tk:: real*, 5>& r, tk::Fields& R) const - Add heat conduction contribution to the energy rhs.
-
auto conduct_dt(tk::
real L, tk:: real g, const std::array<std::array<tk:: real, 4>, 5>& u) const -> tk:: real - Compute the minimum time step size based on thermal diffusion.
Function documentation
void inciter:: cg:: CompFlowPhysicsNavierStokes:: viscousRhs(tk:: real dt,
tk:: real J,
const std::array<std::size_t, 4>& N,
const std::array<std::array<tk:: real, 3>, 4>& grad,
const std::array<std::array<tk:: real, 4>, 5>& u,
const std::array<const tk:: real*, 5>& r,
tk::Fields& R) const
Add viscous stress contribution to momentum and energy rhs.
Parameters | |
---|---|
dt in | Size of time step |
J in | Element Jacobi determinant |
N in | Element node indices |
grad in | Shape function derivatives, nnode*ndim [4][3] |
u in | Solution at element nodes at recent time step |
r in | Pointers to right hand side at component and offset |
R in/out | Right-hand side vector contributing to |
tk:: real inciter:: cg:: CompFlowPhysicsNavierStokes:: viscous_dt(tk:: real L,
const std::array<std::array<tk:: real, 4>, 5>& u) const
Compute the minimum time step size based on the viscous force.
Parameters | |
---|---|
L in | Characteristic length scale |
u in | Solution at element nodes at recent time step |
Returns | Minimum time step size based on viscous force |
void inciter:: cg:: CompFlowPhysicsNavierStokes:: conductRhs(tk:: real dt,
tk:: real J,
const std::array<std::size_t, 4>& N,
const std::array<std::array<tk:: real, 3>, 4>& grad,
const std::array<std::array<tk:: real, 4>, 5>& u,
const std::array<const tk:: real*, 5>& r,
tk::Fields& R) const
Add heat conduction contribution to the energy rhs.
Parameters | |
---|---|
dt in | Size of time step |
J in | Element Jacobi determinant |
N in | Element node indices |
grad in | Shape function derivatives, nnode*ndim [4][3] |
u in | Solution at element nodes at recent time step |
r in | Pointers to right hand side at component and offset |
R in/out | Right-hand side vector contributing to |
Add heat conduction contribution to the energy rhs
tk:: real inciter:: cg:: CompFlowPhysicsNavierStokes:: conduct_dt(tk:: real L,
tk:: real g,
const std::array<std::array<tk:: real, 4>, 5>& u) const
Compute the minimum time step size based on thermal diffusion.
Parameters | |
---|---|
L in | Characteristic length scale |
g in | Ratio of specific heats |
u in | Solution at element nodes at recent time step |
Returns | Minimum time step size based on thermal diffusion |
Compute the minimum time step size based on thermal diffusion