wedgePointPatch.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-2014 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::wedgePointPatch
28 
29 Description
30  Wedge front and back plane patch.
31 
32 SourceFiles
33  wedgePointPatch.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef wedgePointPatch_H
38 #define wedgePointPatch_H
39 
40 #include "facePointPatch.H"
41 #include "wedgePolyPatch.H"
42 
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 
45 namespace Foam
46 {
47 
48 /*---------------------------------------------------------------------------*\
49  Class wedgePointPatch Declaration
50 \*---------------------------------------------------------------------------*/
51 
52 class wedgePointPatch
53 :
54  public facePointPatch
55 {
56  // Private data
57 
58  //- Local reference cast into the symmetryPlane patch
59  const wedgePolyPatch& wedgePolyPatch_;
60 
61 
62 public:
63 
64  //- Runtime type information
65  TypeName(wedgePolyPatch::typeName_());
66 
67 
68  // Constructors
69 
70  //- Construct from polyPatch
72  (
73  const polyPatch& patch,
74  const pointBoundaryMesh& bm
75  );
76 
77 
78  // Member Functions
79 
80  //- Return the constraint type this pointPatch implements.
81  virtual const word& constraintType() const
82  {
83  return type();
84  }
85 
86  //- Accumulate the effect of constraint direction of this patch
87  virtual void applyConstraint
88  (
89  const label pointi,
91  ) const;
92 
93  //- Return symmetry plane normal
94  const vector& n() const
95  {
96  return wedgePolyPatch_.n();
97  }
98 };
99 
100 
101 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
102 
103 } // End namespace Foam
104 
105 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
106 
107 #endif
108 
109 // ************************************************************************* //
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::facePointPatch
A pointPatch based on a polyPatch.
Definition: facePointPatch.H:57
Foam::wedgePolyPatch
Wedge front and back plane patch.
Definition: wedgePolyPatch.H:50
wedgePolyPatch.H
Foam::pointConstraint
Accumulates point constraints through successive applications of the applyConstraint function.
Definition: pointConstraint.H:60
Foam::facePointPatch::patch
virtual const polyPatch & patch() const
Return the polyPatch.
Definition: facePointPatch.H:148
Foam::wedgePointPatch::n
const vector & n() const
Return symmetry plane normal.
Definition: wedgePointPatch.H:93
Foam::polyPatch
A patch is a list of labels that address the faces in the global face list.
Definition: polyPatch.H:68
Foam::wedgePointPatch::TypeName
TypeName(wedgePolyPatch::typeName_())
Runtime type information.
Foam::wedgePointPatch::constraintType
virtual const word & constraintType() const
Return the constraint type this pointPatch implements.
Definition: wedgePointPatch.H:80
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::pointBoundaryMesh
Foam::pointBoundaryMesh.
Definition: pointBoundaryMesh.H:56
Foam::wedgePointPatch::wedgePointPatch
wedgePointPatch(const polyPatch &patch, const pointBoundaryMesh &bm)
Construct from polyPatch.
Definition: wedgePointPatch.C:51
facePointPatch.H
Foam::Vector< scalar >
Foam::wedgePolyPatch::n
const vector & n() const
Return the normal to the patch.
Definition: wedgePolyPatch.H:192
Foam::type
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
Definition: MSwindows.C:590
Foam::wedgePointPatch
Wedge front and back plane patch.
Definition: wedgePointPatch.H:51
Foam::wedgePointPatch::applyConstraint
virtual void applyConstraint(const label pointi, pointConstraint &) const
Accumulate the effect of constraint direction of this patch.
Definition: wedgePointPatch.C:64