17 #ifndef _FUELCELLSHOP__CATALYST_SUPPORT_BASE_H
18 #define _FUELCELLSHOP__CATALYST_SUPPORT_BASE_H
26 namespace FuelCellShop
67 iterator->second->declare_parameters(param);
89 static boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase >
create_CatalystSupport (ParameterHandler ¶m,
90 std::string support_name)
93 boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase > pointer;
101 pointer = iterator->second->create_replica();
111 FcstUtilities::log<<
"Concrete name in FuelCellShop::Material::CatalystSupportBase::create_CatalystSupport does not exist"<<std::endl;
115 pointer->initialize(param);
130 const std::type_info& info =
typeid(*this);
132 <<
" called in Class "
133 << info.name() << std::endl;
142 const std::type_info& info =
typeid(*this);
144 <<
" called in Class "
145 << info.name() << std::endl;
154 const std::type_info& info =
typeid(*this);
156 <<
" called in Class "
157 << info.name() << std::endl;
196 const std::type_info& info =
typeid(*this);
198 <<
" called in Class "
199 << info.name() << std::endl;
207 const std::type_info& info =
typeid(*this);
209 <<
" called in Class "
210 << info.name() << std::endl;
218 typedef std::map< std::string, FuelCellShop::Material::CatalystSupportBase* >
_mapFactory;
240 virtual boost::shared_ptr<FuelCellShop::Material::CatalystSupportBase >
create_replica ()
242 const std::type_info& info =
typeid(*this);
244 <<
" called in Class "
245 << info.name() << std::endl;
~CatalystSupportBase()
Destructor.
Definition: catalyst_support_base.h:185
CatalystSupportBase(std::string name)
Constructor The constructor initialize parameters using the default values.
Definition: catalyst_support_base.h:179
virtual double get_thermal_conductivity() const
Obtain the thermal conductivity [W/(cm-K )].
Definition: catalyst_support_base.h:140
virtual double get_electrical_conductivity() const
Obtain the electrical conductivity [S/cm].
Definition: catalyst_support_base.h:128
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:240
double thermal_conductivity
Thermal conductivity [W/(cm-K )] of catalyst support extrapolated to 100% solid phase.
Definition: catalyst_support_base.h:255
const std::string name
Name of the layer.
Definition: base_material.h:155
static _mapFactory * get_mapFactory()
Definition: catalyst_support_base.h:226
CatalystSupportBase()
Constructor.
Definition: catalyst_support_base.h:167
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:89
This class implements the interface to compute the properties of a "standard" catalyst support...
Definition: catalyst_support_base.h:49
double density
Density of catalyst support [gm/cm^3].
Definition: catalyst_support_base.h:258
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:218
virtual void initialize(ParameterHandler ¶m)
Initialize parameters.
Definition: catalyst_support_base.h:205
double electrical_conductivity
Electrical conductivity [S/cm] of catalyst support extrapolated to 100% solid phase.
Definition: catalyst_support_base.h:252
virtual double get_density() const
Obtain the density [gm/cm^3].
Definition: catalyst_support_base.h:152
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:60
virtual void declare_parameters(ParameterHandler ¶m) const
Declare parameters for a parameter file.
Definition: catalyst_support_base.h:194
Virtual class used to provide the interface for all material classes.
Definition: base_material.h:54