OpenFCST: The open-source Fuel Cell Simulation Toolbox
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
fcst
include
utils
simulation_selector.h
Go to the documentation of this file.
1
//---------------------------------------------------------------------------
2
// C++ Interface: simulation_selector.h
3
//
4
// Description: Used to instantiate optimization routines
5
//
6
// Author: Peter Dobson <pdobson@ualberta.ca>, (C) 2011
7
// University of Alberta
8
//
9
// Copyright: See COPYING file that comes with this distribution
10
//
11
//---------------------------------------------------------------------------
12
13
#ifndef _SIMULATION_TOOLS_H
14
#define _SIMULATION_TOOLS_H
15
16
#include <string>
17
#include <iostream>
18
19
#include <boost/shared_ptr.hpp>
20
21
#include "
optimization_block_matrix_application.h
"
22
#include "
adaptive_refinement.h
"
23
24
#include "
newton_basic.h
"
25
#include "
newton_w_line_search.h
"
26
#include "
newton_w_3pp.h
"
27
#include "
newton_w_3ppC.h
"
28
29
#include "
app_cathode.h
"
30
#include "
app_pemfc.h
"
31
#include "
app_laplace.h
"
32
#include "
app_read_mesh.h
"
33
34
//---------------------------------------------------------
42
template
<
int
dim>
43
class
SimulationSelector
44
{
45
public
:
46
48
SimulationSelector
();
49
51
~SimulationSelector
();
52
54
void
declare_parameters
(ParameterHandler& param)
const
;
55
57
void
initialize
(ParameterHandler& param);
58
73
boost::shared_ptr<AppFrame::OptimizationBlockMatrixApplication<dim> >
select_application
();
74
78
//boost::shared_ptr<AppFrame::newtonBase > select_solver(AppFrame::OptimizationBlockMatrixApplication<dim>* app_lin);
79
boost::shared_ptr<AppFrame::ApplicationCopy >
select_solver
(
AppFrame::OptimizationBlockMatrixApplication<dim>
* app_lin);
80
84
boost::shared_ptr<AppFrame::AdaptiveRefinement<dim> >
85
select_solver_method
(
AppFrame::OptimizationBlockMatrixApplication<dim>
* app_lin,
86
AppFrame::ApplicationCopy
* newton_solver,
87
const
AppFrame::FEVector
& solution =
AppFrame::FEVector
());
88
//select_solver_method(AppFrame::OptimizationBlockMatrixApplication<dim>* app_lin, AppFrame::newtonBase* newton_solver);
89
90
91
protected
:
95
std::string
name_application
;
96
100
std::string
name_solver
;
101
105
std::string
name_solve_method
;
106
};
107
108
#endif
Generated on Fri Aug 30 2013 17:15:54 for OpenFCST: The open-source Fuel Cell Simulation Toolbox by
1.8.2