|
Stokhos Development
|
Multi-point model evaluator. More...
#include <Stokhos_MPModelEvaluator.hpp>


Overridden from EpetraExt::ModelEvaluator . | |
| Teuchos::RCP< EpetraExt::ModelEvaluator > | me |
| Underlying model evaluator. | |
| unsigned int | num_mp_blocks |
| Number of blocks. | |
| Teuchos::RCP< const EpetraExt::MultiComm > | mp_comm |
| Parallel MP communicator. | |
| Teuchos::RCP< const Epetra_Map > | mp_block_map |
| Map for layout of parallel MP blocks. | |
| Teuchos::RCP< Teuchos::ParameterList > | params |
| Algorithmic parameters. | |
| bool | supports_x |
| Whether we support x (and thus f and W). | |
| Teuchos::RCP< const Epetra_Map > | x_map |
| Underlying unknown map. | |
| Teuchos::RCP< const Epetra_Map > | f_map |
| Underlying residual map. | |
| Teuchos::RCP< const Epetra_Map > | mp_x_map |
| Block MP unknown map. | |
| Teuchos::RCP< const Epetra_Map > | mp_f_map |
| Block MP residual map. | |
| int | num_p |
| Number of parameter vectors of underlying model evaluator. | |
| int | num_p_mp |
| Number of multi-point parameter vectors. | |
| Teuchos::Array< int > | mp_p_index_map |
| Index map between block-p and p_mp maps. | |
| Teuchos::Array< Teuchos::RCP< const Epetra_Map > > | mp_p_map |
| Block MP parameter map. | |
| Teuchos::Array< Teuchos::RCP< Teuchos::Array< std::string > > > | mp_p_names |
| MP coefficient parameter names. | |
| int | num_g |
| Number of response vectors of underlying model evaluator. | |
| int | num_g_mp |
| Number of multi-point response vectors. | |
| Teuchos::Array< int > | mp_g_index_map |
| Index map between block-g and g_mp maps. | |
| Teuchos::Array< Teuchos::RCP< const Epetra_Map > > | mp_g_map |
| Block MP response map. | |
| Teuchos::RCP< Stokhos::ProductEpetraOperator > | W_mp_blocks |
| W multi-point components. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | mp_x_init |
| MP initial x. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | mp_x_dot_init |
| Teuchos::Array< Teuchos::RCP< ProductEpetraVector > > | mp_p_init |
| MP initial p. | |
| Teuchos::RCP< Stokhos::BlockDiagonalOperator > | my_W |
| W pointer for evaluating preconditioner. | |
| Teuchos::RCP< Epetra_Vector > | my_x |
| x pointer for evaluating preconditioner | |
| Teuchos::RCP< const Epetra_Map > | get_x_map () const |
| Return solution vector map. | |
| Teuchos::RCP< const Epetra_Map > | get_f_map () const |
| Return residual vector map. | |
| Teuchos::RCP< const Epetra_Map > | get_p_map (int l) const |
| Return parameter vector map. | |
| Teuchos::RCP< const Epetra_Map > | get_g_map (int l) const |
| Return response map. | |
| Teuchos::RCP< const Teuchos::Array< std::string > > | get_p_names (int l) const |
| Return array of parameter names. | |
| Teuchos::RCP< const Epetra_Vector > | get_x_init () const |
| Return initial solution. | |
| Teuchos::RCP< const Epetra_Vector > | get_x_dot_init () const |
| Teuchos::RCP< const Epetra_Vector > | get_p_init (int l) const |
| Return initial parameters. | |
| Teuchos::RCP< Epetra_Operator > | create_W () const |
| Create W = alpha*M + beta*J matrix. | |
| Teuchos::RCP< EpetraExt::ModelEvaluator::Preconditioner > | create_WPrec () const |
| Create preconditioner operator. | |
| Teuchos::RCP< Epetra_Operator > | create_DgDx_dot_op (int j) const |
| Create MP operator representing dg/dxdot. | |
| Teuchos::RCP< Epetra_Operator > | create_DgDx_op (int j) const |
| Create MP operator representing dg/dx. | |
| Teuchos::RCP< Epetra_Operator > | create_DgDp_op (int j, int i) const |
| Create MP operator representing dg/dp. | |
| Teuchos::RCP< Epetra_Operator > | create_DfDp_op (int i) const |
| Create MP operator representing df/dp. | |
| InArgs | createInArgs () const |
| Create InArgs. | |
| OutArgs | createOutArgs () const |
| Create OutArgs. | |
| void | evalModel (const InArgs &inArgs, const OutArgs &outArgs) const |
| Evaluate model on InArgs. | |
| void | set_x_mp_init (const Stokhos::ProductEpetraVector &x_mp_in) |
| Set initial multi-point solution. | |
| void | set_x_dot_mp_init (const Stokhos::ProductEpetraVector &x_dot_mp_in) |
| Teuchos::RCP< const Stokhos::ProductEpetraVector > | get_x_mp_init () const |
| Return initial SG x. | |
| Teuchos::RCP< const Stokhos::ProductEpetraVector > | get_x_dot_mp_init () const |
| void | set_p_mp_init (int i, const Stokhos::ProductEpetraVector &p_mp_in) |
| Set initial multi-point parameter. | |
| Teuchos::RCP< const Stokhos::ProductEpetraVector > | get_p_mp_init (int l) const |
| Return initial SG parameters. | |
| Teuchos::Array< int > | get_p_mp_map_indices () const |
| Get indices of MP parameters. | |
| Teuchos::Array< int > | get_g_mp_map_indices () const |
| Get indices of MP responses. | |
| Teuchos::Array< Teuchos::RCP< const Epetra_Map > > | get_g_mp_base_maps () const |
| Get base maps of MP responses. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | create_x_mp (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const |
| Create multi-point vector using x map and owned mp map. | |
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > | create_x_mv_mp (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const |
| Create multi-point vector using x map. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | create_p_mp (int l, Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const |
| Create multi-point vector using p map. | |
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > | create_p_mv_mp (int l, int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const |
| Create multi-point vector using p map. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | create_f_mp (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const |
| Create multi-point vector using f map. | |
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > | create_f_mv_mp (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const |
| Create multi-point multi-vector using f map. | |
| Teuchos::RCP< Stokhos::ProductEpetraVector > | create_g_mp (int l, Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const |
| Create multi-point vector using g map. | |
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > | create_g_mv_mp (int l, int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const |
| Create multi-point multi-vector using g map. | |
Multi-point model evaluator.
Transforms a multi-point nonlinear problem to single nonlinear problem.
| Teuchos::RCP< Epetra_Operator > Stokhos::MPModelEvaluator::create_DfDp_op | ( | int | i | ) | const |
Create MP operator representing df/dp.
References f_map, me, mp_block_map, mp_comm, mp_f_map, mp_p_index_map, mp_p_map, num_mp_blocks, num_p, and num_p_mp.
| Teuchos::RCP< Epetra_Operator > Stokhos::MPModelEvaluator::create_DgDp_op | ( | int | j, |
| int | i ) const |
Create MP operator representing dg/dp.
References me, mp_block_map, mp_comm, mp_g_index_map, mp_g_map, mp_p_index_map, mp_p_map, num_g_mp, num_mp_blocks, num_p, and num_p_mp.
| Teuchos::RCP< Epetra_Operator > Stokhos::MPModelEvaluator::create_DgDx_dot_op | ( | int | j | ) | const |
Create MP operator representing dg/dxdot.
References me, mp_block_map, mp_comm, mp_g_index_map, mp_g_map, mp_x_map, num_g_mp, num_mp_blocks, supports_x, and x_map.
| Teuchos::RCP< Epetra_Operator > Stokhos::MPModelEvaluator::create_DgDx_op | ( | int | j | ) | const |
Create MP operator representing dg/dx.
References me, mp_block_map, mp_comm, mp_g_index_map, mp_g_map, mp_x_map, num_g_mp, num_mp_blocks, supports_x, and x_map.
| Teuchos::RCP< Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::create_f_mp | ( | Epetra_DataAccess | CV = Copy, |
| const Epetra_Vector * | v = NULL ) const |
Create multi-point vector using f map.
References f_map, mp_block_map, mp_comm, and mp_f_map.
Referenced by evalModel().
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > Stokhos::MPModelEvaluator::create_f_mv_mp | ( | int | num_vecs, |
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_MultiVector * | v = NULL ) const |
Create multi-point multi-vector using f map.
References f_map, mp_block_map, mp_comm, and mp_f_map.
| Teuchos::RCP< Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::create_g_mp | ( | int | l, |
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_Vector * | v = NULL ) const |
Create multi-point vector using g map.
References me, mp_block_map, mp_comm, mp_g_index_map, and mp_g_map.
Referenced by evalModel().
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > Stokhos::MPModelEvaluator::create_g_mv_mp | ( | int | l, |
| int | num_vecs, | ||
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_MultiVector * | v = NULL ) const |
Create multi-point multi-vector using g map.
References me, mp_block_map, mp_comm, mp_g_index_map, and mp_g_map.
| Teuchos::RCP< Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::create_p_mp | ( | int | l, |
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_Vector * | v = NULL ) const |
Create multi-point vector using p map.
References me, mp_block_map, mp_comm, mp_p_index_map, and mp_p_map.
Referenced by evalModel().
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > Stokhos::MPModelEvaluator::create_p_mv_mp | ( | int | l, |
| int | num_vecs, | ||
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_MultiVector * | v = NULL ) const |
Create multi-point vector using p map.
References me, mp_block_map, mp_comm, mp_p_index_map, and mp_p_map.
| Teuchos::RCP< Epetra_Operator > Stokhos::MPModelEvaluator::create_W | ( | ) | const |
Create W = alpha*M + beta*J matrix.
References f_map, mp_comm, mp_f_map, mp_x_map, my_W, num_mp_blocks, supports_x, W_mp_blocks, and x_map.
| Teuchos::RCP< EpetraExt::ModelEvaluator::Preconditioner > Stokhos::MPModelEvaluator::create_WPrec | ( | ) | const |
Create preconditioner operator.
References Stokhos::MPPreconditionerFactory::build(), mp_comm, mp_x_map, num_mp_blocks, params, supports_x, and x_map.
| Teuchos::RCP< Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::create_x_mp | ( | Epetra_DataAccess | CV = Copy, |
| const Epetra_Vector * | v = NULL ) const |
Create multi-point vector using x map and owned mp map.
References mp_block_map, mp_comm, mp_x_map, and x_map.
Referenced by evalModel().
| Teuchos::RCP< Stokhos::ProductEpetraMultiVector > Stokhos::MPModelEvaluator::create_x_mv_mp | ( | int | num_vecs, |
| Epetra_DataAccess | CV = Copy, | ||
| const Epetra_MultiVector * | v = NULL ) const |
Create multi-point vector using x map.
References mp_block_map, mp_comm, mp_x_map, and x_map.
| EpetraExt::ModelEvaluator::InArgs Stokhos::MPModelEvaluator::createInArgs | ( | ) | const |
| EpetraExt::ModelEvaluator::OutArgs Stokhos::MPModelEvaluator::createOutArgs | ( | ) | const |
Create OutArgs.
References me, mp_g_index_map, mp_p_index_map, num_g_mp, num_p, and num_p_mp.
| void Stokhos::MPModelEvaluator::evalModel | ( | const InArgs & | inArgs, |
| const OutArgs & | outArgs ) const |
Evaluate model on InArgs.
References create_f_mp(), create_g_mp(), create_p_mp(), create_x_mp(), me, mp_block_map, mp_comm, mp_f_map, mp_g_index_map, mp_g_map, mp_p_index_map, mp_p_init, mp_p_map, my_W, my_x, num_g_mp, num_p, num_p_mp, and W_mp_blocks.
| Teuchos::RCP< const Epetra_Map > Stokhos::MPModelEvaluator::get_f_map | ( | ) | const |
Return residual vector map.
References mp_f_map.
| Teuchos::RCP< const Epetra_Map > Stokhos::MPModelEvaluator::get_g_map | ( | int | l | ) | const |
| Teuchos::Array< Teuchos::RCP< const Epetra_Map > > Stokhos::MPModelEvaluator::get_g_mp_base_maps | ( | ) | const |
| Teuchos::Array< int > Stokhos::MPModelEvaluator::get_g_mp_map_indices | ( | ) | const |
Get indices of MP responses.
These indices determine which response vectors support MP
References mp_g_index_map.
| Teuchos::RCP< const Epetra_Vector > Stokhos::MPModelEvaluator::get_p_init | ( | int | l | ) | const |
| Teuchos::RCP< const Epetra_Map > Stokhos::MPModelEvaluator::get_p_map | ( | int | l | ) | const |
| Teuchos::RCP< const Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::get_p_mp_init | ( | int | l | ) | const |
Return initial SG parameters.
References mp_p_index_map, and mp_p_init.
| Teuchos::Array< int > Stokhos::MPModelEvaluator::get_p_mp_map_indices | ( | ) | const |
Get indices of MP parameters.
These indices determine which parameter vectors support MP
References mp_p_index_map.
| Teuchos::RCP< const Teuchos::Array< std::string > > Stokhos::MPModelEvaluator::get_p_names | ( | int | l | ) | const |
Return array of parameter names.
References me, mp_p_names, num_p, and num_p_mp.
| Teuchos::RCP< const Epetra_Vector > Stokhos::MPModelEvaluator::get_x_init | ( | ) | const |
Return initial solution.
References mp_x_init.
| Teuchos::RCP< const Epetra_Map > Stokhos::MPModelEvaluator::get_x_map | ( | ) | const |
Return solution vector map.
References mp_x_map.
| Teuchos::RCP< const Stokhos::ProductEpetraVector > Stokhos::MPModelEvaluator::get_x_mp_init | ( | ) | const |
Return initial SG x.
References mp_x_init.
| void Stokhos::MPModelEvaluator::set_p_mp_init | ( | int | i, |
| const Stokhos::ProductEpetraVector & | p_mp_in ) |
Set initial multi-point parameter.
References mp_p_index_map, and mp_p_init.
| void Stokhos::MPModelEvaluator::set_x_mp_init | ( | const Stokhos::ProductEpetraVector & | x_mp_in | ) |
Set initial multi-point solution.
References mp_x_init.
|
protected |
Underlying residual map.
Referenced by create_DfDp_op(), create_f_mp(), create_f_mv_mp(), and create_W().
|
protected |
Underlying model evaluator.
Referenced by create_DfDp_op(), create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_g_mp(), create_g_mv_mp(), create_p_mp(), create_p_mv_mp(), createInArgs(), createOutArgs(), evalModel(), get_g_mp_base_maps(), get_p_init(), get_p_map(), and get_p_names().
|
protected |
Map for layout of parallel MP blocks.
Referenced by create_DfDp_op(), create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_f_mp(), create_f_mv_mp(), create_g_mp(), create_g_mv_mp(), create_p_mp(), create_p_mv_mp(), create_x_mp(), create_x_mv_mp(), and evalModel().
|
protected |
Parallel MP communicator.
Referenced by create_DfDp_op(), create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_f_mp(), create_f_mv_mp(), create_g_mp(), create_g_mv_mp(), create_p_mp(), create_p_mv_mp(), create_W(), create_WPrec(), create_x_mp(), create_x_mv_mp(), and evalModel().
|
protected |
Block MP residual map.
Referenced by create_DfDp_op(), create_f_mp(), create_f_mv_mp(), create_W(), evalModel(), and get_f_map().
|
protected |
Index map between block-g and g_mp maps.
Referenced by create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_g_mp(), create_g_mv_mp(), createOutArgs(), evalModel(), and get_g_mp_map_indices().
|
protected |
Block MP response map.
Referenced by create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_g_mp(), create_g_mv_mp(), evalModel(), and get_g_map().
|
protected |
Index map between block-p and p_mp maps.
Referenced by create_DfDp_op(), create_DgDp_op(), create_p_mp(), create_p_mv_mp(), createOutArgs(), evalModel(), get_p_mp_init(), get_p_mp_map_indices(), and set_p_mp_init().
|
protected |
MP initial p.
Referenced by evalModel(), get_p_init(), get_p_mp_init(), and set_p_mp_init().
|
protected |
Block MP parameter map.
Referenced by create_DfDp_op(), create_DgDp_op(), create_p_mp(), create_p_mv_mp(), evalModel(), and get_p_map().
|
protected |
MP coefficient parameter names.
Referenced by get_p_names().
|
protected |
MP initial x.
Referenced by get_x_init(), get_x_mp_init(), and set_x_mp_init().
|
protected |
Block MP unknown map.
Referenced by create_DgDx_dot_op(), create_DgDx_op(), create_W(), create_WPrec(), create_x_mp(), create_x_mv_mp(), and get_x_map().
|
mutableprotected |
W pointer for evaluating preconditioner.
Referenced by create_W(), and evalModel().
|
mutableprotected |
x pointer for evaluating preconditioner
Referenced by evalModel().
|
protected |
Number of response vectors of underlying model evaluator.
Referenced by get_g_mp_base_maps().
|
protected |
Number of multi-point response vectors.
Referenced by create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), createOutArgs(), evalModel(), and get_g_map().
|
protected |
Number of blocks.
Referenced by create_DfDp_op(), create_DgDp_op(), create_DgDx_dot_op(), create_DgDx_op(), create_W(), and create_WPrec().
|
protected |
Number of parameter vectors of underlying model evaluator.
Referenced by create_DfDp_op(), create_DgDp_op(), createInArgs(), createOutArgs(), evalModel(), get_p_init(), get_p_map(), and get_p_names().
|
protected |
Number of multi-point parameter vectors.
Referenced by create_DfDp_op(), create_DgDp_op(), createInArgs(), createOutArgs(), evalModel(), get_p_init(), get_p_map(), and get_p_names().
|
protected |
Algorithmic parameters.
Referenced by create_WPrec().
|
protected |
Whether we support x (and thus f and W).
Referenced by create_DgDx_dot_op(), create_DgDx_op(), create_W(), and create_WPrec().
|
mutableprotected |
W multi-point components.
Referenced by create_W(), and evalModel().
|
protected |
Underlying unknown map.
Referenced by create_DgDx_dot_op(), create_DgDx_op(), create_W(), create_WPrec(), create_x_mp(), and create_x_mv_mp().