17 #ifndef _FUELCELLSHOP__CATALYST_SUPPORT_BASE_H
18 #define _FUELCELLSHOP__CATALYST_SUPPORT_BASE_H
24 namespace FuelCellShop
65 iterator->second->declare_parameters(param);
87 static boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase >
create_CatalystSupport (ParameterHandler ¶m,
88 std::string support_name)
91 boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase > pointer;
99 pointer = iterator->second->create_replica();
109 FcstUtilities::log<<
"Concrete name in FuelCellShop::Material::CatalystSupportBase::create_CatalystSupport does not exist"<<std::endl;
113 pointer->initialize(param);
128 const std::type_info& info =
typeid(*this);
130 <<
" called in Class "
131 << info.name() << std::endl;
140 const std::type_info& info =
typeid(*this);
142 <<
" called in Class "
143 << info.name() << std::endl;
152 const std::type_info& info =
typeid(*this);
154 <<
" called in Class "
155 << info.name() << std::endl;
194 const std::type_info& info =
typeid(*this);
196 <<
" called in Class "
197 << info.name() << std::endl;
205 const std::type_info& info =
typeid(*this);
207 <<
" called in Class "
208 << info.name() << std::endl;
216 typedef std::map< std::string, FuelCellShop::Material::CatalystSupportBase* >
_mapFactory;
238 virtual boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase >
create_replica ()
240 const std::type_info& info =
typeid(*this);
242 <<
" called in Class "
243 << info.name() << std::endl;
~CatalystSupportBase()
Destructor.
Definition: catalyst_support_base.h:183
CatalystSupportBase(std::string name)
Constructor The constructor initialize parameters using the default values.
Definition: catalyst_support_base.h:177
virtual double get_thermal_conductivity() const
Obtain the thermal conductivity [W/(cm-K )].
Definition: catalyst_support_base.h:138
virtual double get_electrical_conductivity() const
Obtain the electrical conductivity [S/cm].
Definition: catalyst_support_base.h:126
virtual boost::shared_ptr< FuelCellShop::Material::CatalystSupportBase > create_replica()
This member function is used to create an object of type CatalystSupportBase.
Definition: catalyst_support_base.h:238
double thermal_conductivity
Thermal conductivity [W/(cm-K )] of catalyst support extrapolated to 100% solid phase.
Definition: catalyst_support_base.h:253
const std::string name
Name of the layer.
Definition: base_material.h:155
static _mapFactory * get_mapFactory()
Definition: catalyst_support_base.h:224
CatalystSupportBase()
Constructor.
Definition: catalyst_support_base.h:165
static boost::shared_ptr< FuelCellShop::Material::CatalystSupportBase > create_CatalystSupport(ParameterHandler ¶m, std::string support_name)
Function called in create_CatalystLayer and used to select the appropriate CatalystSupportBase childr...
Definition: catalyst_support_base.h:87
This class implements the interface to compute the properties of a "standard" catalyst support...
Definition: catalyst_support_base.h:47
double density
Density of catalyst support [gm/cm^3].
Definition: catalyst_support_base.h:256
FCSTLogStream log
Object used to output data to file and, if file attached recorded to a file as well.
std::map< std::string, FuelCellShop::Material::CatalystSupportBase * > _mapFactory
This object is used to store all objects of type CatalystSupportBase.
Definition: catalyst_support_base.h:216
virtual void initialize(ParameterHandler ¶m)
Initialize parameters.
Definition: catalyst_support_base.h:203
double electrical_conductivity
Electrical conductivity [S/cm] of catalyst support extrapolated to 100% solid phase.
Definition: catalyst_support_base.h:250
virtual double get_density() const
Obtain the density [gm/cm^3].
Definition: catalyst_support_base.h:150
static void declare_CatalystSupport_parameters(ParameterHandler ¶m)
Function used to declare all the data necessary in the parameter files for all CatalystSupportBase ch...
Definition: catalyst_support_base.h:58
virtual void declare_parameters(ParameterHandler ¶m) const
Declare parameters for a parameter file.
Definition: catalyst_support_base.h:192
Virtual class used to provide the interface for all material classes.
Definition: base_material.h:54