OpenFOAM: API Guide
v2112
The open source CFD toolbox
extrudedMesh.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-2015 OpenFOAM Foundation
9
Copyright (C) 2020 OpenCFD Ltd.
10
-------------------------------------------------------------------------------
11
License
12
This file is part of OpenFOAM.
13
14
OpenFOAM is free software: you can redistribute it and/or modify it
15
under the terms of the GNU General Public License as published by
16
the Free Software Foundation, either version 3 of the License, or
17
(at your option) any later version.
18
19
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22
for more details.
23
24
You should have received a copy of the GNU General Public License
25
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27
Class
28
Foam::extrudedMesh
29
30
Description
31
32
SourceFiles
33
extrudedMesh.C
34
extrudedMeshTemplates.C
35
36
\*---------------------------------------------------------------------------*/
37
38
#ifndef extrudedMesh_H
39
#define extrudedMesh_H
40
41
#include "
polyMesh.H
"
42
#include "
extrudeModel.H
"
43
44
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46
namespace
Foam
47
{
48
49
/*---------------------------------------------------------------------------*\
50
Class extrudedMesh Declaration
51
\*---------------------------------------------------------------------------*/
52
53
class
extrudedMesh
54
:
55
public
polyMesh
56
{
57
// Private Data
58
59
const
extrudeModel
& model_;
60
61
62
// Private Member Functions
63
64
//- Do edge and face use points in same order?
65
static
bool
sameOrder(
const
face
&,
const
edge
&);
66
67
//- Construct and return the extruded mesh points
68
template
<
class
FaceList,
class
Po
int
Field>
69
pointField
extrudedPoints
70
(
71
const
PrimitivePatch<FaceList, PointField>
& extrudePatch,
72
const
extrudeModel
&
73
);
74
75
//- Construct and return the extruded mesh faces
76
template
<
class
FaceList,
class
Po
int
Field>
77
faceList
extrudedFaces
78
(
79
const
PrimitivePatch<FaceList, PointField>
& extrudePatch,
80
const
extrudeModel
&
81
);
82
83
//- Construct and return the extruded mesh cells
84
template
<
class
FaceList,
class
Po
int
Field>
85
cellList
extrudedCells
86
(
87
const
PrimitivePatch<FaceList, PointField>
& extrudePatch,
88
const
extrudeModel
&
89
);
90
91
92
//- No copy construct
93
extrudedMesh
(
const
extrudedMesh
&) =
delete
;
94
95
//- No copy assignment
96
void
operator=(
const
extrudedMesh
&) =
delete
;
97
98
99
public
:
100
101
// Constructors
102
103
//- Construct from the primitivePatch to extrude
104
template
<
class
FaceList,
class
Po
int
Field>
105
extrudedMesh
106
(
107
const
IOobject
&,
108
const
PrimitivePatch<FaceList, PointField>
& extrudePatch,
109
const
extrudeModel
&
110
);
111
};
112
113
114
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
115
116
}
// End namespace Foam
117
118
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119
120
#ifdef NoRepository
121
#include "
extrudedMeshTemplates.C
"
122
#endif
123
124
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
125
126
#endif
127
128
// ************************************************************************* //
Foam::IOobject
Defines the attributes of an object for which implicit objectRegistry management is supported,...
Definition:
IOobject.H:169
Foam::extrudeModel
Top level extrusion model class.
Definition:
extrudeModel.H:76
Foam::edge
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
Definition:
edge.H:63
polyMesh.H
Foam::polyMesh
Mesh consisting of general polyhedral cells.
Definition:
polyMesh.H:77
Foam::Field< vector >
Foam::extrudedMesh
Definition:
extrudedMesh.H:52
extrudeModel.H
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
extrudedMeshTemplates.C
Foam::List< face >
Foam::face
A face is a list of labels corresponding to mesh vertices.
Definition:
face.H:72
Foam::PrimitivePatch
A list of faces which address into the list of points.
Definition:
PrimitivePatch.H:79
applications
utilities
mesh
generation
extrude
extrudeMesh
extrudedMesh
extrudedMesh.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.