symmetryPointPatch.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::symmetryPointPatch
28 
29 Description
30  Symmetry patch for non-planar or multi-plane patches.
31 
32 SourceFiles
33  symmetryPointPatch.C
34 
35 See also
36  symmetryPlanePointPatch
37 
38 \*---------------------------------------------------------------------------*/
39 
40 #ifndef symmetryPointPatch_H
41 #define symmetryPointPatch_H
42 
43 #include "facePointPatch.H"
44 #include "symmetryPolyPatch.H"
45 
46 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 
48 namespace Foam
49 {
50 
51 /*---------------------------------------------------------------------------*\
52  Class symmetryPointPatch Declaration
53 \*---------------------------------------------------------------------------*/
54 
56 :
57  public facePointPatch
58 {
59 
60 public:
61 
62  //- Runtime type information
63  TypeName(symmetryPolyPatch::typeName_());
64 
65 
66  // Constructors
67 
68  //- Construct from polyPatch
70  (
71  const polyPatch& patch,
72  const pointBoundaryMesh& bm
73  )
74  :
76  {}
77 
78 
79  // Member Functions
80 
81  //- Return the constraint type this pointPatch implements.
82  virtual const word& constraintType() const
83  {
84  return type();
85  }
86 
87  //- Accumulate the effect of constraint direction of this patch
88  virtual void applyConstraint
89  (
90  const label pointi,
92  ) const;
93 };
94 
95 
96 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
97 
98 } // End namespace Foam
99 
100 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
101 
102 #endif
103 
104 // ************************************************************************* //
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:62
Foam::facePointPatch
A pointPatch based on a polyPatch.
Definition: facePointPatch.H:57
symmetryPolyPatch.H
Foam::pointConstraint
Accumulates point constraints through successive applications of the applyConstraint function.
Definition: pointConstraint.H:60
Foam::symmetryPointPatch::TypeName
TypeName(symmetryPolyPatch::typeName_())
Runtime type information.
Foam::facePointPatch::patch
virtual const polyPatch & patch() const
Return the polyPatch.
Definition: facePointPatch.H:148
Foam::symmetryPointPatch::constraintType
virtual const word & constraintType() const
Return the constraint type this pointPatch implements.
Definition: symmetryPointPatch.H:81
Foam::polyPatch
A patch is a list of labels that address the faces in the global face list.
Definition: polyPatch.H:68
Foam::facePointPatch::facePointPatch
facePointPatch(const facePointPatch &)=delete
No copy construct.
Foam::symmetryPointPatch::symmetryPointPatch
symmetryPointPatch(const polyPatch &patch, const pointBoundaryMesh &bm)
Construct from polyPatch.
Definition: symmetryPointPatch.H:69
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::pointBoundaryMesh
Foam::pointBoundaryMesh.
Definition: pointBoundaryMesh.H:55
facePointPatch.H
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::symmetryPointPatch
Symmetry patch for non-planar or multi-plane patches.
Definition: symmetryPointPatch.H:54
Foam::symmetryPointPatch::applyConstraint
virtual void applyConstraint(const label pointi, pointConstraint &) const
Accumulate the effect of constraint direction of this patch.
Definition: symmetryPointPatch.C:53