All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fluidSolutionControl.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2018-2023 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 Class
25  Foam::fluidSolutionControl
26 
27 Description
28  Fluid solution control class. Holds flags specific to the solution of
29  fluids.
30 
31 SourceFiles
32  fluidSolutionControlI.H
33  fluidSolutionControl.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef fluidSolutionControl_H
38 #define fluidSolutionControl_H
39 
41 
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43 
44 namespace Foam
45 {
46 
47 /*---------------------------------------------------------------------------*\
48  Class fluidSolutionControl Declaration
49 \*---------------------------------------------------------------------------*/
50 
52 :
54 {
55 protected:
56 
57  // Protected data
58 
59  //- Flag to indicate to solve for the optional models
60  bool models_;
61 
62  //- Flag to indicate to solve for the thermophysics
63  bool thermophysics_;
64 
65  //- Flag to indicate to solve for the flow
66  bool flow_;
67 
68  //- Flag to indicate to solve for momentum
69  bool momentumPredictor_;
70 
71  //- Flag to indicate to solve using transonic algorithm
72  bool transonic_;
73 
74  //- Flag to indicate to relax pressure using the "consistent" approach
75  // of simplec
76  bool consistent_;
77 
78 
79 protected:
80 
81  // Protected Member Functions
82 
83  //- Read controls
84  virtual bool read();
85 
86 
87 public:
88 
89  // Static Data Members
90 
91  //- Run-time type information
92  TypeName("fluidSolutionControl");
93 
94 
95  // Constructors
96 
97  //- Construct from a mesh and the name of the algorithm
99 
100 
101  //- Destructor
102  virtual ~fluidSolutionControl();
103 
104 
105  // Member Functions
106 
107  // Access
108 
109  //- Flag to indicate to solve for the options models
110  inline bool models() const;
111 
112  //- Flag to indicate to solve for the thermophysics
113  inline bool thermophysics() const;
114 
115  //- Flag to indicate to solve for the flow
116  inline bool flow() const;
117 
118  //- Flag to indicate to solve for momentum
119  inline bool momentumPredictor() const;
120 
121  //- Flag to indicate to solve using transonic algorithm
122  inline bool transonic() const;
123 
124  //- Flag to indicate to relax pressure using the "consistent"
125  // approach of simplec
126  inline bool consistent() const;
127 };
128 
129 
130 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
131 
132 } // End namespace Foam
133 
134 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
135 
136 #include "fluidSolutionControlI.H"
137 
138 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
139 
140 #endif
141 
142 // ************************************************************************* //
Fluid solution control class. Holds flags specific to the solution of fluids.
bool models_
Flag to indicate to solve for the optional models.
bool transonic_
Flag to indicate to solve using transonic algorithm.
bool transonic() const
Flag to indicate to solve using transonic algorithm.
bool thermophysics() const
Flag to indicate to solve for the thermophysics.
bool models() const
Flag to indicate to solve for the options models.
bool momentumPredictor_
Flag to indicate to solve for momentum.
fluidSolutionControl(fvMesh &mesh, const word &algorithmName)
Construct from a mesh and the name of the algorithm.
bool flow_
Flag to indicate to solve for the flow.
bool thermophysics_
Flag to indicate to solve for the thermophysics.
TypeName("fluidSolutionControl")
Run-time type information.
bool momentumPredictor() const
Flag to indicate to solve for momentum.
bool consistent_
Flag to indicate to relax pressure using the "consistent" approach.
bool flow() const
Flag to indicate to solve for the flow.
virtual ~fluidSolutionControl()
Destructor.
bool consistent() const
Flag to indicate to relax pressure using the "consistent".
virtual bool read()
Read controls.
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:99
Non-orthogonal solution control class. Provides non-orthogonal-loop control methods.
const fvMesh & mesh() const
Return the mesh.
const word & algorithmName() const
Return the name of the algorithm.
A class for handling words, derived from string.
Definition: word.H:62
Namespace for OpenFOAM.