thixotropicViscosity.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) 2013-2017 OpenFOAM Foundation
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 Class
27  Foam::regionModels::surfaceFilmModels::thixotropicViscosity
28 
29 Description
30  Thixotropic viscosity model based on the evolution of the structural
31  parameter \f$ \lambda \f$:
32 
33  \f[
34  \lambda = a(1 - \lambda)^b - c \lambda \dot{\gamma}^d
35  \f]
36 
37  The viscosity is then calculated using the expression
38 
39  \f[
40  \mu = \frac{\mu_{\infty}}{{1 - K \lambda}^2}
41  \f]
42 
43  Where the parameter K is given by:
44 
45  \f[
46  K = 1 - \sqrt{\frac{\mu_{\infty}}{\mu_{0}}}
47  \f]
48 
49  Here:
50  \vartable
51  \lambda | structural parameter
52  a | model coefficient
53  b | model coefficient
54  c | model coefficient
55  d | model coefficient
56  \dot{\gamma} | stress rate [1/s]
57  \mu_{0} | limiting viscosity when \f$ \lambda = 1 \f$
58  \mu_{\infty} | limiting viscosity when \f$ \lambda = 0 \f$
59  \endvartable
60 
61  Reference:
62  \verbatim
63  Barnes H A, 1997. Thixotropy - a review. J. Non-Newtonian Fluid
64  Mech 70, pp 1-33
65  \endverbatim
66 
67 SourceFiles
68  thixotropicViscosity.C
69 
70 \*---------------------------------------------------------------------------*/
71 
72 #ifndef thixotropicViscosity_H
73 #define thixotropicViscosity_H
74 
75 #include "filmViscosityModel.H"
76 
77 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
78 
79 namespace Foam
80 {
81 namespace regionModels
82 {
83 namespace surfaceFilmModels
84 {
85 
86 /*---------------------------------------------------------------------------*\
87  Class thixotropicViscosity Declaration
88 \*---------------------------------------------------------------------------*/
89 
90 class thixotropicViscosity
91 :
92  public filmViscosityModel
93 {
94  // Private member functions
95 
96  //- No copy construct
97  thixotropicViscosity(const thixotropicViscosity&) = delete;
98 
99  //- No copy assignment
100  void operator=(const thixotropicViscosity&) = delete;
101 
102 
103 protected:
104 
105  // Protected data
106 
107  //- Model `a' coefficient
109 
110  //- Model `b' coefficient
112 
113  //- Model `d' coefficient
115 
116  //- Model `c' coefficient (read after d since dims depend on d value)
118 
119  //- Limiting viscosity when lambda = 1
121 
122  //- Limiting viscosity when lambda = 0
124 
125  //- Model coefficient
127 
128  //- Structural parameter
129  // 0 = freestream value (most liquid)
130  // 1 = fully built (most solid)
132 
133 
134 public:
135 
136  //- Runtime type information
137  TypeName("thixotropic");
138 
139 
140  // Constructors
141 
142  //- Construct from surface film model
144  (
146  const dictionary& dict,
148  );
149 
150 
151  //- Destructor
152  virtual ~thixotropicViscosity();
153 
154 
155  // Member Functions
156 
157  //- Correct
158  virtual void correct
159  (
160  const volScalarField& p,
161  const volScalarField& T
162  );
163 };
164 
165 
166 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
167 
168 } // End namespace surfaceFilmModels
169 } // End namespace regionModels
170 } // End namespace Foam
171 
172 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
173 
174 #endif
175 
176 // ************************************************************************* //
p
volScalarField & p
Definition: createFieldRefs.H:8
Foam::constant::physicoChemical::mu
const dimensionedScalar mu
Atomic mass unit.
Definition: createFieldRefs.H:4
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::~thixotropicViscosity
virtual ~thixotropicViscosity()
Destructor.
Definition: thixotropicViscosity.C:99
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::TypeName
TypeName("thixotropic")
Runtime type information.
Foam::regionModels::surfaceFilmModels::thixotropicViscosity
Thixotropic viscosity model based on the evolution of the structural parameter :
Definition: thixotropicViscosity.H:121
Foam::regionModels::surfaceFilmModels::filmSubModelBase::film
const surfaceFilmRegionModel & film() const
Return const access to the film surface film model.
Definition: filmSubModelBaseI.H:39
Foam::regionModels::surfaceFilmModels::filmViscosityModel
Base class for surface film viscosity models.
Definition: filmViscosityModel.H:57
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::d_
dimensionedScalar d_
Model `d' coefficient.
Definition: thixotropicViscosity.H:145
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::mu0_
dimensionedScalar mu0_
Limiting viscosity when lambda = 1.
Definition: thixotropicViscosity.H:151
Foam::regionModels::surfaceFilmModels::surfaceFilmRegionModel
Base class for surface film models.
Definition: surfaceFilmRegionModel.H:55
Foam::subModelBase::dict
const dictionary & dict() const
Return const access to the cloud dictionary.
Definition: subModelBase.C:113
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::b_
dimensionedScalar b_
Model `b' coefficient.
Definition: thixotropicViscosity.H:142
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::correct
virtual void correct(const volScalarField &p, const volScalarField &T)
Correct.
Definition: thixotropicViscosity.C:106
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::K_
dimensionedScalar K_
Model coefficient.
Definition: thixotropicViscosity.H:157
Foam::T
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Definition: FieldFieldFunctions.C:58
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::lambda_
volScalarField lambda_
Structural parameter.
Definition: thixotropicViscosity.H:162
Foam::dimensionedScalar
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Definition: dimensionedScalarFwd.H:42
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::muInf_
dimensionedScalar muInf_
Limiting viscosity when lambda = 0.
Definition: thixotropicViscosity.H:154
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
Foam::dimensioned< scalar >
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::a_
dimensionedScalar a_
Model `a' coefficient.
Definition: thixotropicViscosity.H:139
filmViscosityModel.H
Foam::regionModels::surfaceFilmModels::thixotropicViscosity::c_
dimensionedScalar c_
Model `c' coefficient (read after d since dims depend on d value)
Definition: thixotropicViscosity.H:148
Foam::GeometricField< scalar, fvPatchField, volMesh >