26 #include "grins_config.h"
28 #ifdef GRINS_HAVE_CANTERA
38 #include "libmesh/getpot.h"
41 #include "libmesh/ignore_warnings.h"
42 #include "cantera/IdealGasMix.h"
43 #include "cantera/transport.h"
44 #include "libmesh/restore_warnings.h"
50 : _cantera_gas( mixture.get_chemistry() ),
51 _cantera_transport( mixture.get_transport() )
67 libmesh_assert_equal_to( Y.size(),
_cantera_gas.nSpecies() );
69 libMesh::Real
mu = 0.0;
72 libMesh::Threads::spin_mutex::scoped_lock lock(cantera_mutex);
81 catch(Cantera::CanteraError)
83 Cantera::showErrors(std::cerr);
98 libmesh_assert_equal_to( Y.size(),
_cantera_gas.nSpecies() );
100 libMesh::Real
k = 0.0;
103 libMesh::Threads::spin_mutex::scoped_lock lock(cantera_mutex);
112 catch(Cantera::CanteraError)
114 Cantera::showErrors(std::cerr);
124 std::vector<libMesh::Real>& D )
const
130 libmesh_assert_equal_to( Y.size(), D.size() );
131 libmesh_assert_equal_to( Y.size(),
_cantera_gas.nSpecies() );
134 libMesh::Threads::spin_mutex::scoped_lock lock(cantera_mutex);
143 catch(Cantera::CanteraError)
145 Cantera::showErrors(std::cerr);
156 #endif //GRINS_HAVE_CANTERA
void D(const CachedValues &cache, unsigned int qp, std::vector< libMesh::Real > &D) const
Cantera::IdealGasMix & _cantera_gas
Cantera::Transport & _cantera_transport
const std::vector< std::vector< libMesh::Number > > & get_cached_vector_values(unsigned int quantity) const
libMesh::Real mu(const CachedValues &cache, unsigned int qp) const
libMesh::Real k(const CachedValues &cache, unsigned int qp) const
Wrapper class for storing state for computing thermochemistry and transport properties using Cantera...
const std::vector< libMesh::Number > & get_cached_values(unsigned int quantity) const