Loading...
Searching...
No Matches
waveDisplacementPointPatchVectorField.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-------------------------------------------------------------------------------
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::waveDisplacementPointPatchVectorField
28
29Description
30 Foam::waveDisplacementPointPatchVectorField
31
32SourceFiles
33 waveDisplacementPointPatchVectorField.C
34
35\*---------------------------------------------------------------------------*/
36
37#ifndef waveDisplacementPointPatchVectorField_H
38#define waveDisplacementPointPatchVectorField_H
39
41
42// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43
44namespace Foam
45{
47/*---------------------------------------------------------------------------*\
48 Class waveDisplacementPointPatchVectorField Declaration
49\*---------------------------------------------------------------------------*/
50
52:
53 public fixedValuePointPatchField<vector>
54{
55 // Private data
56
57 vector amplitude_;
58 scalar omega_;
59 vector waveNumber_;
60
61
62public:
63
64 //- Runtime type information
65 TypeName("waveDisplacement");
66
67
68 // Constructors
69
70 //- Construct from patch and internal field
72 (
73 const pointPatch&,
75 );
76
77 //- Construct from patch, internal field and dictionary
79 (
80 const pointPatch&,
82 const dictionary&
83 );
84
85 //- Construct by mapping given patch field onto a new patch
87 (
89 const pointPatch&,
92 );
93
94 //- Construct as copy setting internal field reference
96 (
99 );
100
101 //- Return a clone
103 {
104 return pointPatchField<vector>::Clone(*this);
105 }
106
107 //- Construct and return a clone setting internal field reference
111 ) const
112 {
113 return pointPatchField<vector>::Clone(*this, iF);
114 }
115
116
117 // Member functions
118
119 // Evaluation functions
120
121 //- Update the coefficients associated with the patch field
122 virtual void updateCoeffs();
123
124
125 //- Write
126 virtual void write(Ostream&) const;
127};
128
129
130// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
131
132} // End namespace Foam
133
134// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
135
136#endif
137
138// ************************************************************************* //
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
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
fixedValuePointPatchField(const pointPatch &, const DimensionedField< vector, pointMesh > &)
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
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
waveDisplacementPointPatchVectorField(const pointPatch &, const DimensionedField< vector, pointMesh > &)
Construct from patch and internal field.
TypeName("waveDisplacement")
Runtime type information.
virtual autoPtr< pointPatchField< vector > > clone() const
Return a clone.
virtual autoPtr< pointPatchField< vector > > clone(const DimensionedField< vector, pointMesh > &iF) const
Construct and return a clone setting internal field reference.
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