Stokhos Package Browser (Single Doxygen Collection)
Version of the Day
|
Nonlinear, stochastic Galerkin ModelEvaluator that constructs a interlaced Jacobian. More...
#include <Stokhos_SGModelEvaluator_Interlaced.hpp>
Public Member Functions | |
SGModelEvaluator_Interlaced (const Teuchos::RCP< EpetraExt::ModelEvaluator > &me, const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > &sg_basis, const Teuchos::RCP< const Stokhos::Quadrature< int, double > > &sg_quad, const Teuchos::RCP< Stokhos::OrthogPolyExpansion< int, double > > &sg_exp, const Teuchos::RCP< const Stokhos::ParallelData > &sg_parallel_data, const Teuchos::RCP< Teuchos::ParameterList > ¶ms, bool scaleOP=true) | |
Public Member Functions inherited from Stokhos::SGModelEvaluatorBase | |
SGModelEvaluatorBase () | |
virtual | ~SGModelEvaluatorBase () |
Destructor. More... | |
Static Public Member Functions | |
static Teuchos::RCP< Epetra_Map > | buildInterlaceMap (const Epetra_BlockMap &determ_map, const Epetra_BlockMap &stocha_map) |
static void | copyToInterlacedVector (const Stokhos::EpetraVectorOrthogPoly &x_sg, Epetra_Vector &x) |
static void | copyToPolyOrthogVector (const Epetra_Vector &x, Stokhos::EpetraVectorOrthogPoly &x_sg) |
Protected Attributes | |
Teuchos::RCP < EpetraExt::ModelEvaluator > | me |
Underlying model evaluator. More... | |
Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > | sg_basis |
Stochastic Galerkin basis. More... | |
Teuchos::RCP< const Stokhos::Quadrature< int, double > > | sg_quad |
Stochastic Galerkin quadrature. More... | |
Teuchos::RCP < Stokhos::OrthogPolyExpansion < int, double > > | sg_exp |
Stochastic Galerkin expansion. More... | |
Teuchos::RCP < Teuchos::ParameterList > | params |
Algorithmic parameters. More... | |
unsigned int | num_sg_blocks |
Number of stochastic blocks. More... | |
unsigned int | num_W_blocks |
Number of W stochastic blocks (may be smaller than num_sg_blocks) More... | |
unsigned int | num_p_blocks |
Number of p stochastic blocks (may be smaller than num_sg_blocks) More... | |
bool | supports_x |
Whether we support x (and thus f and W) More... | |
Teuchos::RCP< const Epetra_Map > | x_map |
Underlying unknown map. More... | |
Teuchos::RCP< const Epetra_Map > | f_map |
Underlying residual map. More... | |
Teuchos::RCP< const Stokhos::ParallelData > | sg_parallel_data |
Parallel SG data. More... | |
Teuchos::RCP< const EpetraExt::MultiComm > | sg_comm |
Parallel SG communicator. More... | |
Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > | epetraCijk |
Epetra Cijk. More... | |
Teuchos::RCP< const Stokhos::EpetraSparse3Tensor > | serialCijk |
Serial Epetra Cijk for dgdx*. More... | |
Teuchos::RCP< const Epetra_BlockMap > | stoch_row_map |
Map for stochastic blocks. More... | |
Teuchos::RCP< const Epetra_BlockMap > | overlapped_stoch_row_map |
Overlapped map for stochastic blocks (local map) More... | |
Teuchos::RCP< const Epetra_BlockMap > | overlapped_stoch_p_map |
Overlapped map for p stochastic blocks (local map) More... | |
Teuchos::RCP< const Epetra_Map > | interlace_x_map |
Block SG unknown map. More... | |
Teuchos::RCP< const Epetra_Map > | interlace_overlapped_x_map |
Block SG overlapped unknown map. More... | |
Teuchos::RCP< const Epetra_Map > | interlace_f_map |
Block SG residual map. More... | |
Teuchos::RCP< const Epetra_Map > | interlace_overlapped_f_map |
Block SG overlapped residual map. More... | |
Teuchos::RCP< Epetra_Import > | interlace_overlapped_x_importer |
Importer from SG to SG-overlapped maps. More... | |
Teuchos::RCP< Epetra_Export > | interlace_overlapped_f_exporter |
Exporter from SG-overlapped to SG maps. More... | |
int | num_p |
Number of parameter vectors of underlying model evaluator. More... | |
int | num_p_sg |
Number of stochastic parameter vectors. More... | |
Teuchos::Array< int > | sg_p_index_map |
Index map between block-p and p_sg maps. More... | |
Teuchos::Array< Teuchos::RCP < const Epetra_Map > > | sg_p_map |
Block SG parameter map. More... | |
Teuchos::Array< Teuchos::RCP < Teuchos::Array< std::string > > > | sg_p_names |
SG coefficient parameter names. More... | |
int | num_g |
Number of response vectors of underlying model evaluator. More... | |
int | num_g_sg |
Number of stochastic response vectors. More... | |
Teuchos::Array< int > | sg_g_index_map |
Index map between block-g and g_sg maps. More... | |
Teuchos::Array< Teuchos::RCP < const Epetra_Map > > | sg_g_map |
Block SG response map. More... | |
Teuchos::RCP < Stokhos::EpetraVectorOrthogPoly > | x_dot_sg_blocks |
x_dot stochastic Galerkin components More... | |
Teuchos::RCP < Stokhos::EpetraVectorOrthogPoly > | x_sg_blocks |
x stochastic Galerkin components More... | |
Teuchos::RCP < Stokhos::EpetraVectorOrthogPoly > | f_sg_blocks |
f stochastic Galerkin components More... | |
Teuchos::RCP < Stokhos::EpetraOperatorOrthogPoly > | W_sg_blocks |
W stochastic Galerkin components. More... | |
Teuchos::Array< Teuchos::RCP < Stokhos::EpetraMultiVectorOrthogPoly > > | dfdp_sg_blocks |
Teuchos::Array< Teuchos::RCP < Stokhos::EpetraMultiVectorOrthogPoly > > | dgdx_dot_sg_blocks |
dg/dxdot stochastic Galerkin components More... | |
Teuchos::Array< Teuchos::RCP < Stokhos::EpetraMultiVectorOrthogPoly > > | dgdx_sg_blocks |
dg/dx stochastic Galerkin components More... | |
Teuchos::RCP < Stokhos::EpetraVectorOrthogPoly > | sg_x_init |
SG initial x. More... | |
Teuchos::Array< Teuchos::RCP < Stokhos::EpetraVectorOrthogPoly > > | sg_p_init |
SG initial p. More... | |
bool | eval_W_with_f |
Whether to always evaluate W with f. More... | |
Teuchos::RCP< Stokhos::SGOperator > | my_W |
W pointer for evaluating W with f. More... | |
Teuchos::RCP< Epetra_Vector > | my_x |
x pointer for evaluating preconditioner More... | |
bool | scaleOP |
Overridden from EpetraExt::ModelEvaluator . | |
Teuchos::RCP< const Epetra_Map > | get_x_map () const |
Return solution vector map. More... | |
Teuchos::RCP< const Epetra_Map > | get_p_map (int l) const |
Return parameter vector map. More... | |
Teuchos::RCP< const Teuchos::Array< std::string > > | get_p_names (int l) const |
Return array of parameter names. More... | |
Teuchos::RCP< const Epetra_Vector > | get_x_init () const |
Return initial solution. More... | |
Teuchos::RCP< const Epetra_Vector > | get_p_init (int l) const |
Return initial parameters. More... | |
Teuchos::RCP< const Epetra_Map > | get_f_map () const |
Return residual vector map. More... | |
Teuchos::RCP< const Epetra_Map > | get_g_map (int l) const |
Return response map. More... | |
Teuchos::RCP< Epetra_Operator > | create_W () const |
Create W = alpha*M + beta*J matrix. More... | |
InArgs | createInArgs () const |
Create InArgs. More... | |
OutArgs | createOutArgs () const |
Create OutArgs. More... | |
void | evalModel (const InArgs &inArgs, const OutArgs &outArgs) const |
Evaluate model on InArgs. More... | |
Nonlinear, stochastic Galerkin ModelEvaluator that constructs a interlaced Jacobian.
SGModelEvaluator_Interlaced is an implementation of EpetraExt::ModelEvaluator that generates a nonlinear problem from a stochastic Galerkin expansion, the Jacobian and solution vectors are interlaced. It wraps a supplied ModelEvaluator that supports the SG versions of p, x, and possibly x_dot InArgs, and f and W OutArgs, and translates those into a new nonlinear problem. It does so by concatenating all of the SG components of p, x, x_dot, and f into extended block vectors that form the parameters, solution vector, time derivative vector and residual for the new nonlinear problem. Only forming a fully-assembled SG matrix is possible. The W operator of the underlying model evaluator must be an Epetra_CrsMatrix.
Definition at line 50 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
Stokhos::SGModelEvaluator_Interlaced::SGModelEvaluator_Interlaced | ( | const Teuchos::RCP< EpetraExt::ModelEvaluator > & | me, |
const Teuchos::RCP< const Stokhos::OrthogPolyBasis< int, double > > & | sg_basis, | ||
const Teuchos::RCP< const Stokhos::Quadrature< int, double > > & | sg_quad, | ||
const Teuchos::RCP< Stokhos::OrthogPolyExpansion< int, double > > & | sg_exp, | ||
const Teuchos::RCP< const Stokhos::ParallelData > & | sg_parallel_data, | ||
const Teuchos::RCP< Teuchos::ParameterList > & | params, | ||
bool | scaleOP = true |
||
) |
Definition at line 24 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator_Interlaced::get_x_map | ( | ) | const |
Return solution vector map.
Definition at line 240 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator_Interlaced::get_p_map | ( | int | l | ) | const |
Return parameter vector map.
Definition at line 252 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Teuchos::Array< std::string > > Stokhos::SGModelEvaluator_Interlaced::get_p_names | ( | int | l | ) | const |
Return array of parameter names.
Definition at line 273 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Vector > Stokhos::SGModelEvaluator_Interlaced::get_x_init | ( | ) | const |
Return initial solution.
Definition at line 286 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Vector > Stokhos::SGModelEvaluator_Interlaced::get_p_init | ( | int | l | ) | const |
Return initial parameters.
Definition at line 292 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator_Interlaced::get_f_map | ( | ) | const |
Return residual vector map.
Definition at line 246 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator_Interlaced::get_g_map | ( | int | l | ) | const |
Return response map.
Definition at line 265 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator_Interlaced::create_W | ( | ) | const |
Create W = alpha*M + beta*J matrix.
Definition at line 305 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
EpetraExt::ModelEvaluator::InArgs Stokhos::SGModelEvaluator_Interlaced::createInArgs | ( | ) | const |
Create InArgs.
Definition at line 325 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
EpetraExt::ModelEvaluator::OutArgs Stokhos::SGModelEvaluator_Interlaced::createOutArgs | ( | ) | const |
Create OutArgs.
Definition at line 347 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
void Stokhos::SGModelEvaluator_Interlaced::evalModel | ( | const InArgs & | inArgs, |
const OutArgs & | outArgs | ||
) | const |
Evaluate model on InArgs.
Definition at line 378 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Set initial solution polynomial.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 664 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Return initial SG x.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 671 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Set initial parameter polynomial.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 677 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Return initial SG parameters.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 684 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Get indices of SG parameters.
These indices determine which parameter vectors support SG
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 690 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Get indices of SG responses.
These indices determine which response vectors support SG
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 696 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Get base maps of SG responses.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 702 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Return overlap stochastic map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 711 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Return x sg overlap map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 717 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Return x sg importer.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 723 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using x map and owned sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 729 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using x map and overlap sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 744 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using x map and owned sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 760 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using x map and overlap sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 776 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using p map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 794 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using f map and owned sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 816 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using f map and overlap sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 831 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create multi-vector orthog poly using f map and owned sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 847 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create multi-vector orthog poly using f map and overlap sg map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 865 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create vector orthog poly using g map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 883 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
virtual |
Create multi-vector orthog poly using g map.
Implements Stokhos::SGModelEvaluatorBase.
Definition at line 907 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
static |
Build an interlaced map containing stochastic degrees of freedom for each element of the detministic map. This is not an adaptive map!
Definition at line 932 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
static |
Copy from a SG EpetraPolyOrthogVector object to an interlaced vector
Definition at line 950 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
static |
Copy from a SG EpetraPolyOrthogVector object to an interlaced vector
Definition at line 965 of file Stokhos_SGModelEvaluator_Interlaced.cpp.
|
protected |
Underlying model evaluator.
Definition at line 228 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Stochastic Galerkin basis.
Definition at line 231 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Stochastic Galerkin quadrature.
Definition at line 234 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Stochastic Galerkin expansion.
Definition at line 237 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Algorithmic parameters.
Definition at line 240 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of stochastic blocks.
Definition at line 243 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of W stochastic blocks (may be smaller than num_sg_blocks)
Definition at line 246 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of p stochastic blocks (may be smaller than num_sg_blocks)
Definition at line 249 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Whether we support x (and thus f and W)
Definition at line 252 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Underlying unknown map.
Definition at line 255 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Underlying residual map.
Definition at line 258 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Parallel SG data.
Definition at line 261 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Parallel SG communicator.
Definition at line 264 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Epetra Cijk.
Definition at line 267 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Serial Epetra Cijk for dgdx*.
Definition at line 270 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Map for stochastic blocks.
Definition at line 273 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Overlapped map for stochastic blocks (local map)
Definition at line 276 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Overlapped map for p stochastic blocks (local map)
Definition at line 279 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG unknown map.
Definition at line 282 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG overlapped unknown map.
Definition at line 285 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG residual map.
Definition at line 288 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG overlapped residual map.
Definition at line 291 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Importer from SG to SG-overlapped maps.
Definition at line 294 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Exporter from SG-overlapped to SG maps.
Definition at line 297 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of parameter vectors of underlying model evaluator.
Definition at line 300 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of stochastic parameter vectors.
Definition at line 303 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Index map between block-p and p_sg maps.
Definition at line 306 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG parameter map.
Definition at line 309 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
SG coefficient parameter names.
Definition at line 312 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of response vectors of underlying model evaluator.
Definition at line 315 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Number of stochastic response vectors.
Definition at line 318 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Index map between block-g and g_sg maps.
Definition at line 321 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Block SG response map.
Definition at line 324 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
x_dot stochastic Galerkin components
Definition at line 327 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
x stochastic Galerkin components
Definition at line 330 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
f stochastic Galerkin components
Definition at line 333 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
W stochastic Galerkin components.
Definition at line 336 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
Definition at line 338 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
dg/dxdot stochastic Galerkin components
Definition at line 341 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
dg/dx stochastic Galerkin components
Definition at line 344 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
SG initial x.
Definition at line 347 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
SG initial p.
Definition at line 350 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Whether to always evaluate W with f.
Definition at line 353 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
W pointer for evaluating W with f.
Definition at line 356 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
mutableprotected |
x pointer for evaluating preconditioner
Definition at line 359 of file Stokhos_SGModelEvaluator_Interlaced.hpp.
|
protected |
Definition at line 361 of file Stokhos_SGModelEvaluator_Interlaced.hpp.