GRINS-0.7.0
antioch_mixture.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2016 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 
26 #ifndef GRINS_ANTIOCH_MIXTURE_H
27 #define GRINS_ANTIOCH_MIXTURE_H
28 
29 #include "grins_config.h"
30 
31 #ifdef GRINS_HAVE_ANTIOCH
32 
33 // GRINS
35 #include "grins/property_types.h"
36 
37 // libMesh
38 #include "libmesh/libmesh_common.h"
39 
40 // Antioch
41 #include "antioch/vector_utils_decl.h"
42 #include "antioch/vector_utils.h"
43 #include "antioch/chemical_mixture.h"
44 #include "antioch/cea_mixture.h"
45 #include "antioch/reaction_set.h"
46 
47 // libMesh forward declarations
48 class GetPot;
49 
50 namespace GRINS
51 {
53 
61  {
62  public:
63 
64  AntiochMixture( const GetPot& input, const std::string& material );
65 
66  virtual ~AntiochMixture(){};
67 
68  // Registers all parameters in this physics and in its property
69  // classes
70  virtual void register_parameter
71  ( const std::string & param_name,
73  const;
74 
75  const Antioch::ReactionSet<libMesh::Real>& reaction_set() const;
76 
77  const Antioch::CEAThermoMixture<libMesh::Real>& cea_mixture() const;
78 
79  libMesh::Real h_stat_mech_ref_correction( unsigned int species ) const;
80 
81  protected:
82 
83  libMesh::UniquePtr<Antioch::ReactionSet<libMesh::Real> > _reaction_set;
84 
85  libMesh::UniquePtr<Antioch::CEAThermoMixture<libMesh::Real> > _cea_mixture;
86 
87  std::vector<libMesh::Real> _h_stat_mech_ref_correction;
88 
90 
91  private:
92 
94 
95  };
96 
97  /* ------------------------- Inline Functions -------------------------*/
98  inline
99  const Antioch::ReactionSet<libMesh::Real>& AntiochMixture::reaction_set() const
100  {
101  return *_reaction_set.get();
102  }
103 
104  inline
105  const Antioch::CEAThermoMixture<libMesh::Real>& AntiochMixture::cea_mixture() const
106  {
107  return *_cea_mixture.get();
108  }
109 
110  inline
111  libMesh::Real AntiochMixture::h_stat_mech_ref_correction( unsigned int species ) const
112  {
113  return _h_stat_mech_ref_correction[species];
114  }
115 
116 } // end namespace GRINS
117 
118 #endif // GRINS_HAVE_ANTIOCH
119 
120 #endif // GRINS_ANTIOCH_MIXTURE_H
libMesh::UniquePtr< Antioch::ReactionSet< libMesh::Real > > _reaction_set
libMesh::Real h_stat_mech_ref_correction(unsigned int species) const
Wrapper class for Antioch::ChemicalMixture.
const Antioch::CEAThermoMixture< libMesh::Real > & cea_mixture() const
GRINS namespace.
void build_stat_mech_ref_correction()
virtual void register_parameter(const std::string &param_name, libMesh::ParameterMultiAccessor< libMesh::Number > &param_pointer) const
Each subclass will register its copy of an independent.
const Antioch::ReactionSet< libMesh::Real > & reaction_set() const
libMesh::UniquePtr< Antioch::CEAThermoMixture< libMesh::Real > > _cea_mixture
std::vector< libMesh::Real > _h_stat_mech_ref_correction
Wrapper class for storing state for Antioch thermo and kinetics.

Generated on Thu Jun 2 2016 21:52:28 for GRINS-0.7.0 by  doxygen 1.8.10