NoheterogeneousReacting.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) 2018-2019 OpenCFD Ltd.
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 Class
27  Foam::NoheterogeneousReacting
28 
29 Group
30  grpLagrangianIntermediateSurfaceReactionSubModels
31 
32 Description
33  Dummy surface reaction model for 'none'
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef NoheterogeneousReacting_H
38 #define NoheterogeneousReacting_H
39 
41 
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43 
44 namespace Foam
45 {
46 
47 /*---------------------------------------------------------------------------*\
48  Class NoheterogeneousReacting Declaration
49 \*---------------------------------------------------------------------------*/
50 
51 template<class CloudType>
53 :
54  public HeterogeneousReactingModel<CloudType>
55 {
56 public:
57 
58  //- Runtime type information
59  TypeName("none");
60 
61 
62  // Constructors
63 
64  //- Construct from dictionary
66 
67  //- Construct copy
69  (
71  );
72 
73  //- Construct and return a clone
75  {
77  (
79  );
80  }
81 
82 
83  //- Destructor
84  virtual ~NoheterogeneousReacting() = default;
85 
86 
87  // Member Functions
88 
89  //- Flag to indicate whether model activates devolatisation model
90  virtual bool active() const;
91 
92  //- Update surface reactions
93  virtual scalar calculate
94  (
95  const scalar dt,
96  const scalar Re,
97  const scalar nu,
98  const label celli,
99  const scalar d,
100  const scalar T,
101  const scalar Tc,
102  const scalar pc,
103  const scalar rhoc,
104  const scalar mass,
105  const scalarField& YSolid,
106  scalarField& F,
107  const scalar N,
108  scalar& NCpW,
109  scalarField& dMassSolid,
110  scalarField& dMassSRCarrier
111  ) const;
112 
113  //- Number of reactions in the model
114  virtual label nReactions() const;
115 
116 };
117 
118 
119 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
120 
121 } // End namespace Foam
122 
123 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
124 
125 #ifdef NoRepository
126  #include "NoheterogeneousReacting.C"
127 #endif
128 
129 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
130 
131 #endif
132 
133 // ************************************************************************* //
A list of keyword definitions, which are a keyword followed by a number of values (eg...
Definition: dictionary.H:129
TypeName("none")
Runtime type information.
const dictionary & dict() const
Return const access to the cloud dictionary.
Definition: subModelBase.C:104
const CloudType & owner() const
Return const access to the owner cloud.
virtual ~NoheterogeneousReacting()=default
Destructor.
NoheterogeneousReacting(const dictionary &dict, CloudType &owner)
Construct from dictionary.
virtual autoPtr< HeterogeneousReactingModel< CloudType > > clone() const
Construct and return a clone.
volVectorField F(fluid.F())
virtual scalar calculate(const scalar dt, const scalar Re, const scalar nu, const label celli, const scalar d, const scalar T, const scalar Tc, const scalar pc, const scalar rhoc, const scalar mass, const scalarField &YSolid, scalarField &F, const scalar N, scalar &NCpW, scalarField &dMassSolid, scalarField &dMassSRCarrier) const
Update surface reactions.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
const Vector< label > N(dict.get< Vector< label >>("N"))
scalarField Re(const UList< complex > &cmplx)
Extract real component.
Definition: complexField.C:207
virtual bool active() const
Flag to indicate whether model activates devolatisation model.
Base class for heterogeneous reacting models.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Definition: HashPtrTable.H:48
virtual label nReactions() const
Number of reactions in the model.
Dummy surface reaction model for &#39;none&#39;.
Templated base class for dsmc cloud.
Definition: DSMCCloud.H:67
volScalarField & nu
Namespace for OpenFOAM.