OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
Class that solves solid carbon particle, with Pt surface loading, surrounded by ionomer thin film. More...
#include <ICCP.h>
Public Member Functions | |
virtual void | set_solution (const std::map< VariableNames, SolutionVariable > &sols, const VariableNames &react, const int &index) |
Function for setting the solution map(reactant concentration, phi_s, phi_m, etc.). More... | |
virtual SolutionMap | compute_current () |
Function used to compute the current density produced by the micro structure. More... | |
virtual bool | has_derivatives () |
Returns true if the class instance can calculate current density derivatives. More... | |
virtual std::string | get_name () |
Return name of class instance, i.e. More... | |
virtual double | aux_volume_fraction () |
MicroScale object may have extra contribution to volume of layer, e.g. More... | |
virtual void | print_properties () |
Print out key micro-structural dimensions, defined by child. More... | |
virtual void | make_thread_safe (ParameterHandler ¶m, unsigned int thread_index) |
Public Member Functions inherited from FuelCellShop::MicroScale::MicroScaleBase | |
virtual | ~MicroScaleBase () |
Destructor. More... | |
virtual std::vector< double > | compute_derivative_current () |
Function to compute the derivative of the current density at the local operating conditions. More... | |
Static Public Attributes | |
static const std::string | concrete_name |
Protected Types | |
typedef FuelCellShop::Layer::MultiScaleCL < deal_II_dimension > | CLPropNames |
Convenient typdef for getting properties. More... | |
Protected Types inherited from FuelCellShop::MicroScale::MicroScaleBase | |
typedef std::map< std::string, MicroScaleBase * > | _mapFactory |
This object is used to store all objects of type MicroScaleBase. More... | |
Protected Member Functions | |
ICCP () | |
Default Constructor. More... | |
ICCP (std::string name) | |
Factory map registration constructor. More... | |
virtual void | set_structure () |
virtual void | declare_parameters (ParameterHandler ¶m) const |
virtual void | initialize (ParameterHandler ¶m) |
virtual boost::shared_ptr < MicroScaleBase > | create_replica () |
This member function is used to create an object of type MicroScaleBase. More... | |
Protected Member Functions inherited from FuelCellShop::MicroScale::MicroScaleBase | |
void | set_layer (FuelCellShop::Layer::MultiScaleCL< deal_II_dimension > *_layer) |
MicroScaleBase () | |
Static Protected Attributes | |
static ICCP const * | PROTOTYPE |
Private Member Functions | |
double | residual (const double &c_inner, const double &c_outer) |
Private Attributes | |
std::vector< SolutionVariable > | reactants |
SolutionVariable | proton_pot |
SolutionVariable | electron_pot |
double | ActiveArea |
bool | non_eq_BC |
double | non_eq_BC_coeff |
double | P |
double | HO2N |
double | DO2N |
boost::shared_ptr < FuelCellShop::Kinetics::BaseKinetics > | kinetics |
boost::shared_ptr < FuelCellShop::Material::PolymerElectrolyteBase > | electrolyte |
boost::shared_ptr < FuelCellShop::Material::CatalystBase > | catalyst |
double | film_thickness |
double | core_radius |
const double | F |
const double | pi |
Additional Inherited Members | |
Static Public Member Functions inherited from FuelCellShop::MicroScale::MicroScaleBase | |
static void | declare_MicroScale_parameters (ParameterHandler ¶m) |
Function used to declare all the data necessary in the parameter files for all MicroScale children. More... | |
static boost::shared_ptr < FuelCellShop::MicroScale::MicroScaleBase > | create_MicroStructure (ParameterHandler ¶m, FuelCellShop::Layer::MultiScaleCL< deal_II_dimension > *layer) |
Function used to select the appropriate MicroScale type as specified in the ParameterHandler under line. More... | |
Static Protected Member Functions inherited from FuelCellShop::MicroScale::MicroScaleBase | |
static _mapFactory * | get_mapFactory () |
This member function is used to create an object of type MicroScaleBase. More... | |
Protected Attributes inherited from FuelCellShop::MicroScale::MicroScaleBase | |
FuelCellShop::Layer::MultiScaleCL < deal_II_dimension > * | layer |
Class that solves solid carbon particle, with Pt surface loading, surrounded by ionomer thin film.
This class is a very basic representation of the CL micro structure, intended to analyize the CL/MEA's sensitivity to micro scale models for various operating conditions and material params.
LIST OF INPUT PARAMETERS FOR THE CLASS.
|
protected |
Convenient typdef for getting properties.
|
inlineprotected |
Default Constructor.
References non_eq_BC.
Referenced by create_replica().
|
protected |
Factory map registration constructor.
|
inlinevirtual |
MicroScale object may have extra contribution to volume of layer, e.g.
water. In this case it is zero.
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
virtual |
Function used to compute the current density produced by the micro structure.
Effectiveness is returned by reference, and defined by child class.
Solves for solution variables set by the last call to set_solution.
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
inlineprotectedvirtual |
This member function is used to create an object of type MicroScaleBase.
Implements FuelCellShop::MicroScale::MicroScaleBase.
References ICCP().
|
protectedvirtual |
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
inlinevirtual |
Return name of class instance, i.e.
concrete name.
Implements FuelCellShop::MicroScale::MicroScaleBase.
References concrete_name.
|
inlinevirtual |
Returns true if the class instance can calculate current density derivatives.
In this case it will return false.
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
protectedvirtual |
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
virtual |
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
virtual |
Print out key micro-structural dimensions, defined by child.
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
private |
|
virtual |
Function for setting the solution map(reactant concentration, phi_s, phi_m, etc.).
First argument provide the map of SolutionVariable. The second argument provide the name of the primary reactant. The final argument is the index of the solution map that the micro scale object should solve for.
This function should be called immediatly before compute_current or compute_derivative_current.
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
protectedvirtual |
Implements FuelCellShop::MicroScale::MicroScaleBase.
|
private |
|
private |
|
static |
Referenced by get_name().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Referenced by ICCP().
|
private |
|
private |
|
private |
|
private |
|
staticprotected |
|
private |