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  solidParticleCloudI.H
35  solidParticleCloud.C
36  solidParticleCloudIO.C
37 
38 \*---------------------------------------------------------------------------*/
39 
40 #ifndef solidParticleCloud_H
41 #define solidParticleCloud_H
42 
43 #include "Cloud.H"
44 #include "solidParticle.H"
45 #include "IOdictionary.H"
46 
47 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48 
49 namespace Foam
50 {
51 
52 // Forward Declarations
53 class fvMesh;
54 
55 /*---------------------------------------------------------------------------*\
56  Class solidParticleCloud Declaration
57 \*---------------------------------------------------------------------------*/
58 
60 :
61  public Cloud<solidParticle>
62 {
63  // Private data
64 
65  const fvMesh& mesh_;
66 
67  IOdictionary particleProperties_;
68 
69  scalar rhop_;
70  scalar e_;
71  scalar mu_;
72 
73 
74  // Private Member Functions
75 
76  //- No copy construct
77  solidParticleCloud(const solidParticleCloud&) = delete;
78 
79  //- No copy assignment
80  void operator=(const solidParticleCloud&) = delete;
81 
82 
83 public:
84 
85  // Constructors
86 
87  //- Construct given mesh
88  explicit solidParticleCloud
89  (
90  const fvMesh& mesh,
92  bool readFields = true
93  );
94 
95 
96  // Member Functions
97 
98  // Access
99 
100  inline const fvMesh& mesh() const;
101 
102  inline scalar rhop() const;
103  inline scalar e() const;
104  inline scalar mu() const;
105 
106 
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 #include "solidParticleCloudI.H"
122 
123 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
124 
125 #endif
126 
127 // ************************************************************************* //
Foam::IOdictionary
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
Definition: IOdictionary.H:54
solidParticleCloudI.H
cloudName
const word cloudName(propsDict.get< word >("cloud"))
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::solidParticleCloud::move
void move(const dimensionedVector &g)
Move the particles under the influence of the given.
Definition: solidParticleCloud.C:68
Foam::solidParticleCloud
A Cloud of solid particles.
Definition: solidParticleCloud.H:58
Cloud.H
Foam::solidParticleCloud::e
scalar e() const
Definition: solidParticleCloudI.H:42
Foam::solidParticleCloud::mu
scalar mu() const
Definition: solidParticleCloudI.H:48
Foam::solidParticleCloud::rhop
scalar rhop() const
Definition: solidParticleCloudI.H:36
Foam::dimensioned< vector >
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:85
g
const uniformDimensionedVectorField & g
Definition: createFluidFields.H:26
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
solidParticle.H
Foam::cloud::defaultName
static word defaultName
The default cloud name: defaultCloud.
Definition: cloud.H:90
Foam::readFields
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const wordHashSet &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the templated type.
Definition: ReadFieldsTemplates.C:312
IOdictionary.H
Foam::solidParticleCloud::mesh
const fvMesh & mesh() const
Definition: solidParticleCloudI.H:30
Foam::Cloud
Base cloud calls templated on particle type.
Definition: Cloud.H:55