Loading...
Searching...
No Matches
displacementMethoddisplacementLaplacian.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) 2007-2019 PCOpt/NTUA
9 Copyright (C) 2013-2019 FOSS GP
10 Copyright (C) 2019 OpenCFD Ltd.
11-------------------------------------------------------------------------------
12License
13 This file is part of OpenFOAM.
14
15 OpenFOAM is free software: you can redistribute it and/or modify it
16 under the terms of the GNU General Public License as published by
17 the Free Software Foundation, either version 3 of the License, or
18 (at your option) any later version.
19
20 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
21 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
22 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
23 for more details.
24
25 You should have received a copy of the GNU General Public License
26 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
27
28Class
29 Foam::displacementMethoddisplacementLaplacian
30
31Description
32 Wrapper class for the displacementLaplacian motion solver
33
34SourceFiles
35 displacementMethoddisplacementLaplacian.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef displacementMethoddisplacementLaplacian_H
40#define displacementMethoddisplacementLaplacian_H
41
42#include "displacementMethod.H"
43
44// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46namespace Foam
47{
49/*---------------------------------------------------------------------------*\
50 Class displacementMethoddisplacementLaplacian Declaration
51\*---------------------------------------------------------------------------*/
52
53class displacementMethoddisplacementLaplacian
54:
55 public displacementMethod
57protected:
59 // Protected data
62
64
65 bool resetFields_;
66
67
68private:
69
70 // Private Member Functions
71
72 //- No copy construct
73 displacementMethoddisplacementLaplacian
74 (
75 const displacementMethoddisplacementLaplacian&
76 ) = delete;
77
78 //- No copy assignment
79 void operator=(const displacementMethoddisplacementLaplacian&) = delete;
80
81
82public:
83
84 //- Runtime type information
85 TypeName("displacementLaplacian");
87
88 // Constructors
89
90 //- Construct from components
91 displacementMethoddisplacementLaplacian
92 (
93 fvMesh& mesh,
94 const labelList& patchIDs
95 );
96
97
98 //- Destructor
100
101
102 // Member Functions
103
104 //- Set motion filed related to model based on given motion
105 void setMotionField(const pointVectorField& pointMovement);
106
107 //- Set motion filed related to model based on given motion
108 void setMotionField(const volVectorField& cellMovement);
109
110 //- Set control field as a vectorField. For methods working with
111 //- parameters (RBF etc)
112 void setControlField(const vectorField& controlField);
113
114 //- Set control field as a vectorField. For methods working with
115 //- parameters (RBF etc)
116 void setControlField(const scalarField& controlField);
117};
118
119
120// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
121
122} // End namespace Foam
123
124// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
125
126#endif
127
128// ************************************************************************* //
labelList patchIDs
TypeName("displacementLaplacian")
Runtime type information.
virtual ~displacementMethoddisplacementLaplacian()=default
Destructor.
void setMotionField(const pointVectorField &pointMovement)
Set motion filed related to model based on given motion.
void setControlField(const vectorField &controlField)
Set control field as a vectorField. For methods working with parameters (RBF etc).
Mesh data needed to do the Finite Volume discretisation.
Definition fvMesh.H:85
dynamicFvMesh & mesh
Namespace for OpenFOAM.
GeometricField< vector, fvPatchField, volMesh > volVectorField
List< label > labelList
A List of labels.
Definition List.H:62
GeometricField< vector, pointPatchField, pointMesh > pointVectorField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Field< vector > vectorField
Specialisation of Field<T> for vector.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68