symmetryPlaneLagrangianPatchField.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2025 OpenFOAM Foundation
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::symmetryPlaneLagrangianPatchField
26 
27 Description
28  A symmetry-plane boundary condition for Lagrangian. Properties are
29  transformed to represent an identical element entering the domain with an
30  opposite normal velocity and other vector and tensor quantities
31  transformed.
32 
33 Usage
34  Example specification:
35  \verbatim
36  <LagrangianPatchName>
37  {
38  type symmetryPlane;
39  }
40  \endverbatim
41 
42 SourceFiles
43  symmetryPlaneLagrangianPatchField.C
44 
45 \*---------------------------------------------------------------------------*/
46 
47 #ifndef symmetryPlaneLagrangianPatchField_H
48 #define symmetryPlaneLagrangianPatchField_H
49 
50 #include "LagrangianPatchField.H"
51 
52 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
53 
54 namespace Foam
55 {
56 
57 /*---------------------------------------------------------------------------*\
58  Class symmetryPlaneLagrangianPatchField Declaration
59 \*---------------------------------------------------------------------------*/
60 
61 template<class Type>
63 :
64  public LagrangianPatchField<Type>
65 {
66 
67 public:
68 
69  //- Runtime type information
70  TypeName("symmetryPlane");
71 
72 
73  // Constructors
74 
75  //- Construct from patch and internal field
77  (
78  const LagrangianPatch&,
79  const regIOobject&
80  );
81 
82  //- Construct from patch, internal field and dictionary
84  (
85  const LagrangianPatch&,
86  const regIOobject&,
87  const dictionary&
88  );
89 
90  //- Construct as copy
92  (
94  );
95 
96  //- Construct as copy setting the internal field reference
98  (
100  const regIOobject&
101  );
102 
103  //- Construct and return a clone
105  {
107  (
109  (
110  *this
111  )
112  );
113  }
114 
115  //- Construct and return a clone setting the internal field reference
117  (
118  const regIOobject& iIo
119  ) const
120  {
122  (
124  (
125  *this,
126  iIo
127  )
128  );
129  }
130 
131 
132  // Member Functions
133 
134  //- Evaluate the patch field
135  virtual void evaluate
136  (
139  );
140 };
141 
142 
143 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
144 
145 } // End namespace Foam
146 
147 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148 
149 #ifdef NoRepository
151 #endif
152 
153 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
154 
155 #endif
156 
157 // ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Base class for Lagrangian boundary conditions.
Base class for Lagrangian patches.
Buffers for inter-processor communications streams (UOPstream, UIPstream).
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: autoPtr.H:51
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Definition: dictionary.H:162
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
Definition: regIOobject.H:55
A symmetry-plane boundary condition for Lagrangian. Properties are transformed to represent an identi...
TypeName("symmetryPlane")
Runtime type information.
symmetryPlaneLagrangianPatchField(const LagrangianPatch &, const regIOobject &)
Construct from patch and internal field.
virtual autoPtr< LagrangianPatchField< Type > > clone() const
Construct and return a clone.
virtual void evaluate(PstreamBuffers &, const LagrangianScalarInternalDynamicField &fraction)
Evaluate the patch field.
Namespace for OpenFOAM.