OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
Virtual class used to develop a common interface to a set of functions used to evaluate functionals that are obtained at postprocessing. More...
#include <base_response.h>
Protected Member Functions | |
BaseResponse (const FuelCell::SystemManagement &sm) | |
Constructor. More... | |
virtual | ~BaseResponse () |
Destructor. More... | |
Initalization | |
virtual void | declare_parameters (ParameterHandler ¶m) const |
Declare any necessary parameters to compute the functional. More... | |
virtual void | initialize (ParameterHandler ¶m) |
Initialize class parameters. More... | |
Compute functional | |
virtual void | compute_responses (const typename DoFApplication< dim >::CellInfo &info, FuelCellShop::Layer::BaseLayer< dim > *const layer, std::map< FuelCellShop::PostProcessing::ResponsesNames, double > &resp) const =0 |
Compute several functionals (response) at a given finite element using the information in CellInfo in layer specified in parameter. More... | |
virtual 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 =0 |
In rare instances, the user would like to specify a given solution vector that is not the final solution to the problem. More... | |
Protected Attributes | |
const FuelCell::SystemManagement * | system_management |
Pointer to system management. More... | |
Virtual class used to develop a common interface to a set of functions used to evaluate functionals that are obtained at postprocessing.
Examples of functionals would be the current density, the water sorbed in the catalyst layer by the ionomer, the friction factor at the channel, etc.
In order to use this classes, first add them to your application as an object.
In the class constructor, construct the class passing an object SystemManagement. This object is used in order to find the solution variables as appropriate.
Next, the object has to be initialized once SystemManagement has already been initialized correctly:
Finally, the object is ready for use in cell_responses in your application:
|
inlineprotected |
Constructor.
Usually, all constructors will contain a pointer to SystemManagement and a pointer to a child of BaseLayer
|
inlineprotectedvirtual |
Destructor.
|
protectedpure virtual |
Compute several functionals (response) at a given finite element using the information in CellInfo in layer specified in parameter.
layer. | Responses are stored in resp which return a map with the name of the response and its value at the given either cell or boundary. |
Implemented in FuelCellShop::PostProcessing::HORReactionHeatResponse< dim >, FuelCellShop::PostProcessing::ProtonOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >, FuelCellShop::PostProcessing::WaterSorptionResponse< dim >, FuelCellShop::PostProcessing::ORRReactionHeatResponse< dim >, FuelCellShop::PostProcessing::MassFluxResponse< dim >, FuelCellShop::PostProcessing::ElectronOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::SorptionHeatResponse< dim >, FuelCellShop::PostProcessing::ORRCurrentDensityResponse< dim >, and FuelCellShop::PostProcessing::PhaseChangeResponse< dim >.
|
protectedpure virtual |
In rare instances, the user would like to specify a given solution vector that is not the final solution to the problem.
This member function is built for such instances. Instead of using CellInfo to create automatically the SolutionVariable vector, in this case the user is allowed to provide this function.
Implemented in FuelCellShop::PostProcessing::HORReactionHeatResponse< dim >, FuelCellShop::PostProcessing::ProtonOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >, FuelCellShop::PostProcessing::WaterSorptionResponse< dim >, FuelCellShop::PostProcessing::ORRReactionHeatResponse< dim >, FuelCellShop::PostProcessing::MassFluxResponse< dim >, FuelCellShop::PostProcessing::ElectronOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::SorptionHeatResponse< dim >, FuelCellShop::PostProcessing::ORRCurrentDensityResponse< dim >, and FuelCellShop::PostProcessing::PhaseChangeResponse< dim >.
|
inlineprotectedvirtual |
Declare any necessary parameters to compute the functional.
Reimplemented in FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >, FuelCellShop::PostProcessing::ORRCurrentDensityResponse< dim >, and FuelCellShop::PostProcessing::PhaseChangeResponse< dim >.
|
inlineprotectedvirtual |
Initialize class parameters.
Reimplemented in FuelCellShop::PostProcessing::HORReactionHeatResponse< dim >, FuelCellShop::PostProcessing::ProtonOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::HORCurrentDensityResponse< dim >, FuelCellShop::PostProcessing::ORRReactionHeatResponse< dim >, FuelCellShop::PostProcessing::ElectronOhmicHeatResponse< dim >, FuelCellShop::PostProcessing::WaterSorptionResponse< dim >, FuelCellShop::PostProcessing::SorptionHeatResponse< dim >, FuelCellShop::PostProcessing::ORRCurrentDensityResponse< dim >, and FuelCellShop::PostProcessing::PhaseChangeResponse< dim >.
|
protected |
Pointer to system management.