Go to the documentation of this file.
48 #ifndef filteredLinear2_H
49 #define filteredLinear2_H
62 template<
class LimiterFunc>
93 <<
"coefficient = " << k_
94 <<
" should be >= 0 and <= 1"
101 <<
"coefficient = " << l_
102 <<
" should be >= 0 and <= 1"
111 const scalar cdWeight,
112 const scalar faceFlux,
113 const typename LimiterFunc::phiType& phiP,
114 const typename LimiterFunc::phiType& phiN,
115 const typename LimiterFunc::gradPhiType& gradcP,
116 const typename LimiterFunc::gradPhiType& gradcN,
121 scalar df = phiN - phiP;
124 scalar tdcP = 2*(d & gradcP);
125 scalar tdcN = 2*(d & gradcN);
133 - k_*
min(
max(df - tdcP, 0),
max(df - tdcN, 0))
139 - k_*
min(
max(tdcP - df, 0),
max(tdcN - df, 0))
label min(const labelHashSet &set, label minValue=labelMax)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
label max(const labelHashSet &set, label maxValue=labelMin)
filteredLinear2Limiter(Istream &is)
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
Class to generate weighting factors for the filteredLinear2 differencing scheme.
#define FatalIOErrorInFunction(ios)
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