Go to the documentation of this file.
48 #ifndef filteredLinear3_H
49 #define filteredLinear3_H
62 template<
class LimiterFunc>
83 <<
"coefficient = " << k_
84 <<
" should be >= 0 and <= 1"
91 const scalar cdWeight,
92 const scalar faceFlux,
93 const typename LimiterFunc::phiType& phiP,
94 const typename LimiterFunc::phiType& phiN,
95 const typename LimiterFunc::gradPhiType& gradcP,
96 const typename LimiterFunc::gradPhiType& gradcN,
101 scalar df = phiN - phiP;
104 scalar dP = 2*(d & gradcP);
105 scalar dN = 2*(d & gradcN);
108 scalar
limiter = 1 - k_*(dN - df)*(dP - df)/
max(
sqr(dN + dP), SMALL);
label min(const labelHashSet &set, label minValue=labelMax)
filteredLinear3Limiter(Istream &is)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
label max(const labelHashSet &set, label maxValue=labelMin)
Vector< scalar > vector
A scalar version of the templated Vector.
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
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
Class to generate weighting factors for the filteredLinear differencing scheme.
#define FatalIOErrorInFunction(ios)