solidParticleCloud.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) 2011-2017 OpenFOAM Foundation
9  Copyright (C) 2019 OpenCFD Ltd.
10 -------------------------------------------------------------------------------
11 License
12  This file is part of OpenFOAM.
13 
14  OpenFOAM is free software: you can redistribute it and/or modify it
15  under the terms of the GNU General Public License as published by
16  the Free Software Foundation, either version 3 of the License, or
17  (at your option) any later version.
18 
19  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22  for more details.
23 
24  You should have received a copy of the GNU General Public License
25  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26 
27 Class
28  Foam::solidParticleCloud
29 
30 Description
31  A Cloud of solid particles
32 
33 SourceFiles
34  solidParticleCloud.C
35  solidParticleCloudIO.C
36 
37 \*---------------------------------------------------------------------------*/
38 
39 #ifndef Foam_solidParticleCloud_H
40 #define Foam_solidParticleCloud_H
41 
42 #include "Cloud.H"
43 #include "solidParticle.H"
44 #include "IOdictionary.H"
45 
46 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 
48 namespace Foam
49 {
50 
51 // Forward Declarations
52 class fvMesh;
53 
54 /*---------------------------------------------------------------------------*\
55  Class solidParticleCloud Declaration
56 \*---------------------------------------------------------------------------*/
57 
59 :
60  public Cloud<solidParticle>
61 {
62  // Private Data
63 
64  const fvMesh& mesh_;
65 
66  IOdictionary particleProperties_;
67 
68  scalar rhop_;
69  scalar e_;
70  scalar mu_;
71 
72 
73 public:
74 
75  //- Type of parcel within the cloud
76  typedef solidParticle parcelType;
77 
78  //- No copy construct
79  solidParticleCloud(const solidParticleCloud&) = delete;
80 
81  //- No copy assignment
82  void operator=(const solidParticleCloud&) = delete;
83 
84 
85  // Constructors
86 
87  //- Read construct
88  explicit solidParticleCloud
89  (
90  const fvMesh& mesh,
92  bool readFields = true
93  );
94 
95 
96  // Member Functions
97 
98  // Access
99 
100  const fvMesh& mesh() const { return mesh_; }
101 
102  scalar rhop() const noexcept { return rhop_; }
103  scalar e() const noexcept { return e_; }
104  scalar mu() const noexcept { return mu_; }
107  // Edit
108 
109  //- Move the particles under the influence of the given
110  //- gravitational acceleration
111  void move(const dimensionedVector& g);
112 };
113 
114 
115 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
116 
117 } // End namespace Foam
118 
119 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
120 
121 #endif
122 
123 // ************************************************************************* //
static word defaultName
The default cloud name: defaultCloud.
Definition: cloud.H:84
scalar e() const noexcept
solidParticle parcelType
Type of parcel within the cloud.
void operator=(const solidParticleCloud &)=delete
No copy assignment.
const fvMesh & mesh() const
void move(const dimensionedVector &g)
Move the particles under the influence of the given gravitational acceleration.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
Definition: IOdictionary.H:50
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const NameMatchPredicate &selectedFields, DynamicList< regIOobject *> &storedObjects)
Read the selected GeometricFields of the templated type and store on the objectRegistry.
const word cloudName(propsDict.get< word >("cloud"))
A class for handling words, derived from Foam::string.
Definition: word.H:63
A Cloud of solid particles.
Base cloud calls templated on particle type.
Definition: Cloud.H:51
const direction noexcept
Definition: Scalar.H:258
const uniformDimensionedVectorField & g
scalar mu() const noexcept
solidParticleCloud(const solidParticleCloud &)=delete
No copy construct.
scalar rhop() const noexcept
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:78
Simple solid spherical particle class with one-way coupling with the continuous phase.
Definition: solidParticle.H:60
Namespace for OpenFOAM.