18 #ifndef _FCST_APPLICATION_APP_CATHODE_H_ 
   19 #define _FCST_APPLICATION_APP_CATHODE_H_ 
   21 #include "boost/shared_ptr.hpp" 
   50 using namespace dealii;
 
   51 using namespace FuelCell::ApplicationCore;
 
  157             AppCathode( boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData > data = 
 
  158             boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData >() );
 
  168             virtual void declare_parameters(ParameterHandler& param);
 
  173             virtual void initialize(ParameterHandler& param);
 
  180             virtual void initialize_solution (
FEVector& initial_guess,
 
  181                                               std::shared_ptr<Function<dim> > initial_function = std::shared_ptr<Function<dim> >());
 
  208             virtual void dirichlet_bc(std::map<unsigned int, double>& boundary_values) 
const;
 
  218             virtual void data_out(
const std::string&         filename,
 
  229             virtual void cell_responses(std::vector<double>&                          dst,
 
  235             void global_responses(std::vector<double>& resp,
 
  246             boost::shared_ptr< FuelCellShop::Geometry::GridBase<dim> > 
grid;
 
  275             boost::shared_ptr< FuelCellShop::Layer::GasDiffusionLayer<dim> > 
CGDL;
 
  280             boost::shared_ptr< FuelCellShop::Layer::MicroPorousLayer<dim> > 
CMPL;
 
  285             boost::shared_ptr< FuelCellShop::Layer::CatalystLayer<dim> > 
CCL;
 
  327             virtual void cell_responses_aux(std::vector<double>&                          dst,
 
  338                 param.enter_subsection(
"System management");
 
  340                     param.set(
"Number of solution variables",
"3");
 
  341                     param.enter_subsection(
"Solution variables");
 
  343                         param.set(
"Solution variable 1",
"oxygen_molar_fraction");
 
  344                         param.set(
"Solution variable 2",
"protonic_electrical_potential");
 
  345                         param.set(
"Solution variable 3",
"electronic_electrical_potential");
 
  347                     param.leave_subsection();
 
  349                     param.enter_subsection(
"Equations");
 
  351                         param.set(
"Equation 1",
"Ficks Transport Equation - oxygen");
 
  352                         param.set(
"Equation 2",
"Proton Transport Equation");
 
  353                         param.set(
"Equation 3",
"Electron Transport Equation");
 
  355                     param.leave_subsection();
 
  357                 param.leave_subsection();
 
  358                 param.enter_subsection(
"Discretization");
 
  360                     param.set(
"Element",
"FESystem[FE_Q(1)^3]");
 
  362                 param.leave_subsection();
 
Class used to store, read from file and define the operating conditions for a fuel cell...
Definition: operating_conditions.h:110
 
FuelCellShop::Equation::ReactionSourceTerms< dim > reaction_source_terms
The reaction source terms for all underlying equations. 
Definition: app_cathode.h:315
 
This class deals with Proton Transport Equation. 
Definition: proton_transport_equation.h:138
 
boost::shared_ptr< FuelCellShop::Layer::GasDiffusionLayer< dim > > CGDL
Cathode GDL. 
Definition: app_cathode.h:275
 
This class deals with Electron Transport Equation. 
Definition: electron_transport_equation.h:130
 
FuelCellShop::PostProcessing::ORRCurrentDensityResponse< dim > ORRCurrent
Definition: app_cathode.h:320
 
FuelCell::OperatingConditions OC
Operating conditions. 
Definition: app_cathode.h:256
 
This class deals with Ficks Transport Equation. 
Definition: new_ficks_transport_equation.h:132
 
This class is created for the objects handed to the mesh loops. 
Definition: mesh_loop_info_objects.h:625
 
This class describes properties of pure oxygen. 
Definition: PureGas.h:980
 
FuelCellShop::Equation::ProtonTransportEquation< dim > proton_transport_equation
This object describes the equations that we are going to solve here. 
Definition: app_cathode.h:309
 
std::vector< MatrixBlock< FullMatrix< double > > > MatrixVector
The matrix vector used in the mesh loops. 
Definition: matrix_block.h:102
 
void set_default_parameters_for_application(ParameterHandler ¶m)
Function to modify the default values of the data file in order to make sure that the equations match...
Definition: app_cathode.h:336
 
FuelCellShop::Material::Nitrogen solvent
Solvent. 
Definition: app_cathode.h:266
 
This class describes properties of pure nitrogen. 
Definition: PureGas.h:1039
 
boost::shared_ptr< FuelCellShop::Layer::CatalystLayer< dim > > CCL
Cathode CL. 
Definition: app_cathode.h:285
 
This class assembles the reaction source terms for all other transport equations, if there's any...
Definition: reaction_source_terms.h:60
 
FuelCellShop::Equation::NewFicksTransportEquation< dim > ficks_transport_equation
This object describes the equations that we are going to solve here. 
Definition: app_cathode.h:295
 
FuelCellShop::Equation::ElectronTransportEquation< dim > electron_transport_equation
This object describes the equations that we are going to solve here. 
Definition: app_cathode.h:302
 
boost::shared_ptr< FuelCellShop::Layer::MicroPorousLayer< dim > > CMPL
Cathode MPL. 
Definition: app_cathode.h:280
 
This class is used to solve a system of equations similar to the one presented in the journal article...
Definition: app_cathode.h:147
 
FuelCellShop::Material::Oxygen solute
Solute. 
Definition: app_cathode.h:261
 
boost::shared_ptr< FuelCellShop::Geometry::GridBase< dim > > grid
Grid. 
Definition: app_cathode.h:246
 
BlockVector< double > FEVector
The vector class used by applications. 
Definition: application_data.h:39
 
The data type used in function calls of Application. 
Definition: fe_vectors.h:59
 
Application handling matrices and assembling the linear system to solve the sensitivity equations...
Definition: optimization_block_matrix_application.h:62
 
Class used to calculate the ORR current density and coverages (if provided in the kinetic model) by t...
Definition: response_current_density.h:74