pyrolysisModelCollection.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 | Copyright (C) 2011-2014 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::pyrolysisModelCollection
26 
27 Description
28  A centralized pyrolysis collection.
29 
30  Container class for a set of pyrolysis with functions implemented
31  to loop over the functions for each type.
32 
33 SourceFiles
34  pyrolysisModelCollection.C
35 
36 \*---------------------------------------------------------------------------*/
37 
38 #ifndef pyrolysisModelCollection_H
39 #define pyrolysisModelCollection_H
40 
41 #include "PtrList.H"
42 #include "pyrolysisModel.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 
49 // Forward class declarations
50 class fvMesh;
51 
52 namespace regionModels
53 {
54 namespace pyrolysisModels
55 {
56 
57 /*---------------------------------------------------------------------------*\
58  Class pyrolysisModelCollection Declaration
59 \*---------------------------------------------------------------------------*/
60 
62 :
63  public PtrList<pyrolysisModel>
64 {
65  // Private Member Functions
66 
67  //- Disallow default bitwise copy construct
69 
70  //- Disallow default bitwise assignment
71  void operator=(const pyrolysisModelCollection&);
72 
73 
74 public:
75 
76  // Runtime type information
77  TypeName("pyrolysisModelCollection");
78 
79 
80  // Constructors
81 
82  //- Construct from mesh
84 
85 
86  //- Destructor
87  virtual ~pyrolysisModelCollection();
88 
89 
90  // Member Functions
91 
92  //- Pre-evolve regions
93  virtual void preEvolveRegion();
94 
95  //- Evolve the pyrolysis equation regions
96  virtual void evolveRegion();
97 
98  //- Evolve regions
99  virtual void evolve();
100 
101  //- Provide some feedback from pyrolysis regions
102  virtual void info();
103 
104  //- Return max diffusivity allowed in the solid
105  virtual scalar maxDiff() const;
106 
107  //- Mean diffusion number of the solid regions
108  virtual scalar solidRegionDiffNo() const;
109 };
110 
111 
112 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
113 
114 } // End namespace pyrolysisModels
115 } // End namespace regionModels
116 } // End namespace Foam
117 
118 
119 #endif
120 
121 // ************************************************************************* //
virtual scalar solidRegionDiffNo() const
Mean diffusion number of the solid regions.
virtual void evolveRegion()
Evolve the pyrolysis equation regions.
virtual scalar maxDiff() const
Return max diffusivity allowed in the solid.
virtual void info()
Provide some feedback from pyrolysis regions.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Definition: List.H:63
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:78
Namespace for OpenFOAM.