57 template<
class LimiterFunc>
70 const scalar cdWeight,
71 const scalar faceFlux,
72 const typename LimiterFunc::phiType& phiP,
73 const typename LimiterFunc::phiType& phiN,
74 const typename LimiterFunc::gradPhiType& gradcP,
75 const typename LimiterFunc::gradPhiType& gradcN,
79 scalar phiCD = cdWeight*phiP + (1 - cdWeight)*phiN;
86 phif = 0.5*(phiCD + phiP + (1 - cdWeight)*(d & gradcP));
91 phif = 0.5*(phiCD + phiN - cdWeight*(d & gradcN));
95 scalar QLimiter = (phif - phiU)/
stabilise(phiCD - phiU, small);
98 return max(
min(QLimiter, 2), 0);
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Class with limiter function which returns the limiter for the quadratic-upwind interpolation scheme.
scalar limiter(const scalar cdWeight, const scalar faceFlux, const typename LimiterFunc::phiType &phiP, const typename LimiterFunc::phiType &phiN, const typename LimiterFunc::gradPhiType &gradcP, const typename LimiterFunc::gradPhiType &gradcN, const vector &d) const
tmp< DimensionedField< scalar, GeoMesh > > stabilise(const DimensionedField< scalar, GeoMesh > &dsf, const dimensioned< scalar > &ds)
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)