59 template<
class LimiterFunc>
72 const scalar cdWeight,
73 const scalar faceFlux,
74 const typename LimiterFunc::phiType& phiP,
75 const typename LimiterFunc::phiType& phiN,
76 const typename LimiterFunc::gradPhiType& gradcP,
77 const typename LimiterFunc::gradPhiType& gradcN,
81 vector gradfV = phiN - phiP;
83 scalar phiCD = gradfV & (cdWeight*phiP + (1 - cdWeight)*phiN);
90 phif = 0.5*(phiCD + phiU + (1 - cdWeight)*(gradfV & (d & gradcP)));
95 phif = 0.5*(phiCD + phiU - cdWeight*(gradfV & (d & gradcN)));
99 scalar QLimiter = (phif - phiU)/
stabilise(phiCD - phiU, SMALL);
102 return clamp(QLimiter, 0, 2);
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
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
dimensionedScalar stabilise(const dimensionedScalar &x, const dimensionedScalar &y)
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
Class with limiter function which returns the limiter for the quadratic-upwind differencing scheme...
dimensionSet clamp(const dimensionSet &a, const dimensionSet &range)