shapeModel.C
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) 2019-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 \*---------------------------------------------------------------------------*/
25 
26 #include "shapeModel.H"
27 
28 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
29 
30 namespace Foam
31 {
32 namespace diameterModels
33 {
36 }
37 }
38 
39 
40 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
41 
43 :
44  group_(group)
45 {}
46 
47 
48 // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
49 
52 (
53  const dictionary& dict,
54  const sizeGroup& group,
55  const dictionary& groupDict
56 )
57 {
58  word shapeModelType(dict.lookup("shapeModel"));
59 
60  dictionaryConstructorTable::iterator cstrIter =
61  dictionaryConstructorTablePtr_->find(shapeModelType);
62 
63  if (cstrIter == dictionaryConstructorTablePtr_->end())
64  {
66  << "Unknown shapeModel type "
67  << shapeModelType << endl << endl
68  << "Valid shapeModel types are : " << endl
69  << dictionaryConstructorTablePtr_->sortedToc()
70  << exit(FatalError);
71  }
72 
73  return cstrIter()(dict, group, groupDict);
74 }
75 
76 
77 // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
78 
80 {}
81 
82 
83 // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
84 
87 {
88  return group_;
89 }
90 
91 
93 {}
94 
95 
97 (
98  const volScalarField& Su,
99  const sizeGroup& fj,
100  const sizeGroup& fk
101 )
102 {}
103 
104 
106 (
107  const volScalarField& Su,
108  const sizeGroup& fj
109 )
110 {}
111 
112 
114 (
115  const volScalarField& Su,
116  const sizeGroup& fu,
117  const driftModel& model
118 )
119 {}
120 
121 
123 (
124  const volScalarField& Su,
125  const sizeGroup& fi,
126  const nucleationModel& model
127 )
128 {}
129 
130 
132 {}
133 
134 
135 // ************************************************************************* //
Generic GeometricField class.
Base class for drift models.
Definition: driftModel.H:54
Base class for nucleation models.
Base class for modelling the shape of the particles belonging to a size class through alternative dia...
Definition: shapeModel.H:61
shapeModel(const sizeGroup &group)
Construct from sizeGroup.
Definition: shapeModel.C:42
virtual void correct()
Correct physical diameter.
Definition: shapeModel.C:92
const sizeGroup & group() const
Return reference to size group.
Definition: shapeModel.C:86
virtual void addCoalescence(const volScalarField &Su, const sizeGroup &fj, const sizeGroup &fk)
Add coalescence contribution to secondary property source.
Definition: shapeModel.C:97
virtual void addNucleation(const volScalarField &Su, const sizeGroup &fi, const nucleationModel &model)
Add nucleation contribution to secondary property source.
Definition: shapeModel.C:123
virtual void addBreakup(const volScalarField &Su, const sizeGroup &fj)
Add breakup contribution to secondary property source.
Definition: shapeModel.C:106
static autoPtr< shapeModel > New(const dictionary &dict, const sizeGroup &group, const dictionary &groupDict)
Definition: shapeModel.C:52
virtual void addDrift(const volScalarField &Su, const sizeGroup &fu, const driftModel &model)
Add drift contribution to secondary property source.
Definition: shapeModel.C:114
virtual void reset()
Reset secondary property source.
Definition: shapeModel.C:131
virtual ~shapeModel()
Destructor.
Definition: shapeModel.C:79
Single size class fraction field representing a fixed particle volume as defined by the user through ...
Definition: sizeGroup.H:102
A list of keyword definitions, which are a keyword followed by any number of values (e....
Definition: dictionary.H:162
A class for handling words, derived from string.
Definition: word.H:62
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Definition: error.H:334
const char *const group
Group name for atomic constants.
defineRunTimeSelectionTable(IATEsource, dictionary)
defineTypeNameAndDebug(constant, 0)
tmp< VolField< Type > > Su(const VolField< Type > &su, const VolField< Type > &vf)
Definition: fvcSup.C:44
Namespace for OpenFOAM.
errorManipArg< error, int > exit(error &err, const int errNo=1)
Definition: errorManip.H:124
Ostream & endl(Ostream &os)
Add newline and flush stream.
Definition: Ostream.H:257
error FatalError
dictionary dict