Stokhos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Typedefs | Enumerations | Functions | Variables
linear2d_diffusion_pce.cpp File Reference
#include "Stokhos_Epetra.hpp"
#include "Stokhos_Sacado.hpp"
#include "Stokhos_Ifpack2.hpp"
#include "twoD_diffusion_problem_tpetra.hpp"
#include "Epetra_SerialComm.h"
#include "Ifpack2_Factory.hpp"
#include "BelosLinearProblem.hpp"
#include "kokkos_pce_specializations.hpp"
#include "BelosPseudoBlockCGSolMgr.hpp"
#include "BelosPseudoBlockGmresSolMgr.hpp"
#include "MatrixMarket_Tpetra.hpp"
#include "BelosBlockGmresSolMgr.hpp"
#include "Teuchos_TimeMonitor.hpp"
#include "Teuchos_CommandLineProcessor.hpp"
#include "linear2d_diffusion_scalar_types.hpp"
#include "Stokhos_MueLu.hpp"
#include "Stokhos_MueLu_QR_Interface_decl.hpp"
#include "Stokhos_MueLu_QR_Interface_def.hpp"
#include "MueLu_SmootherFactory.hpp"
#include "MueLu_TrilinosSmoother.hpp"
#include <BelosXpetraAdapter.hpp>
#include <BelosMueLuAdapter.hpp>
#include "Xpetra_MultiVectorFactory.hpp"
#include "Xpetra_Matrix.hpp"
#include "Xpetra_Map.hpp"
#include "MueLu_Level.hpp"
#include "MueLu_CoupledAggregationFactory.hpp"
#include "MueLu_SaPFactory.hpp"
Include dependency graph for experimental/linear2d_diffusion_pce.cpp:

Go to the source code of this file.

Typedefs

typedef KokkosClassic::DefaultNode::DefaultNodeType Node
 
typedef Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, NodeXpetra_Matrix
 
typedef Xpetra::Map< LocalOrdinal, GlobalOrdinal, NodeXpetra_Map
 

Enumerations

enum  SG_RF { UNIFORM , LOGNORMAL }
 
enum  Krylov_Method { GMRES , CG }
 
enum  Multigrid_Smoother { CHEBYSHEV , SGS }
 
enum  SG_Prec { NONE , MEAN , STOCHASTIC }
 
enum  SG_Div {
  DIRECT , SPD_DIRECT , MEAN_DIV , QUAD ,
  CGD
}
 
enum  SG_DivPrec {
  NO , DIAG , JACOBI , GS ,
  SCHUR
}
 
enum  Schur_option { full , diag }
 
enum  Prec_option { whole , linear }
 

Functions

template<typename ordinal_type , typename value_type , typename Storage >
void returnScalarAsDenseMatrix (Sacado::PCE::OrthogPoly< value_type, Storage > const &inval, Teuchos::RCP< Teuchos::SerialDenseMatrix< ordinal_type, value_type > > &denseEntry, Teuchos::RCP< Stokhos::Sparse3Tensor< ordinal_type, value_type > > const &Cijk)
 
template<typename ordinal_type , typename value_type >
void PrintMatrix (Teuchos::FancyOStream &fos, Teuchos::RCP< Xpetra_Matrix > const &A, Teuchos::RCP< Stokhos::Sparse3Tensor< ordinal_type, value_type > > const &Cijk, Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > const &basis)
 
int main (int argc, char *argv[])
 

Variables

const int num_sg_rf = 2
 
const SG_RF sg_rf_values [] = { UNIFORM, LOGNORMAL }
 
const char * sg_rf_names [] = { "Uniform", "Log-Normal" }
 
const int num_krylov_method = 2
 
const Krylov_Method krylov_method_values [] = { GMRES, CG }
 
const char * krylov_method_names [] = { "GMRES", "CG" }
 
const int num_multigrid_smoother = 2
 
const Multigrid_Smoother multigrid_smoother_values [] = { CHEBYSHEV, SGS }
 
const char * multigrid_smoother_names [] = { "Chebyshev", "SGS" }
 
const int num_sg_prec = 3
 
const SG_Prec sg_prec_values [] = { NONE, MEAN, STOCHASTIC }
 
const char * sg_prec_names []
 
const int num_sg_div = 5
 
const SG_Div sg_div_values [] = { DIRECT, SPD_DIRECT, MEAN_DIV, QUAD, CGD }
 
const char * sg_div_names []
 
const int num_sg_divprec = 5
 
const SG_DivPrec sg_divprec_values [] = {NO, DIAG, JACOBI, GS, SCHUR}
 
const char * sg_divprec_names []
 
const int num_schur_option = 2
 
const Schur_option Schur_option_values [] = { full, diag }
 
const char * schur_option_names [] = { "full", "diag"}
 
const int num_prec_option = 2
 
const Prec_option Prec_option_values [] = { whole, linear }
 
const char * prec_option_names [] = { "full", "linear"}
 

Typedef Documentation

◆ Node

typedef KokkosClassic::DefaultNode::DefaultNodeType Node

Definition at line 79 of file experimental/linear2d_diffusion_pce.cpp.

◆ Xpetra_Matrix

typedef Xpetra::Matrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> Xpetra_Matrix

Definition at line 185 of file experimental/linear2d_diffusion_pce.cpp.

◆ Xpetra_Map

typedef Xpetra::Map<LocalOrdinal, GlobalOrdinal, Node> Xpetra_Map

Definition at line 186 of file experimental/linear2d_diffusion_pce.cpp.

Enumeration Type Documentation

◆ SG_RF

enum SG_RF
Enumerator
UNIFORM 
LOGNORMAL 

Definition at line 93 of file experimental/linear2d_diffusion_pce.cpp.

◆ Krylov_Method

