DASolidDisplacementFoam.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2 
3  DAFoam : Discrete Adjoint with OpenFOAM
4  Version : v4
5 
6  Description:
7  Child class for DASolidDisplacementFoam
8 
9  This class is modified from OpenFOAM's source code
10  applications/solvers/stressAnalysis/solidDisplacementFoam
11 
12  OpenFOAM: The Open Source CFD Toolbox
13 
14  Copyright (C): 2011-2016 OpenFOAM Foundation
15 
16  OpenFOAM License:
17 
18  OpenFOAM is free software: you can redistribute it and/or modify it
19  under the terms of the GNU General Public License as published by
20  the Free Software Foundation, either version 3 of the License, or
21  (at your option) any later version.
22 
23  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
24  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
25  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
26  for more details.
27 
28  You should have received a copy of the GNU General Public License
29  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
30 
31 \*---------------------------------------------------------------------------*/
32 
33 #ifndef DASolidDisplacementFoam_H
34 #define DASolidDisplacementFoam_H
35 
36 #include "Switch.H"
37 #include "DASolver.H"
38 #include "addToRunTimeSelectionTable.H"
39 
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41 
42 namespace Foam
43 {
44 
45 /*---------------------------------------------------------------------------*\
46  Class DASolidDisplacementFoam Declaration
47 \*---------------------------------------------------------------------------*/
48 
50  : public DASolver
51 {
52 
53 protected:
55  autoPtr<volScalarField> rhoPtr_;
56 
58  autoPtr<volScalarField> muPtr_;
59 
61  autoPtr<volScalarField> lambdaPtr_;
62 
64  autoPtr<volScalarField> EPtr_;
65 
67  autoPtr<volScalarField> nuPtr_;
68 
70  autoPtr<volVectorField> DPtr_;
71 
73  autoPtr<volTensorField> gradDPtr_;
74 
75 public:
76  TypeName("DASolidDisplacementFoam");
77  // Constructors
78 
79  //- Construct from components
81  char* argsAll,
82  PyObject* pyOptions);
83 
84  //- Destructor
86  {
87  }
88 
90  virtual void initSolver();
91 
93  virtual label solvePrimal();
94 };
95 
96 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
97 
98 } // End namespace Foam
99 
100 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
101 
102 #endif
103 
104 // ************************************************************************* //
Foam::DASolidDisplacementFoam::EPtr_
autoPtr< volScalarField > EPtr_
E field pointer.
Definition: DASolidDisplacementFoam.H:64
Foam::DASolidDisplacementFoam::muPtr_
autoPtr< volScalarField > muPtr_
mu field pointer
Definition: DASolidDisplacementFoam.H:58
Foam::DASolidDisplacementFoam
Definition: DASolidDisplacementFoam.H:49
Foam::DASolidDisplacementFoam::DPtr_
autoPtr< volVectorField > DPtr_
displacement field pointer
Definition: DASolidDisplacementFoam.H:70
Foam::DASolidDisplacementFoam::~DASolidDisplacementFoam
virtual ~DASolidDisplacementFoam()
Definition: DASolidDisplacementFoam.H:85
Foam::DASolver
Definition: DASolver.H:54
Foam::DASolidDisplacementFoam::solvePrimal
virtual label solvePrimal()
solve the primal equations
Definition: DASolidDisplacementFoam.C:70
Foam::DASolidDisplacementFoam::nuPtr_
autoPtr< volScalarField > nuPtr_
nu field pointer
Definition: DASolidDisplacementFoam.H:67
Foam::DASolidDisplacementFoam::gradDPtr_
autoPtr< volTensorField > gradDPtr_
displacement gradient pointer
Definition: DASolidDisplacementFoam.H:73
Foam::DASolidDisplacementFoam::lambdaPtr_
autoPtr< volScalarField > lambdaPtr_
lambda field pointer
Definition: DASolidDisplacementFoam.H:61
Foam::DASolidDisplacementFoam::TypeName
TypeName("DASolidDisplacementFoam")
Foam
Definition: checkGeometry.C:32
Foam::DASolidDisplacementFoam::rhoPtr_
autoPtr< volScalarField > rhoPtr_
density field pointer
Definition: DASolidDisplacementFoam.H:55
Foam::DASolidDisplacementFoam::DASolidDisplacementFoam
DASolidDisplacementFoam(char *argsAll, PyObject *pyOptions)
Definition: DASolidDisplacementFoam.C:41
Foam::DASolidDisplacementFoam::initSolver
virtual void initSolver()
initialize fields and variables
Definition: DASolidDisplacementFoam.C:56
DASolver.H