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
OpenFOAM
meshes
pointMesh
pointPatches
derived
coupled
coupledFacePointPatch.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::coupledFacePointPatch
26
27
Description
28
coupled patch for post-processing. Used as the base class for processor
29
and cyclic pointPatches
30
31
SourceFiles
32
coupledFacePointPatch.C
33
34
\*---------------------------------------------------------------------------*/
35
36
#ifndef coupledFacePointPatch_H
37
#define coupledFacePointPatch_H
38
39
#include <
OpenFOAM/coupledPointPatch.H
>
40
#include <
OpenFOAM/facePointPatch.H
>
41
#include <
OpenFOAM/coupledPolyPatch.H
>
42
43
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44
45
namespace
Foam
46
{
47
48
class
pointBoundaryMesh;
49
50
/*---------------------------------------------------------------------------*\
51
Class coupledFacePointPatch Declaration
52
\*---------------------------------------------------------------------------*/
53
54
class
coupledFacePointPatch
55
:
56
public
facePointPatch
,
57
public
coupledPointPatch
58
{
59
// Private data
60
61
const
coupledPolyPatch
& coupledPolyPatch_;
62
63
64
// Private Member Functions
65
66
//- Disallow default construct as copy
67
coupledFacePointPatch
(
const
coupledFacePointPatch
&);
68
69
//- Disallow default assignment
70
void
operator=(
const
coupledFacePointPatch
&);
71
72
73
protected
:
74
75
// Demand driven private data
76
77
//- The set of labels of the pointPatch points which are
78
// non-global, i.e. present only in this coupledPointPatch.
79
// MUST be initialised by calcGeometry()!
80
labelList
nonGlobalPatchPoints_
;
81
82
labelList
loneMeshPoints_
;
83
84
85
// Construction of demand-driven data
86
87
//- Calculate mesh points
88
virtual
void
calcGeometry
() = 0;
89
90
91
public
:
92
93
//- Runtime type information
94
TypeName
(coupledPolyPatch::typeName_());
95
96
97
// Constructors
98
99
//- Construct from components
100
coupledFacePointPatch
101
(
102
const
polyPatch
&
patch
,
103
const
pointBoundaryMesh
& bm
104
);
105
106
107
// Destructor
108
109
virtual
~coupledFacePointPatch
();
110
111
112
// Member Functions
113
114
// Access
115
116
//- Return true because this patch is coupled
117
virtual
bool
coupled
()
const
118
{
119
return
true
;
120
}
121
122
123
// Access functions for demand driven data
124
125
//- Return the set of labels of the pointPatch points which are
126
// non-global, i.e. present in this coupledFacePointPatch
127
virtual
const
labelList
&
nonGlobalPatchPoints
()
const
;
128
129
//- Return the set of labels of the pointPatch points which are
130
// lone, i.e. present in this coupledFacePointPatch but not
131
// associated with any faces
132
virtual
const
labelList
&
loneMeshPoints
()
const
;
133
134
//- Return point unit normals. Not impelemented.
135
virtual
const
vectorField
&
pointNormals
()
const
;
136
};
137
138
139
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140
141
}
// End namespace Foam
142
143
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
144
145
#endif
146
147
// ************************ vim: set sw=4 sts=4 et: ************************ //