|
OpenFCST: The open-source Fuel Cell Simulation Toolbox
|
This class is used to solve a least-squares parameter estimation problem. More...
#include <dakota_direct_interface.h>


Public Member Functions | |
| DakotaLeastSquaresInterface (DakotaApplication &fcst_interface, boost::shared_ptr< const Dakota::ProblemDescDB > problem_db, ParameterHandler ¶m, boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData > data, boost::shared_ptr< SimulationSelector< dim > > sim_selector, std::string ¶m_file) | |
| Constructor. More... | |
| ~DakotaLeastSquaresInterface () | |
| Destructor. More... | |
| void | _initialize (ParameterHandler ¶m) |
| Local initialize function for this class. More... | |
Public Member Functions inherited from SIM::DakotaDirectInterface< dim > | |
| DakotaDirectInterface (DakotaApplication &fcst_interface, boost::shared_ptr< const Dakota::ProblemDescDB > problem_db, ParameterHandler ¶m, boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData > data, boost::shared_ptr< SimulationSelector< dim > > sim_selector, std::string ¶m_file) | |
| Default constructor for an object of this class. More... | |
| ~DakotaDirectInterface () | |
| Destructor. More... | |
Protected Member Functions | |
| int | derived_map_ac (const Dakota::String &ac_name) |
| Function called by DAKOTA's iterators in order to run the simulation code and assign the corresponding result values by using synchronize_variables(). More... | |
Protected Member Functions inherited from SIM::DakotaDirectInterface< dim > | |
| int | derived_map_ac (const Dakota::String &ac_name) |
| Function called by DAKOTA's iterators in order to run the simulation code and assign the corresponding result values by using synchronize_variables(). More... | |
| void | dakota_adopt_parameters (boost::shared_ptr< FuelCell::ApplicationCore::OptimizationBlockMatrixApplication< dim > > app_linear) |
| Member function that is used to get the design variable names and values and assigns the values to the parameter handler object. More... | |
| void | dakota_assign_results (const std::vector< double > &responses, const std::vector< std::vector< double > > &dresponses_dl) |
| Member function that is used to assign the application responses and gradients to the result variables of DAKOTA. More... | |
| void | dakota_assign_results (const std::vector< double > &responses) |
| Member function that is used to assign the application responses to the result variables of DAKOTA. More... | |
Private Attributes | |
| std::string | NLS_data_file |
| Experimental data file for NLS parameter estimation - Operating Conditions & output. More... | |
| std::vector< double > | NLS_residual |
| Output vector storing residuals from experimental data and output. More... | |
| std::string | NLS_residual_option |
| String storing the option of absolute, weighted, or no residuals (for sensitivity) More... | |
| std::string | NLS_residual_value |
| String storing the choice of returning the residual vector (for NLS methods) or the L2 norm (for all other methods) More... | |
| std::vector< double > | experimental_current |
| Vector to store experimental current density output values. More... | |
| std::vector< std::string > | OC_names |
| Vector to store Operating Condition names (set in NLS_data_file) More... | |
| std::vector< std::vector < double > > | OC_values |
| Array to store Operating Condition values (set in NLS_data_file) More... | |
| std::vector< std::string > | param_names |
| Vector to store the parameter names to set. More... | |
| std::vector< double > | param_values |
| Vector to store the parameter values to set. More... | |
| Timer | nls_timer |
| Object used to calculate the CPU and Run time for the NLS loop. More... | |
| boost::shared_ptr < FuelCell::ApplicationCore::ApplicationData > | data |
| Data structure storing information to be shared between applications. More... | |
Additional Inherited Members | |
Protected Attributes inherited from SIM::DakotaDirectInterface< dim > | |
| ParameterHandler * | param |
| Pointer to the Parameter Handler object. More... | |
| boost::shared_ptr < SimulationSelector < deal_II_dimension > > | sim_selector |
| Pointer to the SimulationSelector object which gives access to the file names and selector functions for linear applications (CATHODE MODEL, NON-ISOTHERMAL CATHODE MODEL, MEA Model,...), newton solves (NewtonBasic, Newton3ppC, ...), and the meshing method that you would like to use (Adaptive Refinement). More... | |
| DakotaApplication * | fcst_interface |
| Pointer to the DakotaApplication object, so that the design variables can be accessed with synchronize_variables(). More... | |
| boost::shared_ptr< const Dakota::ProblemDescDB > | problem_db |
| Pointer to the problem description data base. More... | |
| std::string | simulator_parameter_file_name |
| Timer | eval_timer |
| Object used to calculate the CPU and Run time for the optimization evaluation. More... | |
| unsigned int | n_dvar |
| Number of design variables. More... | |
| unsigned int | n_resp |
| Number of responses. More... | |
| std::vector< std::string > | name_design_var |
| Member that stores the name of the design variables. More... | |
| std::vector< std::string > | name_responses |
| Member that stores the name of the responses. More... | |
| boost::shared_ptr < FuelCell::ApplicationCore::ApplicationData > | data |
| Data structure storing information to be shared between applications. More... | |
This class is used to solve a least-squares parameter estimation problem.
Data is read in from file and the solve function loops over the data points and obtains a solution from the fuel cell simulator. The results are returned to DAKOTA for the optimization loop.
| SIM::DakotaLeastSquaresInterface< dim >::DakotaLeastSquaresInterface | ( | DakotaApplication & | fcst_interface, |
| boost::shared_ptr< const Dakota::ProblemDescDB > | problem_db, | ||
| ParameterHandler & | param, | ||
| boost::shared_ptr< FuelCell::ApplicationCore::ApplicationData > | data, | ||
| boost::shared_ptr< SimulationSelector< dim > > | sim_selector, | ||
| std::string & | param_file | ||
| ) |
Constructor.
|
inline |
Destructor.
| void SIM::DakotaLeastSquaresInterface< dim >::_initialize | ( | ParameterHandler & | param | ) |
Local initialize function for this class.
|
protected |
Function called by DAKOTA's iterators in order to run the simulation code and assign the corresponding result values by using synchronize_variables().
|
private |
Data structure storing information to be shared between applications.
|
private |
Vector to store experimental current density output values.
|
private |
Experimental data file for NLS parameter estimation - Operating Conditions & output.
|
private |
Output vector storing residuals from experimental data and output.
Used for NLS optimization iteration
|
private |
String storing the option of absolute, weighted, or no residuals (for sensitivity)
|
private |
String storing the choice of returning the residual vector (for NLS methods) or the L2 norm (for all other methods)
|
private |
Object used to calculate the CPU and Run time for the NLS loop.
|
private |
Vector to store Operating Condition names (set in NLS_data_file)
|
private |
Array to store Operating Condition values (set in NLS_data_file)
|
private |
Vector to store the parameter names to set.
|
private |
Vector to store the parameter values to set.
1.8.5