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 vector gradfV = phiN - phiP;
81 scalar phiCD = gradfV & (cdWeight*phiP + (1 - cdWeight)*phiN);
88 phif = 0.5*(phiCD + phiU + (1 - cdWeight)*(gradfV & (d & gradcP)));
93 phif = 0.5*(phiCD + phiU - cdWeight*(gradfV & (d & gradcN)));
97 scalar QLimiter = (phif -
phiU)/
stabilise(phiCD - phiU, SMALL);
100 return max(
min(QLimiter, 2), 0);