Convection and diffusion of the Langtry-Menter transition model, conservative with a diagonal, i/j-symmetric diffusion matrix. The coefficients depend only on the flow's mu/mu_t, not on the transported gamma/Re_theta, so no coefficientJacobians override is needed.
More...
|
| template<class VariableType > |
| CPair< Vector< Double, nVar > > | coefficients (const FlowIndices &idx, Int iPoint, const EdgeSide< VariableType > &side_i, Int jPoint, const EdgeSide< VariableType > &side_j, const CPair< Double > &) const |
| | Diffusion coefficients, an i/j average of (mu+mu_t) for intermittency and of 2*(mu+mu_t) for the momentum-thickness Reynolds number; identical for both edge sides.
|
| |
| | 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 = 2>
class CScalarFlux_TransLM< Double, FlowIndices, nDim, nVar >
Convection and diffusion of the Langtry-Menter transition model, conservative with a diagonal, i/j-symmetric diffusion matrix. The coefficients depend only on the flow's mu/mu_t, not on the transported gamma/Re_theta, so no coefficientJacobians override is needed.
- Note
- LM writes no finalizeFlux of its own: the inherited CUpwScalarFlux one is exactly flux(iVar) = a0*rho_i*phi_i(iVar) + a1*rho_j*phi_j(iVar), Conservative weighting by density, which is the model's whole convective term.