OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
Base class for developing bipolar plate materials. More...
#include <material_plate_base.h>
Public Member Functions | |
MaterialPlateBase (std::string name) | |
Constructor. | |
~MaterialPlateBase () | |
Destructor. | |
void | declare_parameters (ParameterHandler ¶m) const |
Declare parameters. | |
void | set_parameters (const std::vector< std::string > &name_dvar, const std::vector< double > &value_dvar, ParameterHandler ¶m) |
Set parameters on the parameter handler object. | |
void | initialize (ParameterHandler ¶m) |
Member function used to read in data and initialize the necessary data to compute the coefficients. | |
virtual double | get_electron_conductivity () const |
Member function to compute the electron conductivity (Isotropic properties). | |
virtual void | get_electron_conductivity_derivative (double &, std::vector< double > &) const |
Member function to compute the derivatives of the electron conductivity (Isotropic properties) with respect to the solution. | |
virtual double | get_thermal_conductivity () const |
Member function to compute the thermal conductivity (Isotropic properties). | |
virtual void | get_thermal_conductivity_derivative (double &, std::vector< double > &) const |
Member function to compute the derivatives of the thermal conductivity (Isotropic properties) with respect to the solution. | |
virtual double | get_youngs_modulus () const |
Member function to compute the Young's modulus (Isotropic properties). | |
virtual void | get_youngs_modulus_derivative (double &, std::vector< double > &) const |
Member function to compute the derivatives of the Young's modulus (Isotropic properties) with respect to the solution. | |
virtual double | get_poissons_ratio () const |
Member function to compute the Poisson's ratio (Isotropic properties). | |
virtual void | get_poissons_modulus_derivative (double &, std::vector< double > &) const |
Member function to compute the derivatives of the Poisson's ratio (Isotropic properties) with respect to the solution. | |
virtual double | get_expansion_coefficient () const |
Member function to compute the expansion coefficient (Isotropic properties). | |
virtual void | get_expansion_coefficient_derivative (double &E, std::vector< double > &dE) const |
Member function to compute the derivatives of the expansion coefficient (Isotropic properties) with respect to the solution. | |
Public Member Functions inherited from FuelCellShop::Material::BaseMaterial | |
void | set_derivative_flags (const std::vector< VariableNames > &flags) |
Set the variables for which you would like to compute the derivatives. | |
const std::string & | name_material () |
Return the name of the layer. | |
virtual void | print_material_properties () const |
This function prints out the material properties. | |
Protected Attributes | |
double | electron_conductivity |
Variable storing electron conductivity. | |
std::vector< double > | electron_conductivity_derivative |
Variable storing electron conductivity derivatives. | |
double | thermal_conductivity |
Variable storing thermal conductivity. | |
std::vector< double > | thermal_conductivity_derivative |
Variable storing thermal conductivity derivatives. | |
double | youngs_modulus |
Variable storing Youngs modulus. | |
std::vector< double > | youngs_modulus_derivative |
Variable storing Youngs modulus. | |
double | poissons_ratio |
Variable storing Poisson ratio. | |
std::vector< double > | poissons_ratio_derivative |
Variable storing Poisson modulus. | |
double | expansion_coefficient |
Variable storing expansion coefficient ratio. | |
std::vector< double > | expansion_coefficient_derivative |
Variable storing expansion coefficient modulus. | |
Protected Attributes inherited from FuelCellShop::Material::BaseMaterial | |
const std::string | name |
Name of the layer. | |
std::vector< VariableNames > | derivative_flags |
Flags for derivatives: These flags are used to request derivatives. | |
Additional Inherited Members | |
Protected Member Functions inherited from FuelCellShop::Material::BaseMaterial | |
BaseMaterial () | |
Constructor. | |
BaseMaterial (const std::string &name) | |
Constructor. | |
virtual | ~BaseMaterial () |
Destructor. | |
Base class for developing bipolar plate materials.
Do not implement a material in this class, this classs is only for setting up the interface. This class returns:
|
inline |
Constructor.
|
inline |
Destructor.
|
inlinevirtual |
Declare parameters.
Reimplemented from FuelCellShop::Material::BaseMaterial.
Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.
References FuelCellShop::Material::BaseMaterial::declare_parameters().
|
inlinevirtual |
Member function to compute the electron conductivity (Isotropic properties).
If the electron conductivity depends on the solution, then the solution is set in member function set_solution(std::vector< std::vector< double > * >, std::vector< std::string >)
Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.
|
inlinevirtual |
Member function to compute the derivatives of the electron conductivity (Isotropic properties) with respect to the solution.
The derivative is computed with respect to the variables that you have indicted using the member function set_derivative_flags(std::vector< std::string > &flags).
Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.
|
inlinevirtual |
Member function to compute the expansion coefficient (Isotropic properties).
If the thermal conductivity depends on the solution, then the solution is set in member function set_solution(std::vector< std::vector< double > * >, std::vector< std::string >)
|
inlinevirtual |
Member function to compute the derivatives of the expansion coefficient (Isotropic properties) with respect to the solution.
The derivative is computed with respect to the variables that you have indicted using the member function set_derivative_flags(std::vector< std::string > &flags).
|
inlinevirtual |
Member function to compute the derivatives of the Poisson's ratio (Isotropic properties) with respect to the solution.
The derivative is computed with respect to the variables that you have indicted using the member function set_derivative_flags(std::vector< std::string > &flags).
|
inlinevirtual |
Member function to compute the Poisson's ratio (Isotropic properties).
If the thermal conductivity depends on the solution, then the solution is set in member function set_solution(std::vector< std::vector< double > * >, std::vector< std::string >)
|
inlinevirtual |
Member function to compute the thermal conductivity (Isotropic properties).
If the thermal conductivity depends on the solution, then the solution is set in member function set_solution(std::vector< std::vector< double > * >, std::vector< std::string >)
|
inlinevirtual |
Member function to compute the derivatives of the thermal conductivity (Isotropic properties) with respect to the solution.
The derivative is computed with respect to the variables that you have indicted using the member function set_derivative_flags(std::vector< std::string > &flags).
|
inlinevirtual |
Member function to compute the Young's modulus (Isotropic properties).
If the thermal conductivity depends on the solution, then the solution is set in member function set_solution(std::vector< std::vector< double > * >, std::vector< std::string >)
|
inlinevirtual |
Member function to compute the derivatives of the Young's modulus (Isotropic properties) with respect to the solution.
The derivative is computed with respect to the variables that you have indicted using the member function set_derivative_flags(std::vector< std::string > &flags).
|
inlinevirtual |
Member function used to read in data and initialize the necessary data to compute the coefficients.
Reimplemented from FuelCellShop::Material::BaseMaterial.
Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.
References FuelCellShop::Material::BaseMaterial::initialize().
|
inlinevirtual |
Set parameters on the parameter handler object.
(Only for optimization with DAKOTA)
Reimplemented from FuelCellShop::Material::BaseMaterial.
Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.
References FuelCellShop::Material::BaseMaterial::set_parameters().
|
protected |
Variable storing electron conductivity.
|
protected |
Variable storing electron conductivity derivatives.
|
protected |
Variable storing expansion coefficient ratio.
|
protected |
Variable storing expansion coefficient modulus.
|
protected |
Variable storing Poisson ratio.
|
protected |
Variable storing Poisson modulus.
|
protected |
Variable storing thermal conductivity.
|
protected |
Variable storing thermal conductivity derivatives.
|
protected |
Variable storing Youngs modulus.
|
protected |
Variable storing Youngs modulus.