Loading...
Searching...
No Matches
fixedNormalSlipPointPatchField.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-2017 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::fixedNormalSlipPointPatchField
28
29Description
30 slip with user-specified normal
31
32SourceFiles
33 fixedNormalSlipPointPatchField.C
34
35\*---------------------------------------------------------------------------*/
36
37#ifndef fixedNormalSlipPointPatchField_H
38#define fixedNormalSlipPointPatchField_H
39
40#include "slipPointPatchField.H"
41
42// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43
44namespace Foam
45{
46
47// Forward declaration of friend functions and operators
49template<class Type>
51
52template<class Type>
53Ostream& operator<<
54(
55 Ostream&,
57);
58
59
60/*---------------------------------------------------------------------------*\
61 Class fixedNormalSlipPointPatchField Declaration
62\*---------------------------------------------------------------------------*/
63
64template<class Type>
66:
67 public slipPointPatchField<Type>
68{
69 // Private data
70
71 //- User specified normal
72 vector n_;
73
74
75public:
76
77 //- Runtime type information
78 TypeName("fixedNormalSlip");
79
80
81 // Constructors
82
83 //- Construct from patch and internal field
85 (
86 const pointPatch&,
88 );
89
90 //- Construct from patch, internal field and dictionary
92 (
93 const pointPatch&,
95 const dictionary&
96 );
97
98 //- Construct by mapping given patch field onto a new patch
100 (
102 const pointPatch&,
105 );
106
107 //- Construct as copy setting internal field reference
109 (
112 );
113
114 //- Return a clone
115 virtual autoPtr<pointPatchField<Type>> clone() const
116 {
117 return pointPatchField<Type>::Clone(*this);
118 }
119
120 //- Construct and return a clone setting internal field reference
122 (
124 ) const
125 {
126 return pointPatchField<Type>::Clone(*this, iF);
127 }
128
129
130 // Member functions
131
132 //- Update the patch field
133 virtual void evaluate
134 (
136 );
137
138 //- Write
139 virtual void write(Ostream&) const;
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...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition Ostream.H:59
commsTypes
Communications types.
Definition UPstream.H:81
@ buffered
"buffered" : (MPI_Bsend, MPI_Recv)
Definition UPstream.H:82
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition autoPtr.H:65
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition dictionary.H:133
fixedNormalSlipPointPatchField(const pointPatch &, const DimensionedField< Type, pointMesh > &)
Construct from patch and internal field.
virtual autoPtr< pointPatchField< Type > > clone(const DimensionedField< Type, pointMesh > &iF) const
Construct and return a clone setting internal field reference.
TypeName("fixedNormalSlip")
Runtime type information.
virtual autoPtr< pointPatchField< Type > > clone() const
Return a clone.
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::buffered)
Update the patch field.
Foam::pointPatchFieldMapper.
static autoPtr< pointPatchField< Type > > Clone(const DerivedPatchField &pf, Args &&... args)
Clone a patch field, optionally with internal field reference etc.
Basic pointPatch represents a set of points from the mesh.
Definition pointPatch.H:67
slipPointPatchField(const pointPatch &, const DimensionedField< Type, pointMesh > &)
Construct from patch and internal field.
Namespace for OpenFOAM.
Vector< scalar > vector
Definition vector.H:57
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68