OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
response_current_density.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 //
3 // FCST: Fuel Cell Simulation Toolbox
4 //
5 // Copyright (C) 2014 by Energy Systems Design Laboratory, University of Alberta
6 //
7 // This software is distributed under the MIT License
8 // For more information, see the README file in /doc/LICENSE
9 //
10 // - Class: responses.h
11 // - Description: This is a file containing the declaration of several FCST response evaluators
12 // - Developers: Marc Secanell Gallart, University of Alberta
13 // - $Id: response_current_density.h 2605 2014-08-15 03:36:44Z secanell $
14 //
15 // ----------------------------------------------------------------------------
16 
17 #ifndef _FUELCELLSHOP__RESPONSE_CURRENT_DENSITY_H
18 #define _FUELCELLSHOP__RESPONSE_CURRENT_DENSITY_H
19 
20 // Include deal.II classes
21 #include <base/parameter_handler.h>
22 #include <base/point.h>
23 #include <base/function.h>
24 #include <lac/vector.h>
25 #include <fe/fe_values.h>
26 
27 //Include STL
28 #include <cmath>
29 #include <iostream>
30 #include <exception> // std::exception
31 
32 // Include OpenFCST routines:
35 
37 
38 #include "layers/base_layer.h"
39 #include "layers/catalyst_layer.h"
40 
42 
43 using namespace dealii;
44 
45 namespace FuelCellShop
46 {
47 
48  namespace PostProcessing
49  {
50 
73  template <int dim>
75  {
76  public:
78 
80  :
81  BaseResponse<dim>(sm)
82  {}
83 
85 
89  void declare_parameters(ParameterHandler& param) const;
93  void initialize(ParameterHandler& param);
95 
97 
116  void compute_responses(const typename DoFApplication<dim>::CellInfo& info,
118  std::map<FuelCellShop::PostProcessing::ResponsesNames, double>& resp) const;
124  void compute_responses(std::vector< FuelCellShop::SolutionVariable > solution_variables,
125  const typename DoFApplication<dim>::CellInfo& info,
127  std::map<FuelCellShop::PostProcessing::ResponsesNames, double>& resp) const;
128  //
129  //
130  private:
134  double S_CL;
138  double V_CL;
154  };
155 
156 
157  //===============================================================================================================
158  //===============================================================================================================
159  //===============================================================================================================
160  //===============================================================================================================
161 
180  template <int dim>
182  {
183  public:
185 
187  :
188  BaseResponse<dim>(sm)
189  {}
190 
192 
196  void declare_parameters(ParameterHandler& param) const;
200  void initialize(ParameterHandler& param);
202 
204 
223  void compute_responses(const typename DoFApplication<dim>::CellInfo& info,
225  std::map<FuelCellShop::PostProcessing::ResponsesNames, double>& resp) const;
231  void compute_responses(std::vector< FuelCellShop::SolutionVariable > solution_variables,
232  const typename DoFApplication<dim>::CellInfo& info,
234  std::map<FuelCellShop::PostProcessing::ResponsesNames, double>& resp) const;
235  //
236  //
237  private:
241  double S_CL;
245  double V_CL;
250  //FuelCellShop::Equation::VariableInfo x_H2;
261  };
262 
263  }
264 }
265 
266 #endif
const unsigned int dim
Definition: fcst_constants.h:24
double S_CL
Surface area.
Definition: response_current_density.h:134
FuelCellShop::Equation::VariableInfo phiM
VariableInfo structure corresponding to the reactant_molar_fraction.
Definition: response_current_density.h:255
Class used to calculate the current density at the anode catalyst layer.
Definition: response_current_density.h:181
ORRCurrentDensityResponse(const FuelCell::SystemManagement &sm)
Definition: response_current_density.h:79
Virtual class used to develop a common interface to a set of functions used to evaluate functionals t...
Definition: base_response.h:129
This class is created for the objects handed to the mesh loops.
Definition: mesh_loop_info_objects.h:625
~HORCurrentDensityResponse()
Definition: response_current_density.h:191
double V_CL
Volume.
Definition: response_current_density.h:245
FuelCellShop::Equation::VariableInfo xi
VariableInfo structure corresponding to the reactant_molar_fraction.
Definition: response_current_density.h:143
FuelCellShop::Equation::VariableInfo phiS
VariableInfo structure corresponding to the electronic phase potential.
Definition: response_current_density.h:153
~ORRCurrentDensityResponse()
Definition: response_current_density.h:84
IMPORTANT: Add all new solution variables and equations here !
Definition: system_management.h:271
FuelCellShop::Equation::VariableInfo phiM
VariableInfo structure corresponding to the electrolyte potential.
Definition: response_current_density.h:148
This simple structure stores certain information regarding a particular variable for the equation (al...
Definition: equation_base.h:121
double V_CL
Volume.
Definition: response_current_density.h:138
HORCurrentDensityResponse(const FuelCell::SystemManagement &sm)
Definition: response_current_density.h:186
double S_CL
Surface area.
Definition: response_current_density.h:241
Virtual class used to characterize a generic layer interface.
Definition: base_layer.h:58
FuelCellShop::Equation::VariableInfo phiS
VariableInfo structure corresponding to the electronic phase potential.
Definition: response_current_density.h:260
Class used to calculate the ORR current density and coverages (if provided in the kinetic model) by t...
Definition: response_current_density.h:74