OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim > Class Template Reference

Class used to calculate the current density at the anode catalyst layer. More...

#include <response_current_density.h>

Inheritance diagram for FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >:
Inheritance graph
[legend]
Collaboration diagram for FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >:
Collaboration graph
[legend]

Public Member Functions

Constructor, declaration and initialization
 HORCurrentDensityResponse (const FuelCell::SystemManagement &sm)
 
 ~HORCurrentDensityResponse ()
 
void declare_parameters (ParameterHandler &param) const
 Declare any necessary parameters to compute the functional. More...
 
void initialize (ParameterHandler &param)
 Initialize class parameters. More...
 

Compute functional

double S_CL
 Surface area. More...
 
double V_CL
 Volume. More...
 
FuelCellShop::Equation::VariableInfo phiM
 VariableInfo structure corresponding to the reactant_molar_fraction. More...
 
FuelCellShop::Equation::VariableInfo phiS
 VariableInfo structure corresponding to the electronic phase potential. More...
 
void compute_responses (const typename DoFApplication< dim >::CellInfo &info, FuelCellShop::Layer::BaseLayer< dim > *const layer, std::map< FuelCellShop::PostProcessing::ResponsesNames, double > &resp) const
 This member function computes the volumetric current density produced inside the electrode due to the oxygen reduction reaction. More...
 
void compute_responses (std::vector< FuelCellShop::SolutionVariable > solution_variables, const typename DoFApplication< dim >::CellInfo &info, FuelCellShop::Layer::BaseLayer< dim > *const layer, std::map< FuelCellShop::PostProcessing::ResponsesNames, double > &resp) const
 Routine used in order to compute the response with a modified solution (not the one stored in info) More...
 

Additional Inherited Members

- Protected Member Functions inherited from FuelCellShop::PostProcessing::BaseResponse< dim >
 BaseResponse (const FuelCell::SystemManagement &sm)
 Constructor. More...
 
virtual ~BaseResponse ()
 Destructor. More...
 
- Protected Attributes inherited from FuelCellShop::PostProcessing::BaseResponse< dim >
const FuelCell::SystemManagementsystem_management
 Pointer to system management. More...
 

Detailed Description

template<int dim>
class FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >

Class used to calculate the current density at the anode catalyst layer.

Since the surface area and volume of the catalyst layer is not known, the layer return the total current density produced, i.e.

\[ \int_{V_{el}} i dV_{el} \]

In order for the class to provide current density and average coverage, the returned quantity has to be divided by surface area and catalyst layer volume respectively. If the surface area and volume are known at the input file, they can be specified and the quantities will automatically be corrected.

Note that this class will only work if an object of type CatalystLayer is passed as an argument.

Author
M. Secanell, 2014

Constructor & Destructor Documentation

Member Function Documentation

template<int dim>
void FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::compute_responses ( const typename DoFApplication< dim >::CellInfo &  info,
FuelCellShop::Layer::BaseLayer< dim > *const  layer,
std::map< FuelCellShop::PostProcessing::ResponsesNames, double > &  resp 
) const
virtual

This member function computes the volumetric current density produced inside the electrode due to the oxygen reduction reaction.

In order to compute the current density, the following functional is evaluated

\[ I = int_{\Omega} i dV \]

In addition, if the catalyst layer uses a kinetic model that provides coverages those values are also provided in the response parameter, i.e., resp.

In order to access the current produced at the electrode use:

* ORR_responses[FuelCellShop::PostProcessing::ResponsesNames::current]
*

The coverages are accessed using FuelCellShop::PostProcessing::ResponsesNames::O_coverage and FuelCellShop::PostProcessing::ResponsesNames::OH_coverage

Implements FuelCellShop::PostProcessing::BaseResponse< dim >.

template<int dim>
void FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::compute_responses ( std::vector< FuelCellShop::SolutionVariable solution_variables,
const typename DoFApplication< dim >::CellInfo &  info,
FuelCellShop::Layer::BaseLayer< dim > *const  layer,
std::map< FuelCellShop::PostProcessing::ResponsesNames, double > &  resp 
) const
virtual

Routine used in order to compute the response with a modified solution (not the one stored in info)

Implements FuelCellShop::PostProcessing::BaseResponse< dim >.

template<int dim>
void FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::declare_parameters ( ParameterHandler &  param) const
virtual

Declare any necessary parameters to compute the functional.

Reimplemented from FuelCellShop::PostProcessing::BaseResponse< dim >.

template<int dim>
void FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::initialize ( ParameterHandler &  param)
virtual

Initialize class parameters.

Reimplemented from FuelCellShop::PostProcessing::BaseResponse< dim >.

Member Data Documentation

VariableInfo structure corresponding to the reactant_molar_fraction.

VariableInfo structure corresponding to the electrolyte potential.

VariableInfo structure corresponding to the electronic phase potential.

template<int dim>
double FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::S_CL
private

Surface area.

template<int dim>
double FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >::V_CL
private

Volume.


The documentation for this class was generated from the following file: