Diffusion of the pressure correction, with a diagonal (single-equation) coefficient.
More...
|
| template<class VariableType > |
| CPair< Vector< Double, nVar > > | coefficients (const FlowIndices &, Int iPoint, const EdgeSide< VariableType > &side_i, Int jPoint, const EdgeSide< VariableType > &side_j, const CPair< Double > &) const |
| | Momentum coefficient, an i/j average, identical for both edge sides (TSL Jacobian).
|
| |
| | CUpwScalarBase (const CConfig &config, size_t nEqn_=nVar_) |
| | Constructor, inherited by the model with using Base::Base.
|
| |
| template<class VariableType > |
| EdgeResidual< Double, nVar > | ComputeFlux (const ScalarFluxOptions &opt, Int iPoint, const EdgeSide< VariableType > &side_i, Int jPoint, const EdgeSide< VariableType > &side_j, const Vector< Double, nDim > &normal, const Double &massFlux) const |
| |
| template<class VariableType > |
| void | ComputeFlux (const ScalarFluxOptions &opt, Int iEdge, Int iPoint, const EdgeSide< VariableType > &side_i, Int jPoint, const EdgeSide< VariableType > &side_j, const Vector< Double, nDim > &normal, const Double &massFlux, UpdateType updateType, Double updateMask, CSysVector< su2double > &vector, CSysVector< su2double > &vectorDiff, SparseMatrixType &matrix) const |
| | Compute the flux of an edge and write it to the linear system.
|
| |
|
| using | Base = CUpwScalarFlux< Double_, Derived, FlowIndices, nDim_, nVar_ > |
| |
| using | Int = typename CLaneTraits< Double_ >::Int |
| |
| using | Int = typename CLaneTraits< Double >::Int |
| |
| | CUpwScalarFlux (const CConfig &) |
| |
| void | finalizeFlux (const FlowIndices &, const ScalarFluxOptions &opt, Int, const EdgeSide< VariableType > &, Int, const EdgeSide< VariableType > &, const Double_ &a0, const Double_ &a1, const CPair< Double_ > &rho, const CPair< CScalarValues< Double_, Size > > &phi, EdgeResidual< Double_, nVar > &res) const |
| | Upwind convection of the transported variable, weighted by the density for a conservative model.
|
| |
| template<class VariableType > |
| void | diffusionTerms (const FlowIndices &idx, const ScalarFluxOptions &opt, Int iPoint, const EdgeSide< VariableType > &side_i, Int jPoint, const EdgeSide< VariableType > &side_j, const CPair< Double > &rho, const Vector< Double, nDim > &normal, const Vector< Double, nDim > &vector_ij, EdgeResidual< Double, nVar > &res) const |
| |
| template<class... Ts> |
| void | coefficientJacobians (Ts &&...) const |
| | Contribution of the derivatives of the coefficients themselves.
|
| |
| template<class... Ts> |
| void | extraDiffusionTerms (Ts &&...) const |
| | Diffusion of a model that transports more than one gradient, of states it synthesises from its own containers.
|
| |
| const FlowIndices | idx |
| |
| const size_t | nEqn |
| | Equations of the model, which a dynamic one gives to its base.
|
| |
| const su2double | kappa |
| | MUSCL reconstruction parameters, read from CConfig once per construction (i.e. once per nonlinear iteration, see CScalarSolver::EdgeFluxResidual) instead of per edge; this is also where the scalar limiter's freezing (GetLimiterIter) is resolved, by collapsing its type to NONE once frozen. The flow limiter is not frozen this way: once the flow solver stops recomputing it, it keeps applying the last values it has.
|
| |
| const su2double | umusclRamp |
| |
| const su2double | kappaFlow |
| |
| const LIMITER | limiterType |
| |
| const LIMITER | limiterTypeFlow |
| |
| const bool | musclFlow |
| |
template<class
Double, class FlowIndices, int nDim, size_t nVar = 1>
class CScalarFlux_Poisson< Double, FlowIndices, nDim, nVar >
Diffusion of the pressure correction, with a diagonal (single-equation) coefficient.
- Note
- The equation has no convective term at all, so the solver runs this kernel with ScalarFluxOptions::convective cleared and the inherited CUpwScalarFlux::finalizeFlux is never reached; see CPoissonSolver::Viscous_Residual.
-
The diffusion coefficient is the momentum coefficient vol/A_p carried by the solver's own variables, not a flow primitive, so nothing here reads the flow's primitive row; the flow variables are only asked which points carry a strong velocity BC.