OpenFOAM: API Guide
v2112
The open source CFD toolbox
pointLinear.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | www.openfoam.com
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
Copyright (C) 2011-2016 OpenFOAM Foundation
9
-------------------------------------------------------------------------------
10
License
11
This file is part of OpenFOAM.
12
13
OpenFOAM is free software: you can redistribute it and/or modify it
14
under the terms of the GNU General Public License as published by
15
the Free Software Foundation, either version 3 of the License, or
16
(at your option) any later version.
17
18
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21
for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26
Class
27
Foam::pointLinear
28
29
Group
30
grpFvSurfaceInterpolationSchemes
31
32
Description
33
Face-point interpolation scheme class derived from linear and
34
returns linear weighting factors but also applies an explicit correction.
35
36
Uses volPointInterpolation to obtain the field values at the face-points.
37
38
SourceFiles
39
pointLinear.C
40
41
\*---------------------------------------------------------------------------*/
42
43
#ifndef pointLinear_H
44
#define pointLinear_H
45
46
#include "linear.H"
47
48
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
49
50
namespace
Foam
51
{
52
53
/*---------------------------------------------------------------------------*\
54
Class pointLinear Declaration
55
\*---------------------------------------------------------------------------*/
56
57
template
<
class
Type>
58
class
pointLinear
59
:
60
public
linear
<Type>
61
{
62
// Private Member Functions
63
64
//- No copy construct
65
pointLinear
(
const
pointLinear
&) =
delete
;
66
67
//- No copy assignment
68
void
operator=(
const
pointLinear
&) =
delete
;
69
70
71
public
:
72
73
//- Runtime type information
74
TypeName
(
"pointLinear"
);
75
76
77
// Constructors
78
79
//- Construct from mesh
80
pointLinear
(
const
fvMesh
&
mesh
)
81
:
82
linear
<Type>(
mesh
)
83
{}
84
85
86
//- Construct from mesh and Istream
87
pointLinear
88
(
89
const
fvMesh
&
mesh
,
90
Istream
&
91
)
92
:
93
linear
<Type>(
mesh
)
94
{}
95
96
97
//- Construct from mesh, faceFlux and Istream
98
pointLinear
99
(
100
const
fvMesh
&
mesh
,
101
const
surfaceScalarField
&,
102
Istream
&
103
)
104
:
105
linear
<Type>(
mesh
)
106
{}
107
108
109
// Member Functions
110
111
//- Return true if this scheme uses an explicit correction
112
virtual
bool
corrected
()
const
113
{
114
return
true
;
115
}
116
117
//- Return the explicit correction to the face-interpolate
118
virtual
tmp<GeometricField<Type, fvsPatchField, surfaceMesh>
>
119
correction
120
(
121
const
GeometricField<Type, fvPatchField, volMesh>
& vf
122
)
const
;
123
};
124
125
126
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
127
128
}
// End namespace Foam
129
130
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
131
132
#endif
133
134
// ************************************************************************* //
Foam::tmp
A class for managing temporary objects.
Definition:
PtrList.H:61
Foam::pointLinear::corrected
virtual bool corrected() const
Return true if this scheme uses an explicit correction.
Definition:
pointLinear.H:111
Foam::pointLinear::pointLinear
pointLinear(const fvMesh &mesh)
Construct from mesh.
Definition:
pointLinear.H:79
Foam::Istream
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Definition:
Istream.H:61
Foam::pointLinear::TypeName
TypeName("pointLinear")
Runtime type information.
Foam::pointLinear
Face-point interpolation scheme class derived from linear and returns linear weighting factors but al...
Definition:
pointLinear.H:57
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition:
fvMesh.H:85
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
Foam::pointLinear::correction
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > correction(const GeometricField< Type, fvPatchField, volMesh > &vf) const
Return the explicit correction to the face-interpolate.
Definition:
pointLinear.C:39
Foam::surfaceInterpolationScheme::mesh
const fvMesh & mesh() const
Return mesh reference.
Definition:
surfaceInterpolationScheme.H:144
Foam::linear
Central-differencing interpolation scheme class.
Definition:
linear.H:55
Foam::GeometricField< scalar, fvsPatchField, surfaceMesh >
src
finiteVolume
interpolation
surfaceInterpolation
schemes
pointLinear
pointLinear.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.