OpenFOAM
10
The OpenFOAM Foundation
mixtureViscosityModel.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) 2014-2022 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
Namespace
25
Foam::mixtureViscosityModels
26
27
Description
28
A namespace for incompressible mixtureViscosityModel implementations.
29
30
Class
31
Foam::mixtureViscosityModel
32
33
Description
34
An abstract base class for incompressible mixtureViscosityModels.
35
36
SourceFiles
37
mixtureViscosityModel.C
38
mixtureViscosityModelNew.C
39
40
\*---------------------------------------------------------------------------*/
41
42
#ifndef mixtureViscosityModel_H
43
#define mixtureViscosityModel_H
44
45
#include "
incompressibleTwoPhaseInteractingMixture.H
"
46
#include "
viscosityModel.H
"
47
#include "
runTimeSelectionTables.H
"
48
49
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50
51
namespace
Foam
52
{
53
54
/*---------------------------------------------------------------------------*\
55
Class mixtureViscosityModel Declaration
56
\*---------------------------------------------------------------------------*/
57
58
class
mixtureViscosityModel
59
:
60
public
viscosityModel
61
{
62
63
protected
:
64
65
// Protected data
66
67
//- Mixture properties
68
const
incompressibleTwoPhaseInteractingMixture
&
mixture_
;
69
70
71
public
:
72
73
//- Runtime type information
74
TypeName
(
"mixtureViscosityModel"
);
75
76
77
// Declare run-time constructor selection table
78
79
declareRunTimeSelectionTable
80
(
81
autoPtr
,
82
mixtureViscosityModel
,
83
dictionary
,
84
(
85
const
incompressibleTwoPhaseInteractingMixture
&
mixture
86
),
87
(mixture)
88
);
89
90
91
// Constructors
92
93
//- Construct from mixture
94
mixtureViscosityModel
95
(
96
const
incompressibleTwoPhaseInteractingMixture
& mixture
97
);
98
99
//- Disallow default bitwise copy construction
100
mixtureViscosityModel
(
const
mixtureViscosityModel
&) =
delete
;
101
102
103
// Selectors
104
105
//- Return a reference to the selected viscosity model
106
static
autoPtr<mixtureViscosityModel>
New
107
(
108
const
incompressibleTwoPhaseInteractingMixture
& mixture
109
);
110
111
112
//- Destructor
113
virtual
~mixtureViscosityModel
()
114
{}
115
116
117
// Member Functions
118
119
//- Return the laminar viscosity
120
virtual
tmp<volScalarField>
nu
()
const
121
{
122
NotImplemented
;
123
return
tmp<volScalarField>
(
nullptr
);
124
}
125
126
//- Return the laminar viscosity for patch
127
virtual
tmp<scalarField>
nu
(
const
label
patchi
)
const
128
{
129
NotImplemented
;
130
return
tmp<scalarField>
(
nullptr
);
131
}
132
133
//- Correct the laminar viscosity
134
virtual
void
correct
()
135
{}
136
137
//- Return the mixture viscosity
138
// given the viscosity and velocity of the continuous phase
139
virtual
tmp<volScalarField>
mu
140
(
141
const
volScalarField
&
muc
,
142
const
volVectorField
&
U
143
)
const
= 0;
144
145
146
// Member Operators
147
148
//- Disallow default bitwise assignment
149
void
operator=
(
const
mixtureViscosityModel
&) =
delete
;
150
};
151
152
153
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
154
155
}
// End namespace Foam
156
157
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
158
159
#endif
160
161
// ************************************************************************* //
incompressibleTwoPhaseInteractingMixture.H
Foam::incompressibleTwoPhaseInteractingMixture
A two-phase incompressible transportModel for interacting phases requiring the direct evaluation of t...
Definition:
incompressibleTwoPhaseInteractingMixture.H:56
U
U
Definition:
pEqn.H:72
Foam::dictionary
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition:
dictionary.H:156
Foam::mixtureViscosityModel::~mixtureViscosityModel
virtual ~mixtureViscosityModel()
Destructor.
Definition:
mixtureViscosityModel.H:112
muc
volScalarField muc(IOobject(IOobject::groupName("mu", continuousPhaseName), runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), rhoc *continuousPhaseViscosity->nu())
Foam::FvWallInfoData< WallInfo, label >
Foam::GeometricField< scalar, fvPatchField, volMesh >
Foam::viscosityModel
An abstract base class for Newtonian viscosity models.
Definition:
viscosityModel.H:59
Foam::mixtureViscosityModel::correct
virtual void correct()
Correct the laminar viscosity.
Definition:
mixtureViscosityModel.H:133
viscosityModel.H
Foam::mixtureViscosityModel
An abstract base class for incompressible mixtureViscosityModels.
Definition:
mixtureViscosityModel.H:57
Foam::mixtureViscosityModel::declareRunTimeSelectionTable
declareRunTimeSelectionTable(autoPtr, mixtureViscosityModel, dictionary,(const incompressibleTwoPhaseInteractingMixture &mixture),(mixture))
Foam::mixtureViscosityModel::New
static autoPtr< mixtureViscosityModel > New(const incompressibleTwoPhaseInteractingMixture &mixture)
Return a reference to the selected viscosity model.
Foam::mixtureViscosityModel::nu
virtual tmp< volScalarField > nu() const
Return the laminar viscosity.
Definition:
mixtureViscosityModel.H:119
Foam::mixtureViscosityModel::mixture_
const incompressibleTwoPhaseInteractingMixture & mixture_
Mixture properties.
Definition:
mixtureViscosityModel.H:67
Foam::mixtureViscosityModel::mixtureViscosityModel
mixtureViscosityModel(const incompressibleTwoPhaseInteractingMixture &mixture)
Construct from mixture.
Foam::mixtureViscosityModel::TypeName
TypeName("mixtureViscosityModel")
Runtime type information.
patchi
label patchi
Definition:
getPatchFieldScalar.H:1
Foam::mixture
Definition:
mixture.H:52
Foam::autoPtr
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition:
PtrList.H:52
Foam::mixtureViscosityModel::mu
virtual tmp< volScalarField > mu(const volScalarField &muc, const volVectorField &U) const =0
Return the mixture viscosity.
runTimeSelectionTables.H
Macros to ease declaration of run-time selection tables.
Foam::tmp
A class for managing temporary objects.
Definition:
PtrList.H:53
NotImplemented
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
Definition:
error.H:353
Foam::mixtureViscosityModel::operator=
void operator=(const mixtureViscosityModel &)=delete
Disallow default bitwise assignment.
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.H:213
applications
solvers
multiphase
driftFluxFoam
mixtureViscosityModels
mixtureViscosityModel
mixtureViscosityModel.H
Generated by
1.8.13