DAScalarTransportFoam.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2 
3  DAFoam : Discrete Adjoint with OpenFOAM
4  Version : v3
5 
6  Description:
7  Child class for DAScalarTransportFoam
8 
9  This class is modified from OpenFOAM's source code
10  applications/solvers/basic/scalarTransportFoam
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 DAScalarTransportFoam_H
34 #define DAScalarTransportFoam_H
35 
36 #include "DASolver.H"
37 
38 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
39 
40 namespace Foam
41 {
42 
43 /*---------------------------------------------------------------------------*\
44  Class DAScalarTransportFoam Declaration
45 \*---------------------------------------------------------------------------*/
46 
48  : public DASolver
49 {
50 
51 protected:
52 
54  autoPtr<volScalarField> TPtr_;
55 
57  autoPtr<volVectorField> UPtr_;
58 
60  autoPtr<surfaceScalarField> phiPtr_;
61 
63  autoPtr<dimensionedScalar> DTPtr_;
64 
66  word mode_ = "None";
67 
68 
69 public:
70  TypeName("DAScalarTransportFoam");
71  // Constructors
72 
73  //- Construct from components
75  char* argsAll,
76  PyObject* pyOptions);
77 
78  //- Destructor
80  {
81  }
82 
84  virtual void initSolver();
85 
87  virtual label solvePrimal(
88  const Vec xvVec,
89  Vec wVec);
90 };
91 
92 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
93 
94 } // End namespace Foam
95 
96 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
97 
98 #endif
99 
100 // ************************************************************************* //
Foam::DAScalarTransportFoam::~DAScalarTransportFoam
virtual ~DAScalarTransportFoam()
Definition: DAScalarTransportFoam.H:79
Foam::DAScalarTransportFoam::mode_
word mode_
unsteady mode
Definition: DAScalarTransportFoam.H:66
Foam::DASolver
Definition: DASolver.H:49
Foam::DAScalarTransportFoam::TPtr_
autoPtr< volScalarField > TPtr_
temperature field pointer
Definition: DAScalarTransportFoam.H:54
Foam::DAScalarTransportFoam::UPtr_
autoPtr< volVectorField > UPtr_
velocity field pointer
Definition: DAScalarTransportFoam.H:57
Foam::DAScalarTransportFoam
Definition: DAScalarTransportFoam.H:47
Foam::DAScalarTransportFoam::DTPtr_
autoPtr< dimensionedScalar > DTPtr_
DT pointer.
Definition: DAScalarTransportFoam.H:63
Foam
Definition: multiFreqScalarFvPatchField.C:144
Foam::DAScalarTransportFoam::solvePrimal
virtual label solvePrimal(const Vec xvVec, Vec wVec)
solve the primal equations
Definition: DAScalarTransportFoam.C:128
Foam::DAScalarTransportFoam::TypeName
TypeName("DAScalarTransportFoam")
Foam::DAScalarTransportFoam::phiPtr_
autoPtr< surfaceScalarField > phiPtr_
flux field pointer
Definition: DAScalarTransportFoam.H:60
DASolver.H
Foam::DAScalarTransportFoam::initSolver
virtual void initSolver()
initialize fields and variables
Definition: DAScalarTransportFoam.C:53
Foam::DAScalarTransportFoam::DAScalarTransportFoam
DAScalarTransportFoam(char *argsAll, PyObject *pyOptions)
Definition: DAScalarTransportFoam.C:41