Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
Stokhos::SGModelEvaluator Class Reference

Nonlinear, stochastic Galerkin ModelEvaluator. More...

#include <Stokhos_SGModelEvaluator.hpp>

Inheritance diagram for Stokhos::SGModelEvaluator:
Inheritance graph
[legend]

Public Member Functions

 SGModelEvaluator (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)
 
Teuchos::RCP
< EpetraExt::BlockVector > 
import_solution (const Epetra_Vector &x) const
 Import parallel solution vector. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
import_solution_poly (const Epetra_Vector &x) const
 Import parallel solution vector. More...
 
Teuchos::RCP
< EpetraExt::BlockVector > 
export_solution (const Epetra_Vector &x_overlapped) const
 Export parallel solution vector. More...
 
Teuchos::RCP
< EpetraExt::BlockVector > 
import_residual (const Epetra_Vector &f) const
 Import parallel residual vector. More...
 
Teuchos::RCP
< EpetraExt::BlockVector > 
export_residual (const Epetra_Vector &f_overlapped) const
 Export parallel residual vector. More...
 
- Public Member Functions inherited from Stokhos::SGModelEvaluatorBase
 SGModelEvaluatorBase ()
 
virtual ~SGModelEvaluatorBase ()
 Destructor. More...
 

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_Mapx_map
 Underlying unknown map. More...
 
Teuchos::RCP< const Epetra_Mapf_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_Mapsg_x_map
 Block SG unknown map. More...
 
Teuchos::RCP< const Epetra_Mapsg_overlapped_x_map
 Block SG overlapped unknown map. More...
 
Teuchos::RCP< const Epetra_Mapsg_f_map
 Block SG residual map. More...
 
Teuchos::RCP< const Epetra_Mapsg_overlapped_f_map
 Block SG overlapped residual map. More...
 
Teuchos::RCP< Epetra_Importsg_overlapped_x_importer
 Importer from SG to SG-overlapped maps. More...
 
Teuchos::RCP< Epetra_Exportsg_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::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::SGOperatormy_W
 W pointer for evaluating W with f. More...
 
Teuchos::RCP< Epetra_Vectormy_x
 x pointer for evaluating preconditioner More...
 
bool scaleOP
 
Teuchos::RCP
< Stokhos::SGPreconditionerFactory
sg_prec_factory
 Preconditioner factory. More...
 

Overridden from EpetraExt::ModelEvaluator .

Teuchos::RCP< const Epetra_Mapget_x_map () const
 Return solution vector map. More...
 
Teuchos::RCP< const Epetra_Mapget_f_map () const
 Return residual vector map. More...
 
Teuchos::RCP< const Epetra_Mapget_p_map (int l) const
 Return parameter vector map. More...
 
Teuchos::RCP< const Epetra_Mapget_g_map (int l) const
 Return response 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_Vectorget_x_init () const
 Return initial solution. More...
 
Teuchos::RCP< const Epetra_Vectorget_p_init (int l) const
 Return initial parameters. More...
 
Teuchos::RCP< Epetra_Operatorcreate_W () const
 Create W = alpha*M + beta*J matrix. More...
 
Teuchos::RCP
< EpetraExt::ModelEvaluator::Preconditioner > 
create_WPrec () const
 Create preconditioner operator. More...
 
Teuchos::RCP< Epetra_Operatorcreate_DgDx_dot_op (int j) const
 Create SG operator representing dg/dxdot. More...
 
Teuchos::RCP< Epetra_Operatorcreate_DgDx_op (int j) const
 Create SG operator representing dg/dx. More...
 
Teuchos::RCP< Epetra_Operatorcreate_DgDp_op (int j, int i) const
 Create SG operator representing dg/dp. More...
 
Teuchos::RCP< Epetra_Operatorcreate_DfDp_op (int i) const
 Create SG operator representing df/dp. 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...
 

Overridden from Stokhos::SGModelEvaluatorBase .

void set_x_sg_init (const Stokhos::EpetraVectorOrthogPoly &x_sg_in)
 Set initial solution polynomial. More...
 
Teuchos::RCP< const
Stokhos::EpetraVectorOrthogPoly
get_x_sg_init () const
 Return initial SG x. More...
 
void set_p_sg_init (int i, const Stokhos::EpetraVectorOrthogPoly &p_sg_in)
 Set initial parameter polynomial. More...
 
