25 #ifndef GRINS_CATALYCITY_FACTORIES_H
26 #define GRINS_CATALYCITY_FACTORIES_H
51 virtual libMesh::UniquePtr<CatalycityBase>
54 std::string param_base = section+
"/ConstantCatalycity/";
56 std::string gamma_str = param_base+
"gamma";
57 if( !input.have_variable(gamma_str) )
58 libmesh_error_msg(
"ERROR: Could not find input "+gamma_str+
" for ConstantCatalycity!\n");
60 libMesh::Real gamma = input(gamma_str, std::numeric_limits<libMesh::Real>::max());
62 catalycity->set_parameters(input,param_base);
81 virtual libMesh::UniquePtr<CatalycityBase>
84 std::string param_base = section+
"/ArrheniusCatalycity/";
86 std::string gamma_str = param_base+
"gamma0";
87 if( !input.have_variable(gamma_str) )
88 libmesh_error_msg(
"ERROR: Could not find input "+gamma_str+
" for ArrheniusCatalycity!\n");
90 std::string Ta_str = param_base+
"Ta";
91 if( !input.have_variable(Ta_str) )
92 libmesh_error_msg(
"ERROR: Could not find input "+Ta_str+
" for ArrheniusCatalycity!\n");
94 libMesh::Real gamma = input(gamma_str, std::numeric_limits<libMesh::Real>::max());
95 libMesh::Real Ta = input(Ta_str, std::numeric_limits<libMesh::Real>::max());
98 catalycity->set_parameters(input,param_base);
116 virtual libMesh::UniquePtr<CatalycityBase>
119 std::string param_base = section+
"/PowerLawCatalycity/";
121 std::string gamma_str = param_base+
"gamma0";
122 if( !input.have_variable(gamma_str) )
123 libmesh_error_msg(
"ERROR: Could not find input "+gamma_str+
" for ArrheniusCatalycity!\n");
125 std::string Tref_str = param_base+
"Tref";
126 if( !input.have_variable(Tref_str) )
127 libmesh_error_msg(
"ERROR: Could not find input "+Tref_str+
" for PowerLawCatalycity!\n");
129 std::string alpha_str = param_base+
"alpha";
130 if( !input.have_variable(alpha_str) )
131 libmesh_error_msg(
"ERROR: Could not find input "+alpha_str+
" for PowerLawCatalycity!\n");
133 libMesh::Real gamma = input(gamma_str, std::numeric_limits<libMesh::Real>::max());
134 libMesh::Real Tref = input(Tref_str, std::numeric_limits<libMesh::Real>::max());
135 libMesh::Real alpha = input(alpha_str, std::numeric_limits<libMesh::Real>::max());
137 libMesh::UniquePtr<CatalycityBase> catalycity(
new PowerLawCatalycity( gamma, Tref, alpha ) );
138 catalycity->set_parameters(input,param_base);
146 #endif // GRINS_CATALYCITY_FACTORIES_H
~PowerLawCatalycityFactory()
PowerLawCatalycityFactory(const std::string &physics_name)
virtual libMesh::UniquePtr< CatalycityBase > build_catalycity(const GetPot &input, const std::string §ion)
~ConstantCatalycityFactory()
virtual libMesh::UniquePtr< CatalycityBase > build_catalycity(const GetPot &input, const std::string §ion)
ArrheniusCatalycityFactory(const std::string &physics_name)
ConstantCatalycityFactory(const std::string &physics_name)
virtual libMesh::UniquePtr< CatalycityBase > build_catalycity(const GetPot &input, const std::string §ion)
~ArrheniusCatalycityFactory()