Enumerator
GMRES 
CG 

Definition at line 99 of file experimental/linear2d_diffusion_pce.cpp.

◆ Multigrid_Smoother

Enumerator
CHEBYSHEV 
SGS 

Definition at line 105 of file experimental/linear2d_diffusion_pce.cpp.

◆ SG_Prec

enum SG_Prec
Enumerator
NONE 
MEAN 
STOCHASTIC 

Definition at line 111 of file experimental/linear2d_diffusion_pce.cpp.

◆ SG_Div

enum SG_Div
Enumerator
DIRECT 
SPD_DIRECT 
MEAN_DIV 
QUAD 
CGD 

Definition at line 119 of file experimental/linear2d_diffusion_pce.cpp.

◆ SG_DivPrec

enum SG_DivPrec
Enumerator
NO 
DIAG 
JACOBI 
GS 
SCHUR 

Definition at line 129 of file experimental/linear2d_diffusion_pce.cpp.

◆ Schur_option

Enumerator
full 
diag 

Definition at line 140 of file experimental/linear2d_diffusion_pce.cpp.

◆ Prec_option

Enumerator
whole 
linear 

Definition at line 146 of file experimental/linear2d_diffusion_pce.cpp.

Function Documentation

◆ returnScalarAsDenseMatrix()

template<typename ordinal_type , typename value_type , typename Storage >
void returnScalarAsDenseMatrix ( Sacado::PCE::OrthogPoly< value_type, Storage > const & inval,
Teuchos::RCP< Teuchos::SerialDenseMatrix< ordinal_type, value_type > > & denseEntry,
Teuchos::RCP< Stokhos::Sparse3Tensor< ordinal_type, value_type > > const & Cijk )

Definition at line 156 of file experimental/linear2d_diffusion_pce.cpp.

◆ PrintMatrix()

template<typename ordinal_type , typename value_type >
void PrintMatrix ( Teuchos::FancyOStream & fos,
Teuchos::RCP< Xpetra_Matrix > const & A,
Teuchos::RCP< Stokhos::Sparse3Tensor< ordinal_type, value_type > > const & Cijk,
Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > const & basis )

Definition at line 189 of file experimental/linear2d_diffusion_pce.cpp.

◆ main()

int main ( int argc,
char * argv[] )

Definition at line 220 of file experimental/linear2d_diffusion_pce.cpp.

Variable Documentation

◆ num_sg_rf

const int num_sg_rf = 2

Definition at line 94 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_rf_values

const SG_RF sg_rf_values[] = { UNIFORM, LOGNORMAL }

Definition at line 95 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_rf_names

const char* sg_rf_names[] = { "Uniform", "Log-Normal" }

Definition at line 96 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_krylov_method

const int num_krylov_method = 2

Definition at line 100 of file experimental/linear2d_diffusion_pce.cpp.

◆ krylov_method_values

const Krylov_Method krylov_method_values[] = { GMRES, CG }

Definition at line 101 of file experimental/linear2d_diffusion_pce.cpp.

◆ krylov_method_names

const char* krylov_method_names[] = { "GMRES", "CG" }

Definition at line 102 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_multigrid_smoother

const int num_multigrid_smoother = 2

Definition at line 106 of file experimental/linear2d_diffusion_pce.cpp.

◆ multigrid_smoother_values

const Multigrid_Smoother multigrid_smoother_values[] = { CHEBYSHEV, SGS }

Definition at line 107 of file experimental/linear2d_diffusion_pce.cpp.

◆ multigrid_smoother_names

const char* multigrid_smoother_names[] = { "Chebyshev", "SGS" }

Definition at line 108 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_sg_prec

const int num_sg_prec = 3

Definition at line 112 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_prec_values

const SG_Prec sg_prec_values[] = { NONE, MEAN, STOCHASTIC }

Definition at line 113 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_prec_names

const char* sg_prec_names[]
Initial value:
= { "None",
"Mean-Based",
"Stochastic" }

Definition at line 114 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_sg_div

const int num_sg_div = 5

Definition at line 120 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_div_values

const SG_Div sg_div_values[] = { DIRECT, SPD_DIRECT, MEAN_DIV, QUAD, CGD }

Definition at line 121 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_div_names

const char* sg_div_names[]
Initial value:
= { "Direct",
"SPD-Direct",
"Mean-Based",
"Quadrature",
"CG"}

Definition at line 122 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_sg_divprec

const int num_sg_divprec = 5

Definition at line 130 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_divprec_values

const SG_DivPrec sg_divprec_values[] = {NO, DIAG, JACOBI, GS, SCHUR}

Definition at line 131 of file experimental/linear2d_diffusion_pce.cpp.

◆ sg_divprec_names

const char* sg_divprec_names[]
Initial value:
= { "None",
"Diag",
"Jacobi",
"GS",
"Schur"}

Definition at line 132 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_schur_option

const int num_schur_option = 2

Definition at line 141 of file experimental/linear2d_diffusion_pce.cpp.

◆ Schur_option_values

const Schur_option Schur_option_values[] = { full, diag }

Definition at line 142 of file experimental/linear2d_diffusion_pce.cpp.

◆ schur_option_names

const char* schur_option_names[] = { "full", "diag"}

Definition at line 143 of file experimental/linear2d_diffusion_pce.cpp.

◆ num_prec_option

const int num_prec_option = 2

Definition at line 147 of file experimental/linear2d_diffusion_pce.cpp.

◆ Prec_option_values

const Prec_option Prec_option_values[] = { whole, linear }

Definition at line 148 of file experimental/linear2d_diffusion_pce.cpp.

◆ prec_option_names

const char* prec_option_names[] = { "full", "linear"}

Definition at line 149 of file experimental/linear2d_diffusion_pce.cpp.