Teuchos::RCP< const
Stokhos::EpetraVectorOrthogPoly
get_p_sg_init (int l) const
 Return initial SG parameters. More...
 
Teuchos::Array< int > get_p_sg_map_indices () const
 Get indices of SG parameters. More...
 
Teuchos::Array< int > get_g_sg_map_indices () const
 Get indices of SG responses. More...
 
Teuchos::Array< Teuchos::RCP
< const Epetra_Map > > 
get_g_sg_base_maps () const
 Get base maps of SG responses. More...
 
Teuchos::RCP< const
Epetra_BlockMap
get_overlap_stochastic_map () const
 Return overlap stochastic map. More...
 
Teuchos::RCP< const
Epetra_BlockMap
get_x_sg_overlap_map () const
 Return x sg overlap map. More...
 
Teuchos::RCP< const Epetra_Importget_x_sg_importer () const
 Return x sg importer. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_x_sg (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using x map and owned sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_x_sg_overlap (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using x map and overlap sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraMultiVectorOrthogPoly
create_x_mv_sg (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const
 Create vector orthog poly using x map and owned sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraMultiVectorOrthogPoly
create_x_mv_sg_overlap (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const
 Create vector orthog poly using x map and overlap sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_p_sg (int l, Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using p map. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_f_sg (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using f map and owned sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_f_sg_overlap (Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using f map and overlap sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraMultiVectorOrthogPoly
create_f_mv_sg (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const
 Create multi-vector orthog poly using f map and owned sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraMultiVectorOrthogPoly
create_f_mv_sg_overlap (int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const
 Create multi-vector orthog poly using f map and overlap sg map. More...
 
Teuchos::RCP
< Stokhos::EpetraVectorOrthogPoly
create_g_sg (int l, Epetra_DataAccess CV=Copy, const Epetra_Vector *v=NULL) const
 Create vector orthog poly using g map. More...
 
Teuchos::RCP
< Stokhos::EpetraMultiVectorOrthogPoly
create_g_mv_sg (int l, int num_vecs, Epetra_DataAccess CV=Copy, const Epetra_MultiVector *v=NULL) const
 Create multi-vector orthog poly using g map. More...
 

Detailed Description

Nonlinear, stochastic Galerkin ModelEvaluator.

SGModelEvaluator is an implementation of EpetraExt::ModelEvaluator that generates a nonlinear problem from a stochastic Galerkin expansion. 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. For dealing with the W matrix two methods are supported: forming a fully-assembled SG matrix and a "matrix free" method. The choice is selected by setting the "Jacobian Method" parameter of the parameter list supplied to the constructor, which can be either "Fully Assembled" or "Matrix Free". In the first case, the W operator of the underlying model evaluator must be an Epetra_CrsMatrix. In the second case, a preconditioner for the mean block must also be supplied via the "Preconditioner Factory" parameter of this list. This preconditioner factory must implement the Stokhos::PreconditionerFactory interface also supplied in this file. Currently using a preconditioner for the mean is the only option available for preconditioning the SG system when using the matrix-free method.

Definition at line 90 of file Stokhos_SGModelEvaluator.hpp.

Constructor & Destructor Documentation

Stokhos::SGModelEvaluator::SGModelEvaluator ( 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 56 of file Stokhos_SGModelEvaluator.cpp.

Member Function Documentation

Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator::get_x_map ( ) const

Return solution vector map.

Definition at line 264 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator::get_f_map ( ) const

Return residual vector map.

Definition at line 270 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator::get_p_map ( int  l) const

Return parameter vector map.

Definition at line 276 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > Stokhos::SGModelEvaluator::get_g_map ( int  l) const

Return response map.

Definition at line 289 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Teuchos::Array< std::string > > Stokhos::SGModelEvaluator::get_p_names ( int  l) const

Return array of parameter names.

Definition at line 297 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Vector > Stokhos::SGModelEvaluator::get_x_init ( ) const

Return initial solution.

Definition at line 310 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Vector > Stokhos::SGModelEvaluator::get_p_init ( int  l) const

Return initial parameters.

Definition at line 316 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator::create_W ( ) const

Create W = alpha*M + beta*J matrix.

Definition at line 329 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< EpetraExt::ModelEvaluator::Preconditioner > Stokhos::SGModelEvaluator::create_WPrec ( ) const

Create preconditioner operator.

Definition at line 355 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator::create_DgDx_dot_op ( int  j) const

Create SG operator representing dg/dxdot.

Definition at line 422 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator::create_DgDx_op ( int  j) const

Create SG operator representing dg/dx.

Definition at line 369 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator::create_DgDp_op ( int  j,
int  i 
) const

Create SG operator representing dg/dp.

Definition at line 475 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > Stokhos::SGModelEvaluator::create_DfDp_op ( int  i) const

Create SG operator representing df/dp.

Definition at line 553 of file Stokhos_SGModelEvaluator.cpp.

EpetraExt::ModelEvaluator::InArgs Stokhos::SGModelEvaluator::createInArgs ( ) const

Create InArgs.

Definition at line 628 of file Stokhos_SGModelEvaluator.cpp.

EpetraExt::ModelEvaluator::OutArgs Stokhos::SGModelEvaluator::createOutArgs ( ) const

Create OutArgs.

Definition at line 650 of file Stokhos_SGModelEvaluator.cpp.

void Stokhos::SGModelEvaluator::evalModel ( const InArgs &  inArgs,
const OutArgs &  outArgs 
) const

Evaluate model on InArgs.

Definition at line 686 of file Stokhos_SGModelEvaluator.cpp.

void Stokhos::SGModelEvaluator::set_x_sg_init ( const Stokhos::EpetraVectorOrthogPoly x_sg_in)
virtual

Set initial solution polynomial.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1059 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::get_x_sg_init ( ) const
virtual

Return initial SG x.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1066 of file Stokhos_SGModelEvaluator.cpp.

void Stokhos::SGModelEvaluator::set_p_sg_init ( int  i,
const Stokhos::EpetraVectorOrthogPoly p_sg_in 
)
virtual

Set initial parameter polynomial.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1072 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::get_p_sg_init ( int  l) const
virtual

Return initial SG parameters.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1085 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::Array< int > Stokhos::SGModelEvaluator::get_p_sg_map_indices ( ) const
virtual

Get indices of SG parameters.

These indices determine which parameter vectors support SG

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1097 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::Array< int > Stokhos::SGModelEvaluator::get_g_sg_map_indices ( ) const
virtual

Get indices of SG responses.

These indices determine which response vectors support SG

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1103 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::Array< Teuchos::RCP< const Epetra_Map > > Stokhos::SGModelEvaluator::get_g_sg_base_maps ( ) const
virtual

Get base maps of SG responses.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1109 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_BlockMap > Stokhos::SGModelEvaluator::get_overlap_stochastic_map ( ) const
virtual

Return overlap stochastic map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1118 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_BlockMap > Stokhos::SGModelEvaluator::get_x_sg_overlap_map ( ) const
virtual

Return x sg overlap map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1124 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Import > Stokhos::SGModelEvaluator::get_x_sg_importer ( ) const
virtual

Return x sg importer.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1130 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_x_sg ( Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using x map and owned sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1136 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_x_sg_overlap ( Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using x map and overlap sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1151 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraMultiVectorOrthogPoly > Stokhos::SGModelEvaluator::create_x_mv_sg ( int  num_vecs,
Epetra_DataAccess  CV = Copy,
const Epetra_MultiVector v = NULL 
) const
virtual

Create vector orthog poly using x map and owned sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1167 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraMultiVectorOrthogPoly > Stokhos::SGModelEvaluator::create_x_mv_sg_overlap ( int  num_vecs,
Epetra_DataAccess  CV = Copy,
const Epetra_MultiVector v = NULL 
) const
virtual

Create vector orthog poly using x map and overlap sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1183 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_p_sg ( int  l,
Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using p map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1201 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_f_sg ( Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using f map and owned sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1223 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_f_sg_overlap ( Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using f map and overlap sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1238 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraMultiVectorOrthogPoly > Stokhos::SGModelEvaluator::create_f_mv_sg ( int  num_vecs,
Epetra_DataAccess  CV = Copy,
const Epetra_MultiVector v = NULL 
) const
virtual

Create multi-vector orthog poly using f map and owned sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1254 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraMultiVectorOrthogPoly > Stokhos::SGModelEvaluator::create_f_mv_sg_overlap ( int  num_vecs,
Epetra_DataAccess  CV = Copy,
const Epetra_MultiVector v = NULL 
) const
virtual

Create multi-vector orthog poly using f map and overlap sg map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1272 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::create_g_sg ( int  l,
Epetra_DataAccess  CV = Copy,
const Epetra_Vector v = NULL 
) const
virtual

Create vector orthog poly using g map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1290 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraMultiVectorOrthogPoly > Stokhos::SGModelEvaluator::create_g_mv_sg ( int  l,
int  num_vecs,
Epetra_DataAccess  CV = Copy,
const Epetra_MultiVector v = NULL 
) const
virtual

Create multi-vector orthog poly using g map.

Implements Stokhos::SGModelEvaluatorBase.

Definition at line 1314 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< EpetraExt::BlockVector > Stokhos::SGModelEvaluator::import_solution ( const Epetra_Vector x) const

Import parallel solution vector.

Definition at line 1339 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::import_solution_poly ( const Epetra_Vector x) const

Import parallel solution vector.

Definition at line 1348 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< EpetraExt::BlockVector > Stokhos::SGModelEvaluator::export_solution ( const Epetra_Vector x_overlapped) const

Export parallel solution vector.

Definition at line 1360 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< EpetraExt::BlockVector > Stokhos::SGModelEvaluator::import_residual ( const Epetra_Vector f) const

Import parallel residual vector.

Definition at line 1369 of file Stokhos_SGModelEvaluator.cpp.

Teuchos::RCP< EpetraExt::BlockVector > Stokhos::SGModelEvaluator::export_residual ( const Epetra_Vector f_overlapped) const

Export parallel residual vector.

Definition at line 1378 of file Stokhos_SGModelEvaluator.cpp.

Member Data Documentation

Teuchos::RCP<EpetraExt::ModelEvaluator> Stokhos::SGModelEvaluator::me
protected

Underlying model evaluator.

Definition at line 278 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Stokhos::OrthogPolyBasis<int, double> > Stokhos::SGModelEvaluator::sg_basis
protected

Stochastic Galerkin basis.

Definition at line 281 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Stokhos::Quadrature<int,double> > Stokhos::SGModelEvaluator::sg_quad
protected

Stochastic Galerkin quadrature.

Definition at line 284 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Stokhos::OrthogPolyExpansion<int,double> > Stokhos::SGModelEvaluator::sg_exp
protected

Stochastic Galerkin expansion.

Definition at line 287 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Teuchos::ParameterList> Stokhos::SGModelEvaluator::params
protected

Algorithmic parameters.

Definition at line 290 of file Stokhos_SGModelEvaluator.hpp.

unsigned int Stokhos::SGModelEvaluator::num_sg_blocks
protected

Number of stochastic blocks.

Definition at line 293 of file Stokhos_SGModelEvaluator.hpp.

unsigned int Stokhos::SGModelEvaluator::num_W_blocks
protected

Number of W stochastic blocks (may be smaller than num_sg_blocks)

Definition at line 296 of file Stokhos_SGModelEvaluator.hpp.

unsigned int Stokhos::SGModelEvaluator::num_p_blocks
protected

Number of p stochastic blocks (may be smaller than num_sg_blocks)

Definition at line 299 of file Stokhos_SGModelEvaluator.hpp.

bool Stokhos::SGModelEvaluator::supports_x
protected

Whether we support x (and thus f and W)

Definition at line 302 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::x_map
protected

Underlying unknown map.

Definition at line 305 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::f_map
protected

Underlying residual map.

Definition at line 308 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Stokhos::ParallelData> Stokhos::SGModelEvaluator::sg_parallel_data
protected

Parallel SG data.

Definition at line 311 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const EpetraExt::MultiComm> Stokhos::SGModelEvaluator::sg_comm
protected

Parallel SG communicator.

Definition at line 314 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Stokhos::EpetraSparse3Tensor> Stokhos::SGModelEvaluator::epetraCijk
protected

Epetra Cijk.

Definition at line 317 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Stokhos::EpetraSparse3Tensor> Stokhos::SGModelEvaluator::serialCijk
protected

Serial Epetra Cijk for dgdx*.

Definition at line 320 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_BlockMap> Stokhos::SGModelEvaluator::stoch_row_map
protected

Map for stochastic blocks.

Definition at line 323 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_BlockMap> Stokhos::SGModelEvaluator::overlapped_stoch_row_map
protected

Overlapped map for stochastic blocks (local map)

Definition at line 326 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_BlockMap> Stokhos::SGModelEvaluator::overlapped_stoch_p_map
protected

Overlapped map for p stochastic blocks (local map)

Definition at line 329 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::sg_x_map
protected

Block SG unknown map.

Definition at line 332 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::sg_overlapped_x_map
protected

Block SG overlapped unknown map.

Definition at line 335 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::sg_f_map
protected

Block SG residual map.

Definition at line 338 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<const Epetra_Map> Stokhos::SGModelEvaluator::sg_overlapped_f_map
protected

Block SG overlapped residual map.

Definition at line 341 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Epetra_Import> Stokhos::SGModelEvaluator::sg_overlapped_x_importer
protected

Importer from SG to SG-overlapped maps.

Definition at line 344 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Epetra_Export> Stokhos::SGModelEvaluator::sg_overlapped_f_exporter
protected

Exporter from SG-overlapped to SG maps.

Definition at line 347 of file Stokhos_SGModelEvaluator.hpp.

int Stokhos::SGModelEvaluator::num_p
protected

Number of parameter vectors of underlying model evaluator.

Definition at line 350 of file Stokhos_SGModelEvaluator.hpp.

int Stokhos::SGModelEvaluator::num_p_sg
protected

Number of stochastic parameter vectors.

Definition at line 353 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array<int> Stokhos::SGModelEvaluator::sg_p_index_map
protected

Index map between block-p and p_sg maps.

Definition at line 356 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array< Teuchos::RCP<const Epetra_Map> > Stokhos::SGModelEvaluator::sg_p_map
protected

Block SG parameter map.

Definition at line 359 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array< Teuchos::RCP< Teuchos::Array<std::string> > > Stokhos::SGModelEvaluator::sg_p_names
protected

SG coefficient parameter names.

Definition at line 362 of file Stokhos_SGModelEvaluator.hpp.

int Stokhos::SGModelEvaluator::num_g
protected

Number of response vectors of underlying model evaluator.

Definition at line 365 of file Stokhos_SGModelEvaluator.hpp.

int Stokhos::SGModelEvaluator::num_g_sg
protected

Number of stochastic response vectors.

Definition at line 368 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array<int> Stokhos::SGModelEvaluator::sg_g_index_map
protected

Index map between block-g and g_sg maps.

Definition at line 371 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array< Teuchos::RCP<const Epetra_Map> > Stokhos::SGModelEvaluator::sg_g_map
protected

Block SG response map.

Definition at line 374 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::x_dot_sg_blocks
protected

x_dot stochastic Galerkin components

Definition at line 377 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::x_sg_blocks
protected

x stochastic Galerkin components

Definition at line 380 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP< Stokhos::EpetraVectorOrthogPoly > Stokhos::SGModelEvaluator::f_sg_blocks
mutableprotected

f stochastic Galerkin components

Definition at line 383 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP< Stokhos::EpetraOperatorOrthogPoly > Stokhos::SGModelEvaluator::W_sg_blocks
mutableprotected

W stochastic Galerkin components.

Definition at line 386 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Stokhos::EpetraVectorOrthogPoly> Stokhos::SGModelEvaluator::sg_x_init
protected

SG initial x.

Definition at line 389 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::Array< Teuchos::RCP<Stokhos::EpetraVectorOrthogPoly> > Stokhos::SGModelEvaluator::sg_p_init
protected

SG initial p.

Definition at line 392 of file Stokhos_SGModelEvaluator.hpp.

bool Stokhos::SGModelEvaluator::eval_W_with_f
protected

Whether to always evaluate W with f.

Definition at line 395 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Stokhos::SGOperator> Stokhos::SGModelEvaluator::my_W
mutableprotected

W pointer for evaluating W with f.

Definition at line 398 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP<Epetra_Vector> Stokhos::SGModelEvaluator::my_x
mutableprotected

x pointer for evaluating preconditioner

Definition at line 401 of file Stokhos_SGModelEvaluator.hpp.

bool Stokhos::SGModelEvaluator::scaleOP
protected

Definition at line 403 of file Stokhos_SGModelEvaluator.hpp.

Teuchos::RCP< Stokhos::SGPreconditionerFactory > Stokhos::SGModelEvaluator::sg_prec_factory
protected

Preconditioner factory.

Definition at line 406 of file Stokhos_SGModelEvaluator.hpp.


The documentation for this class was generated from the following files: