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 // ************************************************************************* //
Foam::HeterogeneousReactingModel
Base class for heterogeneous reacting models.
Definition: ReactingHeterogeneousCloud.H:55
Foam::NoheterogeneousReacting::calculate
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.
Definition: NoheterogeneousReacting.C:64
F
volVectorField F(fluid.F())
HeterogeneousReactingModel.H
Foam::NoheterogeneousReacting::active
virtual bool active() const
Flag to indicate whether model activates devolatisation model.
Definition: NoheterogeneousReacting.C:56
nu
volScalarField & nu
Definition: readMechanicalProperties.H:176
Foam::Field< scalar >
Foam::NoheterogeneousReacting
Dummy surface reaction model for 'none'.
Definition: NoheterogeneousReacting.H:51
Foam::T
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Definition: FieldFieldFunctions.C:58
Foam::NoheterogeneousReacting::nReactions
virtual label nReactions() const
Number of reactions in the model.
Definition: NoheterogeneousReacting.C:88
Foam::DSMCCloud
Templated base class for dsmc cloud.
Definition: DSMCCloud.H:71
dict
dictionary dict
Definition: searchingEngine.H:14
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
Foam::NoheterogeneousReacting::~NoheterogeneousReacting
virtual ~NoheterogeneousReacting()=default
Destructor.
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::NoheterogeneousReacting::clone
virtual autoPtr< HeterogeneousReactingModel< CloudType > > clone() const
Construct and return a clone.
Definition: NoheterogeneousReacting.H:73
Foam::autoPtr
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: HashPtrTable.H:53
Foam::NoheterogeneousReacting::TypeName
TypeName("none")
Runtime type information.
Foam::Re
scalarField Re(const UList< complex > &cf)
Extract real component.
Definition: complexField.C:159
NoheterogeneousReacting.C
N
const Vector< label > N(dict.get< Vector< label >>("N"))
Foam::NoheterogeneousReacting::NoheterogeneousReacting
NoheterogeneousReacting(const dictionary &dict, CloudType &owner)
Construct from dictionary.
Definition: NoheterogeneousReacting.C:34