45#ifndef filteredLinear2V_H
46#define filteredLinear2V_H
59template<
class LimiterFunc>
90 <<
"coefficient = " << k_
91 <<
" should be >= 0 and <= 1"
98 <<
"coefficient = " << l_
99 <<
" should be >= 0 and <= 1"
108 const scalar cdWeight,
109 const scalar faceFlux,
110 const typename LimiterFunc::phiType& phiP,
111 const typename LimiterFunc::phiType& phiN,
112 const typename LimiterFunc::gradPhiType& gradcP,
113 const typename LimiterFunc::gradPhiType& gradcN,
122 scalar df = dfV & dfV;
126 scalar tdcP = 2*(dfV & (d & gradcP));
127 scalar tdcN = 2*(dfV & (d & gradcN));
135 - k_*
min(
max(df - tdcP, 0),
max(df - tdcN, 0))
141 - k_*
min(
max(tdcP - df, 0),
max(tdcN - df, 0))
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
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
filteredLinear2VLimiter(Istream &is)
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
Represents 0/1 range or concept. Used for tagged dispatch or clamping.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionSet clamp(const dimensionSet &a, const dimensionSet &range)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...
errorManipArg< error, int > exit(error &err, const int errNo=1)