26 #ifndef GRINS_CANTERA_MIXTURE_H
27 #define GRINS_CANTERA_MIXTURE_H
29 #include "grins_config.h"
31 #ifdef GRINS_HAVE_CANTERA
34 #include "libmesh/threads.h"
37 #include "libmesh/ignore_warnings.h"
38 #include "cantera/IdealGasMix.h"
39 #include "cantera/transport.h"
40 #include "libmesh/restore_warnings.h"
43 #include <boost/scoped_ptr.hpp>
50 static libMesh::Threads::spin_mutex cantera_mutex;
74 libMesh::Real
M(
unsigned int species )
const;
76 libMesh::Real
M_mix(
const std::vector<libMesh::Real>& mass_fractions )
const;
78 libMesh::Real
R(
unsigned int species )
const;
80 libMesh::Real
R_mix(
const std::vector<libMesh::Real>& mass_fractions )
const;
82 libMesh::Real
X(
unsigned int species, libMesh::Real M, libMesh::Real mass_fraction )
const;
84 void X( libMesh::Real M,
const std::vector<libMesh::Real>& mass_fractions,
85 std::vector<libMesh::Real>& mole_fractions )
const;
91 std::string
species_name(
unsigned int species_index )
const;
141 return Cantera::GasConstant/
_cantera_gas->molecularWeight(species);
147 libMesh::Real mass_fraction )
const
149 return mass_fraction*M_mix/this->
M(species);
178 #endif // GRINS_HAVE_CANTERA
180 #endif // GRINS_CANTERA_MIXTURE_H
libMesh::Real R(unsigned int species) const
libMesh::Real X(unsigned int species, libMesh::Real M, libMesh::Real mass_fraction) const
boost::scoped_ptr< Cantera::Transport > _cantera_transport
boost::scoped_ptr< Cantera::IdealGasMix > _cantera_gas
std::string species_name(unsigned int species_index) const
unsigned int species_index(const std::string &species_name) const
unsigned int n_species() const
libMesh::Real M_mix(const std::vector< libMesh::Real > &mass_fractions) const
libMesh::Real R_mix(const std::vector< libMesh::Real > &mass_fractions) const
Cantera::IdealGasMix & get_chemistry()
Wrapper class for storing state for computing thermochemistry and transport properties using Cantera...
CanteraMixture ChemistryParent
This is basically dummy, but is needed for template games elsewhere.
Cantera::Transport & get_transport()
const CanteraMixture & chemistry() const
libMesh::Real M(unsigned int species) const