OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
FuelCellShop::Material::MaterialPlateBase Class Reference

Base class for developing bipolar plate materials. More...

#include <material_plate_base.h>

Inheritance diagram for FuelCellShop::Material::MaterialPlateBase:
Inheritance graph
[legend]
Collaboration diagram for FuelCellShop::Material::MaterialPlateBase:
Collaboration graph
[legend]

Public Member Functions

 MaterialPlateBase (std::string name)
 Constructor. More...
 
 ~MaterialPlateBase ()
 Destructor. More...
 
void declare_parameters (ParameterHandler &param) const
 Declare parameters. More...
 
void initialize (ParameterHandler &param)
 Member function used to read in data and initialize the necessary data to compute the coefficients. More...
 
virtual double get_electron_conductivity () const
 Member function to compute the electron conductivity (Isotropic properties). More...
 
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. More...
 
virtual double get_thermal_conductivity () const
 Member function to compute the thermal conductivity (Isotropic properties). More...
 
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. More...
 
virtual double get_youngs_modulus () const
 Member function to compute the Young's modulus (Isotropic properties). More...
 
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. More...
 
virtual double get_poissons_ratio () const
 Member function to compute the Poisson's ratio (Isotropic properties). More...
 
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. More...
 
virtual double get_expansion_coefficient () const
 Member function to compute the expansion coefficient (Isotropic properties). More...
 
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. More...
 
- Public Member Functions inherited from FuelCellShop::Material::BaseMaterial
void set_derivative_flags (const std::vector< VariableNames > &flags)
 Set the names of FCST solution variables with respect to which you would like to compute the derivatives of material properties. More...
 
const std::string & name_material () const
 Return the name of the layer. More...
 
virtual void print_material_properties () const
 This function prints out the material properties. More...
 

Protected Attributes

double electron_conductivity
 Variable storing electron conductivity. More...
 
std::vector< double > electron_conductivity_derivative
 Variable storing electron conductivity derivatives. More...
 
double thermal_conductivity
 Variable storing thermal conductivity. More...
 
std::vector< double > thermal_conductivity_derivative
 Variable storing thermal conductivity derivatives. More...
 
double youngs_modulus
 Variable storing Youngs modulus. More...
 
std::vector< double > youngs_modulus_derivative
 Variable storing Youngs modulus. More...
 
double poissons_ratio
 Variable storing Poisson ratio. More...
 
std::vector< double > poissons_ratio_derivative
 Variable storing Poisson modulus. More...
 
double expansion_coefficient
 Variable storing expansion coefficient ratio. More...
 
std::vector< double > expansion_coefficient_derivative
 Variable storing expansion coefficient modulus. More...
 
- Protected Attributes inherited from FuelCellShop::Material::BaseMaterial
const std::string name
 Name of the layer. More...
 
std::vector< VariableNamesderivative_flags
 Flags for derivatives: These flags are used to request derivatives of material properties. More...
 

Additional Inherited Members

- Protected Member Functions inherited from FuelCellShop::Material::BaseMaterial
 BaseMaterial ()
 Constructor. More...
 
 BaseMaterial (const std::string &name)
 Constructor. More...
 
virtual ~BaseMaterial ()
 Destructor. More...
 

Detailed Description

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:

Medium Priority Todo:
Implement a liquid gas so that it can be passed to the member function that computes contact angles

Constructor & Destructor Documentation

FuelCellShop::Material::MaterialPlateBase::MaterialPlateBase ( std::string  name)
inline

Constructor.

FuelCellShop::Material::MaterialPlateBase::~MaterialPlateBase ( )
inline

Destructor.

Member Function Documentation

void FuelCellShop::Material::MaterialPlateBase::declare_parameters ( ParameterHandler &  param) const
inlinevirtual

Declare parameters.

Reimplemented from FuelCellShop::Material::BaseMaterial.

Reimplemented in FuelCellShop::Material::MaterialPlateGraphite.

References FuelCellShop::Material::BaseMaterial::declare_parameters().

Here is the call graph for this function:

virtual double FuelCellShop::Material::MaterialPlateBase::get_electron_conductivity ( ) const
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.

References FcstUtilities::log.

virtual void FuelCellShop::Material::MaterialPlateBase::get_electron_conductivity_derivative ( double &  ,
std::vector< double > &   
) const
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.

References FcstUtilities::log.

virtual double FuelCellShop::Material::MaterialPlateBase::get_expansion_coefficient ( ) const
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 >)

References FcstUtilities::log.

virtual void FuelCellShop::Material::MaterialPlateBase::get_expansion_coefficient_derivative ( double &  E,
std::vector< double > &  dE 
) const
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).

References FcstUtilities::log.

virtual void FuelCellShop::Material::MaterialPlateBase::get_poissons_modulus_derivative ( double &  ,
std::vector< double > &   
) const
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).

References FcstUtilities::log.

virtual double FuelCellShop::Material::MaterialPlateBase::get_poissons_ratio ( ) const
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 >)

References FcstUtilities::log.

virtual double FuelCellShop::Material::MaterialPlateBase::get_thermal_conductivity ( ) const
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 >)

References FcstUtilities::log.

virtual void FuelCellShop::Material::MaterialPlateBase::get_thermal_conductivity_derivative ( double &  ,
std::vector< double > &   
) const
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).

References FcstUtilities::log.

virtual double FuelCellShop::Material::MaterialPlateBase::get_youngs_modulus ( ) const
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 >)

References FcstUtilities::log.

virtual void FuelCellShop::Material::MaterialPlateBase::get_youngs_modulus_derivative ( double &  ,
std::vector< double > &   
) const
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).

References FcstUtilities::log.

void FuelCellShop::Material::MaterialPlateBase::initialize ( ParameterHandler &  param)
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().

Here is the call graph for this function:

Member Data Documentation

double FuelCellShop::Material::MaterialPlateBase::electron_conductivity
protected

Variable storing electron conductivity.

std::vector<double> FuelCellShop::Material::MaterialPlateBase::electron_conductivity_derivative
protected

Variable storing electron conductivity derivatives.

double FuelCellShop::Material::MaterialPlateBase::expansion_coefficient
protected

Variable storing expansion coefficient ratio.

std::vector<double> FuelCellShop::Material::MaterialPlateBase::expansion_coefficient_derivative
protected

Variable storing expansion coefficient modulus.

double FuelCellShop::Material::MaterialPlateBase::poissons_ratio
protected

Variable storing Poisson ratio.

std::vector<double> FuelCellShop::Material::MaterialPlateBase::poissons_ratio_derivative
protected

Variable storing Poisson modulus.

double FuelCellShop::Material::MaterialPlateBase::thermal_conductivity
protected

Variable storing thermal conductivity.

std::vector<double> FuelCellShop::Material::MaterialPlateBase::thermal_conductivity_derivative
protected

Variable storing thermal conductivity derivatives.

double FuelCellShop::Material::MaterialPlateBase::youngs_modulus
protected

Variable storing Youngs modulus.

std::vector<double> FuelCellShop::Material::MaterialPlateBase::youngs_modulus_derivative
protected

Variable storing Youngs modulus.


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