17 #ifndef _FUELCELL__APP_DIFFUSION__H 
   18 #define _FUELCELL__APP_DIFFUSION__H 
   21 #include "base/parameter_handler.h" 
   22 #include "base/function_lib.h" 
   23 #include "base/function.h" 
   24 #include "base/quadrature_lib.h" 
   26 #include "lac/block_vector.h" 
   27 #include "lac/full_matrix.h" 
   28 #include "lac/solver_cg.h" 
   29 #include "lac/solver_gmres.h" 
   30 #include "lac/precondition.h" 
   31 #include "lac/precondition_block.h" 
   32 #include "lac/block_matrix_array.h" 
   33 #include "lac/sparse_ilu.h" 
   34 #include "lac/sparse_direct.h" 
   36 #include "grid/grid_generator.h" 
   37 #include "grid/tria_accessor.h" 
   38 #include "grid/tria_iterator.h" 
   39 #include "grid/tria_boundary_lib.h" 
   41 #include "fe/fe_values.h" 
   43 #include "numerics/vector_tools.h" 
   44 #include "numerics/matrix_tools.h" 
   46 #include "boost/shared_ptr.hpp" 
   83 using namespace dealii;
 
  145             AppDiffusion( boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData > data = 
 
  146             boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData >() );
 
  156             virtual void declare_parameters(ParameterHandler& param);
 
  161             virtual void initialize(ParameterHandler& param);
 
  166               virtual void initialize_solution (
FEVector& initial_guess,
 
  167                                                 std::shared_ptr<Function<dim> > initial_function = std::shared_ptr<Function<dim> >());
 
  194             virtual void dirichlet_bc(std::map<unsigned int, double>& boundary_values) 
const;
 
  204             virtual void data_out(
const std::string&         filename,
 
  215             virtual void bdry_responses(std::vector<double>&                                                     dst,
 
  249             boost::shared_ptr<FuelCellShop::Material::PureGas> 
solute;
 
  256             boost::shared_ptr<FuelCellShop::Material::PureGas> 
solvent;
 
  266             boost::shared_ptr< FuelCellShop::Layer::GasDiffusionLayer<dim> > 
CGDL;
 
Class used to store, read from file and define the operating conditions for a fuel cell...
Definition: operating_conditions.h:110
 
FuelCell::OperatingConditions OC
Operating conditions. 
Definition: app_diffusion.h:244
 
boost::shared_ptr< FuelCellShop::Layer::GasDiffusionLayer< dim > > CGDL
Cathode GDL. 
Definition: app_diffusion.h:266
 
The application can be used to simulate a gas flow through a porous media. 
Definition: app_diffusion.h:135
 
This class deals with Ficks Transport Equation. 
Definition: new_ficks_transport_equation.h:132
 
This class is created for the objects handed to the mesh loops. 
Definition: mesh_loop_info_objects.h:625
 
std::vector< MatrixBlock< FullMatrix< double > > > MatrixVector
The matrix vector used in the mesh loops. 
Definition: matrix_block.h:102
 
boost::shared_ptr< FuelCellShop::Material::PureGas > solvent
Solvent. 
Definition: app_diffusion.h:256
 
FuelCellShop::Equation::NewFicksTransportEquation< dim > ficks_transport_equation
This object describes the equations that we are going to solve here. 
Definition: app_diffusion.h:277
 
boost::shared_ptr< FuelCellShop::Material::PureGas > solute
Solute. 
Definition: app_diffusion.h:249
 
BlockVector< double > FEVector
The vector class used by applications. 
Definition: application_data.h:39
 
The data type used in function calls of Application. 
Definition: fe_vectors.h:59
 
Application handling matrices and assembling the linear system to solve the sensitivity equations...
Definition: optimization_block_matrix_application.h:62