frictionalStressModel.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) 2011-2024 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::kineticTheoryModels::frictionalStressModel
26 
27 SourceFiles
28  frictionalStressModel.C
29 
30 \*---------------------------------------------------------------------------*/
31 
32 #ifndef frictionalStressModel_H
33 #define frictionalStressModel_H
34 
35 #include "dictionary.H"
36 #include "volFields.H"
37 #include "dimensionedTypes.H"
38 #include "runTimeSelectionTables.H"
39 #include "phaseModel.H"
40 
41 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
42 
43 namespace Foam
44 {
45 namespace kineticTheoryModels
46 {
47 
48 /*---------------------------------------------------------------------------*\
49  Class frictionalStressModel Declaration
50 \*---------------------------------------------------------------------------*/
51 
53 {
54  // Private member functions
55 
56  //- Read the coefficients from coeffDict
57  virtual bool readCoeffs(const dictionary& coeffDict)
58  {
59  return true;
60  }
61 
62 
63 public:
64 
65  //- Runtime type information
66  TypeName("frictionalStressModel");
67 
68  // Declare runtime constructor selection table
70  (
71  autoPtr,
73  dictionary,
74  (
75  const dictionary& dict
76  ),
77  (dict)
78  );
79 
80 
81  // Constructors
82 
83  //- Construct from the coefficients dictionary
84  frictionalStressModel(const dictionary& coeffDict);
85 
86  //- Disallow default bitwise copy construction
88 
89 
90  // Selectors
91 
93  (
94  const dictionary& dict
95  );
96 
97 
98  //- Destructor
99  virtual ~frictionalStressModel();
100 
101 
102  // Member Functions
103 
104  //- Read the coefficients from the optional ".*Coeffs" sub-dictionary
105  // of the given dictionary
106  bool read(const dictionary& dict);
107 
109  (
110  const phaseModel& phase,
111  const dimensionedScalar& alphaMinFriction,
113  ) const = 0;
114 
116  (
117  const phaseModel& phase,
118  const dimensionedScalar& alphaMinFriction,
120  ) const = 0;
121 
122  virtual tmp<volScalarField> nu
123  (
124  const phaseModel& phase,
125  const dimensionedScalar& alphaMinFriction,
127  const volScalarField& pf,
128  const volSymmTensorField& D
129  ) const = 0;
130 
131 
132  // Member Operators
133 
134  //- Disallow default bitwise assignment
135  void operator=(const frictionalStressModel&) = delete;
136 };
137 
138 
139 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140 
141 } // End namespace kineticTheoryModels
142 } // End namespace Foam
143 
144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
145 
146 #endif
147 
148 // ************************************************************************* //
Generic GeometricField class.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: autoPtr.H:51
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Definition: dictionary.H:162
virtual tmp< volScalarField > nu(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax, const volScalarField &pf, const volSymmTensorField &D) const =0
frictionalStressModel(const dictionary &coeffDict)
Construct from the coefficients dictionary.
bool read(const dictionary &dict)
Read the coefficients from the optional ".*Coeffs" sub-dictionary.
virtual tmp< volScalarField > frictionalPressure(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const =0
declareRunTimeSelectionTable(autoPtr, frictionalStressModel, dictionary,(const dictionary &dict),(dict))
static autoPtr< frictionalStressModel > New(const dictionary &dict)
void operator=(const frictionalStressModel &)=delete
Disallow default bitwise assignment.
TypeName("frictionalStressModel")
Runtime type information.
virtual tmp< volScalarField > frictionalPressurePrime(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const =0
A class for managing temporary objects.
Definition: tmp.H:55
dimensionedScalar alphaMax(viscosity->lookup("alphaMax"))
static const coefficient D("D", dimTemperature, 257.14)
Namespace for OpenFOAM.
Macros to ease declaration of run-time selection tables.
dictionary dict