Home
Downloads
Documentation
Installation
User Guide
man-pages
API Documentation
README
Release Notes
Changes
License
Support
SourceForge Project
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
finiteVolume
fields
fvPatchFields
derived
fluxCorrectedVelocity
fluxCorrectedVelocityFvPatchVectorField.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 | Copyright (C) 1991-2010 OpenCFD Ltd.
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::fluxCorrectedVelocityFvPatchVectorField
26
27
Description
28
Velocity outlet boundary condition for patches where the pressure is
29
specified. The outflow velocity is obtained by "zeroGradient" and then
30
corrected from the flux. If reverse flow is possible or expected use
31
the "pressureInletOutletVelocityFvPatchVectorField" BC instead.
32
33
SourceFiles
34
fluxCorrectedVelocityFvPatchVectorField.C
35
36
\*---------------------------------------------------------------------------*/
37
38
#ifndef fluxCorrectedVelocityFvPatchVectorField_H
39
#define fluxCorrectedVelocityFvPatchVectorField_H
40
41
#include <
finiteVolume/fvPatchFields.H
>
42
#include <
finiteVolume/zeroGradientFvPatchFields.H
>
43
44
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46
namespace
Foam
47
{
48
49
/*---------------------------------------------------------------------------*\
50
Class fluxCorrectedVelocityFvPatch Declaration
51
\*---------------------------------------------------------------------------*/
52
53
class
fluxCorrectedVelocityFvPatchVectorField
54
:
55
public
zeroGradientFvPatchVectorField
56
{
57
// Private data
58
59
word
phiName_;
60
word
rhoName_;
61
62
63
public
:
64
65
//- Runtime type information
66
TypeName
(
"fluxCorrectedVelocity"
);
67
68
69
// Constructors
70
71
//- Construct from patch and internal field
72
fluxCorrectedVelocityFvPatchVectorField
73
(
74
const
fvPatch
&,
75
const
DimensionedField<vector, volMesh>
&
76
);
77
78
//- Construct from patch, internal field and dictionary
79
fluxCorrectedVelocityFvPatchVectorField
80
(
81
const
fvPatch
&,
82
const
DimensionedField<vector, volMesh>
&,
83
const
dictionary
&
84
);
85
86
//- Construct by mapping given fluxCorrectedVelocityFvPatchVectorField
87
// onto a new patch
88
fluxCorrectedVelocityFvPatchVectorField
89
(
90
const
fluxCorrectedVelocityFvPatchVectorField
&,
91
const
fvPatch
&,
92
const
DimensionedField<vector, volMesh>
&,
93
const
fvPatchFieldMapper
&
94
);
95
96
//- Construct and return a clone
97
virtual
tmp<fvPatchVectorField>
clone
()
const
98
{
99
return
tmp<fvPatchVectorField>
100
(
101
new
fluxCorrectedVelocityFvPatchVectorField
(*
this
)
102
);
103
}
104
105
//- Construct as copy setting internal field reference
106
fluxCorrectedVelocityFvPatchVectorField
107
(
108
const
fluxCorrectedVelocityFvPatchVectorField
&,
109
const
DimensionedField<vector, volMesh>
&
110
);
111
112
//- Construct and return a clone setting internal field reference
113
virtual
tmp<fvPatchVectorField>
clone
114
(
115
const
DimensionedField<vector, volMesh>
& iF
116
)
const
117
{
118
return
tmp<fvPatchVectorField>
119
(
120
new
fluxCorrectedVelocityFvPatchVectorField
(*
this
, iF)
121
);
122
}
123
124
125
// Member functions
126
127
// Evaluation functions
128
129
//- Evaluate the patch field
130
virtual
void
evaluate
131
(
132
const
Pstream::commsTypes
commsType=
Pstream::blocking
133
);
134
135
136
//- Write
137
virtual
void
write
(
Ostream
&)
const
;
138
};
139
140
141
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
142
143
}
// End namespace Foam
144
145
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
146
147
#endif
148
149
// ************************ vim: set sw=4 sts=4 et: ************************ //