shaped.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) 2025 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::clouds::shaped
26 
27 Description
28  Base class for clouds with particles with mass
29 
30 SourceFiles
31  shaped.C
32 
33 \*---------------------------------------------------------------------------*/
34 
35 #ifndef shaped_H
36 #define shaped_H
37 
38 #include "grouped.H"
39 
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41 
42 namespace Foam
43 {
44 namespace clouds
45 {
46 
47 /*---------------------------------------------------------------------------*\
48  Class shaped Declaration
49 \*---------------------------------------------------------------------------*/
50 
51 class shaped
52 {
53  // Private Member Functions
54 
55  //- Calculate the particles' volumes
56  virtual tmp<LagrangianSubScalarField> calcv
57  (
58  const LagrangianModelRef& model,
59  const LagrangianSubMesh& subMesh
60  ) const = 0;
61 
62  //- Calculate the particles' surface areas
63  virtual tmp<LagrangianSubScalarField> calca
64  (
65  const LagrangianModelRef& model,
66  const LagrangianSubMesh& subMesh
67  ) const = 0;
68 
69  //- Calculate the particles' surface area per unit volumes
70  virtual tmp<LagrangianSubScalarField> calcaByV
71  (
72  const LagrangianModelRef& model,
73  const LagrangianSubMesh& subMesh
74  ) const = 0;
75 
76 
77 public:
78 
79  // Public Static Data
80 
81  //- Run-time type information
82  TypeName("shaped");
83 
84  //- Name of volume fields
85  static const word vName;
86 
87 
88  // Public Data
89 
90  //- Volume
92 
93  //- Surface area
95 
96  //- Surface area per unit volume
98 
99  //- Volume fraction
101 
102 
103  // Constructors
104 
105  //- Construct from a reference to the cloud
106  shaped(const cloud&);
107 
108  //- Construct from a reference to the cloud and its base classes
109  shaped(const cloud&, const grouped&);
110 
111 
112  //- Destructor
113  virtual ~shaped();
114 };
115 
116 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
117 
118 } // End namespace clouds
119 } // End namespace Foam
120 
121 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
122 
123 #endif
124 
125 // ************************************************************************* //
Simple wrapper to provide an optional reference to a Lagrangian model.
Mesh that relates to a sub-section of a Lagrangian mesh. This is used to construct fields that relate...
Base class for clouds. Provides a basic evolution algorithm, models, and a database for caching deriv...
Definition: cloud.H:61
Base class for clouds in which particles are grouped into parcels.
Definition: grouped.H:51
Base class for clouds with particles with mass.
Definition: shaped.H:51
TypeName("shaped")
Run-time type information.
virtual ~shaped()
Destructor.
Definition: shaped.C:92
const CloudAverageField< scalar > & alpha
Volume fraction.
Definition: shaped.H:99
const CloudDerivedField< scalar > & aByV
Surface area per unit volume.
Definition: shaped.H:96
const CloudDerivedField< scalar > & v
Volume.
Definition: shaped.H:90
shaped(const cloud &)
Construct from a reference to the cloud.
Definition: shaped.C:44
const CloudDerivedField< scalar > & a
Surface area.
Definition: shaped.H:93
static const word vName
Name of volume fields.
Definition: shaped.H:84
A class for managing temporary objects.
Definition: tmp.H:55
A class for handling words, derived from string.
Definition: word.H:63
Namespace for OpenFOAM.