OpenFOAM
10
The OpenFOAM Foundation
minmodGradientLimiter.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2018 OpenFOAM Foundation
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Class
25
Foam::fv::gradientLimiters::minmod
26
27
Description
28
Minmod gradient limiter
29
30
This is the default gradient limiter which clips the gradient to remove cell
31
to face extrapolation unboundedness. It corresponds to the original
32
cellLimitedGrad implementation before the addition of run-time select-able
33
limiter functions.
34
35
Example:
36
\verbatim
37
gradSchemes
38
{
39
default Gauss linear;
40
limited cellLimited Gauss linear 1;
41
}
42
\endverbatim
43
44
See also
45
Foam::fv::cellLimitedGrad
46
47
\*---------------------------------------------------------------------------*/
48
49
#ifndef minmodGradientLimiter_H
50
#define minmodGradientLimiter_H
51
52
#include "
Istream.H
"
53
54
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
55
56
namespace
Foam
57
{
58
59
namespace
fv
60
{
61
62
namespace
gradientLimiters
63
{
64
65
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
66
67
class
minmod
68
{
69
70
public
:
71
72
// Constructors
73
74
minmod
(
Istream
&)
75
{}
76
77
78
// Member Functions
79
80
inline
scalar
limiter
(
const
scalar r)
const
81
{
82
return
min
(r, 1);
83
}
84
};
85
86
87
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
88
89
}
// End namespace gradientLimiters
90
91
}
// End namespace fv
92
93
}
// End namespace Foam
94
95
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
96
97
#endif
98
99
// ************************************************************************* //
Foam::fv::gradientLimiters::minmod
Minmod gradient limiter.
Definition:
minmodGradientLimiter.H:66
Foam::Istream
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
Definition:
Istream.H:57
Foam::fv::gradientLimiters::minmod::limiter
scalar limiter(const scalar r) const
Definition:
minmodGradientLimiter.H:79
Istream.H
fv
labelList fv(nPoints)
Foam::min
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
Definition:
fvMeshStitchersMoving.C:108
Foam::fv::gradientLimiters::minmod::minmod
minmod(Istream &)
Definition:
minmodGradientLimiter.H:73
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.H:213
src
finiteVolume
finiteVolume
gradSchemes
limitedGradSchemes
cellLimitedGrad
gradientLimiters
minmodGradientLimiter.H
Generated by
1.8.13