OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
#include <deal.II/base/point.h>
#include <deal.II/base/function.h>
#include <deal.II/lac/vector.h>
#include <deal.II/dofs/function_map.h>
#include <deal.II/fe/mapping_q1.h>
#include <deal.II/fe/mapping_q.h>
#include <deal.II/numerics/vector_tools.h>
#include <deal.II/numerics/matrix_tools.h>
#include <application_core/application_data.h>
#include <application_core/system_management.h>
#include <solvers/solver_utils.h>
Go to the source code of this file.
Classes | |
class | FuelCell::InitialAndBoundaryData::InitialOrBoundaryDataBase< dim > |
This class is a means to make variable initial or boundary data. More... | |
Namespaces | |
FuelCell | |
This namespace contains data and methods that handle initial and boundary data of a problem at hand. | |
FuelCell::InitialAndBoundaryData | |
Macros | |
#define | _IS_NOT_CONSTANT_ 1.e300 |
Typedefs | |
typedef std::map< std::string, std::map< types::material_id, double > > | component_materialID_value_map |
The typedef for the std::map that reflects the following structure: More... | |
typedef std::map< std::string, std::map< types::boundary_id, double > > | component_boundaryID_value_map |
The typedef for the std::map that reflects the following structure: More... | |
Functions | |
template<typename COMPONENT_xxxID_VALUE_MAP > | |
const bool | FuelCell::InitialAndBoundaryData::check (const std::vector< COMPONENT_xxxID_VALUE_MAP > &maps) |
This function does some checkings on its argument maps . More... | |
template<typename VECTOR , typename DH > | |
void | FuelCell::InitialAndBoundaryData::make_piece_wise_constant_initial_data (VECTOR &dst, const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const FuelCell::SystemManagement &system_management, const std::vector< component_materialID_value_map > &maps) |
This function makes piece wise constant initial data. More... | |
template<typename DH > | |
void | FuelCell::InitialAndBoundaryData::make_constant_DirichletBC_values (std::map< unsigned int, double > &dst, const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const FuelCell::SystemManagement &system_management, const std::vector< component_boundaryID_value_map > &maps) |
template<typename VECTOR , typename DH > | |
void | FuelCell::InitialAndBoundaryData::apply_piece_wise_constant_DirichletBCs (VECTOR &dst, const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const FuelCell::SystemManagement &system_management, const std::vector< component_boundaryID_value_map > &maps) |
This function applies piece wise constant Dirichlet BCs. More... | |
template<typename DH > | |
void | FuelCell::InitialAndBoundaryData::make_zero_boundary_values (std::map< unsigned int, double > &dst, const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const FuelCell::SystemManagement &system_management, const std::vector< component_boundaryID_value_map > &maps) |
This function makes zero boundary values. More... | |
template<typename MATRIX , typename VECTOR , typename DH > | |
void | FuelCell::InitialAndBoundaryData::apply_zero_boundary_values_to_linear_system (MATRIX &matrix, VECTOR &solution, VECTOR &rhs, const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const FuelCell::SystemManagement &system_management, const std::vector< component_boundaryID_value_map > &maps, const bool &repair_diagonal=false) |
This function applies zero boundary values to the linear system of equations. More... | |
#define _IS_NOT_CONSTANT_ 1.e300 |
typedef std::map< std::string , std::map<types::boundary_id, double> > component_boundaryID_value_map |
The typedef for the std::map that reflects the following structure:
first
argument
: name of the solution component,second
argument
: boundary id,third
argument
: value of the solution component. typedef std::map< std::string , std::map<types::material_id, double> > component_materialID_value_map |
The typedef for the std::map that reflects the following structure:
first
argument
: name of the solution component,second
argument
: material id,third
argument
: value of the solution component.This map is usually used to initialize the solution of the problem. If you would like an initial solution that is different for each matrial id, you can specify this here. For example, imagine I want to specify for material_id 0, an oxygen molar fraction of 0.1 and for material_id 2, an oxygen molar fraction of 0.2. Then, I would write
In general, this object is initialized directly from the input file in the Equations section of the data file. For example, in the input file if I write:
This would be equivalent to the code above.