Stokhos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Namespaces | Classes | Enumerations | Functions
Stokhos Namespace Reference

Top-level namespace for Stokhos classes and functions. More...

Namespaces

namespace  adapt_utils
 
namespace  detail
 
namespace  details
 
namespace  Impl
 
namespace  KL
 Namespace for analytic KL expansions.
 
namespace  mpl
 

Classes

class  AbstractPreconditionerFactory
 An abstract class to represent a generic preconditioner factory. More...
 
class  AdaptivityManager
 
class  AlgebraicOrthogPolyExpansion
 Orthogonal polynomial expansions limited to algebraic operations. More...
 
class  aligned_allocator
 An aligned STL allocator. More...
 
class  aligned_allocator< const T >
 An aligned STL allocator. More...
 
class  AnisotropicTotalOrderIndexSet
 An anisotropic total order index set. More...
 
class  ApproxGaussSeidelPreconditioner
 A stochastic preconditioner based on applying one iteration of approximate Gauss-Seidel. More...
 
class  ApproxJacobiPreconditioner
 A stochastic preconditioner based on applying two iterations of approximate Jacobi. More...
 
class  ApproxSchurComplementPreconditioner
 A stochastic preconditioner based on applying the approximate Schur complement preconditioner as defined by Sousedik, Ghanem, and Phipps, Numerical Linear Algebra and Applications, 2012. More...
 
class  BasisFactory
 Factory for building multivariate orthogonal polynomial bases. More...
 
class  BasisInteractionGraph
 
class  BlockCrsMatrix
 CRS matrix of dense blocks. More...
 
class  BlockDiagonalOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  BlockMultiply
 
class  BlockMultiply< CooProductTensor< ValueType, Device, Pack > >
 
class  BlockMultiply< CrsProductTensor< ValueType, Device > >
 
class  BlockMultiply< FlatSparse3Tensor< ValueType, Device > >
 
class  BlockMultiply< FlatSparse3Tensor_kji< ValueType, Device > >
 
class  BlockMultiply< LexicographicBlockSparse3Tensor< ValueType, Device > >
 
class  BlockMultiply< LinearSparse3Tensor< ValueType, Device, BlockSize > >
 
class  BlockMultiply< SimpleTiledCrsProductTensor< ValueType, Device > >
 
class  BlockMultiply< StochasticProductTensor< ValueType, TensorType, Device > >
 
class  BlockMultiply< SymmetricDiagonalSpec< Device > >
 
class  BlockMultiply< SymmetricDiagonalSpec< Kokkos::Cuda > >
 
class  BlockMultiply< TiledCrsProductTensor< ValueType, Device > >
 
class  BlockPreconditioner
 
class  CGDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
struct  CijkData
 
class  ClenshawCurtisExponentialGrowthRule
 An exponential growth rule for Clenshaw-Curtis. More...
 
class  ClenshawCurtisLegendreBasis
 Legendre polynomial basis using Clenshaw-Curtis quadrature points. More...
 
class  CompletePolynomialBasis
 Multivariate orthogonal polynomial basis generated from a total-order complete-polynomial tensor product of univariate polynomials. More...
 
class  CompletePolynomialBasisUtils
 Utilities for indexing a multi-variate complete polynomial basis. More...
 
class  ConstantOrthogPolyExpansion
 Orthogonal polynomial expansion class for constant (size 1) expansions. More...
 
class  CooProductTensor
 Sparse product tensor using 'COO'-like storage format. More...
 
class  CooProductTensor< ValueType, ExecutionSpace, false >
 Specialization of CooProductTensor for unpacked (i,j,k) More...
 
class  CooProductTensor< ValueType, ExecutionSpace, true >
 Specialization of CooProductTensor for packed (i,j,k) More...
 
class  CrsMatrix
 CRS matrix.
More...
 
class  CrsProductTensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  DefaultMultiply
 
struct  DefaultPointCompare
 Struct defining default point compare type. More...
 
class  Dense3Tensor
 Data structure storing a dense 3-tensor C(i,j,k). More...
 
class  DenseDirectDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
class  DenseOperator
 
class  DerivBasis
 Abstract base class for multivariate orthogonal polynomials that support computing double and triple products involving derivatives of the basis polynomials. More...
 
class  DerivOrthogPolyExpansion
 Othogonal polynomial expansions based on derivative calculations. More...
 
struct  DeviceConfig
 
struct  DeviceForNode
 Trait class that determines (new) Kokkos execution space type from Kokkos(Classic) Node type. More...
 
struct  DeviceForNode2
 
struct  DeviceForNode2< Kokkos::Compat::KokkosDeviceWrapperNode< Device > >
 
class  DeviceProp
 
class  DiagEpetraOp
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  DiagonalOperator
 
class  DiagPreconditioner
 
class  DiscretizedStieltjesBasis
 Generates three-term recurrence using the Discretized Stieltjes procedure. More...
 
class  DivisionExpansionStrategy
 Strategy interface for computing PCE of a/b. More...
 
struct  ds_array
 Dynamic array allocation class that works for any type. More...
 
struct  ds_array< T, true >
 Dynamic array allocation class that is specialized for scalar i.e., fundamental or built-in types (float, double, etc...). More...
 
class  DynamicStorage
 
class  DynamicStridedStorage
 
class  DynamicThreadedStorage
 Dynamically allocated storage class with striding. More...
 
struct  DynArrayTraits
 Dynamic array allocation class that is specialized for scalar i.e., fundamental or built-in types (float, double, etc...). More...
 
struct  DynArrayTraits< T, device_t, false >
 Dynamic array allocation class that works for any type. More...
 
class  EpetraCrsMatrixCloner
 Cloner for Epetra_CrsMatrix coefficients. More...
 
class  EpetraMultiVectorCloner
 Cloner for Epetra_MultiVector coefficients. More...
 
class  EpetraMultiVectorOperator
 An adaptor that supplies the operator interface to a multi-vector. More...
 
class  EpetraMultiVectorOperatorOrthogPoly
 A container class storing an orthogonal polynomial whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
class  EpetraMultiVectorOrthogPoly
 A container class storing an orthogonal polynomial whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
class  EpetraOperatorCloner
 Cloner for Epetra_Operator coefficients. More...
 
class  EpetraOperatorOrthogPoly
 A container class storing an orthogonal polynomial whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
class  EpetraSparse3Tensor
 
class  EpetraVectorCloner
 Cloner for Epetra_Vector coefficients. More...
 
class  EpetraVectorOrthogPoly
 A container class storing an orthogonal polynomial whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
struct  error_storage_type_is_not_allocateable
 
struct  error_storage_type_is_not_resizeable
 
class  EvenGrowthRule
 A growth rule that always makes the supplied order even. More...
 
class  ExpansionFactory
 Factory for building multivariate expansion strategies. More...
 
struct  FlatLTBSparse3Tensor
 
struct  FlatLTBSparse3TensorNode
 
class  FlatSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  FlatSparse3Tensor_kji
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  FloatingPointLess
 A functor for comparing floating-point numbers to some tolerance. More...
 
class  FullyAssembledOperator
 An Epetra operator representing the block stochastic Galerkin operator generated by fully assembling the matrix. More...
 
class  FullyAssembledPreconditioner
 A stochastic preconditioner based on applying a preconditioner to the fully assembled operator. More...
 
class  GaussPattersonExponentialGrowthRule
 An exponential growth rule for Gauss-Patterson. More...
 
class  GaussPattersonLegendreBasis
 Legendre polynomial basis using Gauss-Patterson quadrature points. More...
 
class  GetMeanValsFunc
 Get mean values matrix for mean-based preconditioning. More...
 
class  GetMeanValsFunc< Kokkos::View< Sacado::MP::Vector< Storage > *, P... > >
 Get mean values matrix for mean-based preconditioning. More...
 
class  GetMeanValsFunc< Kokkos::View< Sacado::UQ::PCE< Storage > *, P... > >
 Get mean values matrix for mean-based preconditioning. More...
 
class  GetScalarMeanValsFunc
 Get mean values matrix for mean-based preconditioning. More...
 
class  GetScalarMeanValsFunc< Kokkos::View< Sacado::MP::Vector< Storage > *, P... > >
 Get mean values matrix for mean-based preconditioning. More...
 
class  GetScalarMeanValsFunc< Kokkos::View< Sacado::UQ::PCE< Storage > *, P... > >
 Get mean values matrix for mean-based preconditioning. More...
 
class  GMRESDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
class  GramSchmidtBasis
 Transforms a non-orthogonal multivariate basis to an orthogonal one using the Gram-Schmit procedure. More...
 
class  GrowthRule
 Interface for abstract growth rules. More...
 
class  GSPreconditioner
 
class  GSReducedPCEBasisBase
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  HermiteBasis
 Hermite polynomial basis. More...
 
class  HouseTriDiagPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  IdentityGrowthRule
 A growth rule that is the identity. More...
 
class  IfpackPreconditionerFactory
 A factory for building Ifpack preconditioners. More...
 
class  IntegralRank
 
class  InterlacedOperator
 An Epetra operator representing the block stochastic Galerkin operator generated by fully assembling the matrix. The ordering of this operator is interlaced. That means that all stochastic degrees of freedom associated with a deterministic degree of freedom are interlaced. The result is a large sparse matrix that is composed of small (relatively) dense blocks. More...
 
class  InversePreconditioner
 
struct  is_power_of_two
 
struct  is_ViewStorage
 
struct  is_ViewStorage< ViewStorage< ordinal_t, value_t, static_length, static_stride, device_t > >
 
struct  IsScalarType
 Base template specification for IsScalarType. More...
 
struct  IsScalarType2
 Base template specification for IsScalarType. More...
 
class  JacobiBasis
 Jacobi polynomial basis. More...
 
class  JacobiPreconditioner
 
class  JacobiTester
 
class  KLMatrixFreeOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  KLReducedMatrixFreeOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  KroneckerProductPreconditioner
 An Epetra operator representing applying the mean in a block stochastic Galerkin expansion. More...
 
class  Lanczos
 Applies Lanczos procedure to a given matrix. More...
 
class  LanczosPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  LanczosProjPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  LegendreBasis
 Legendre polynomial basis. More...
 
class  LexicographicBlockSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
struct  LexicographicTreeBasisNode
 
class  LexographicLess
 A comparison functor implementing a strict weak ordering based lexographic ordering. More...
 
class  LinearGrowthRule
 A linear growth rule. More...
 
class  LinearSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  LTBSparse3Tensor
 Data structure storing a sparse 3-tensor C(i,j,k) in a a tree-based format for lexicographically ordered product bases. More...
 
class  MatrixFreeOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  MatrixMarketWriter
 
class  MatrixMarketWriter< CrsMatrix< MatrixValue, Device, Layout > >
 
class  MeanBasedDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
class  MeanBasedPreconditioner
 A stochastic preconditioner based on applying the inverse of the mean. More...
 
class  MeanBasedTpetraOperator
 
class  MeanMultiply
 
class  MeanMultiply< KokkosSparse::CrsMatrix< const Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
class  MeanMultiply< KokkosSparse::CrsMatrix< const Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > *, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > *, OutputP... > >
 
class  MeanMultiply< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
class  MeanMultiply< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > *, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > *, OutputP... > >
 
struct  MemoryTraits
 Traits class encapsulting memory alignment. More...
 
struct  MemoryTraits< Kokkos::HostSpace >
 Specialization of MemoryTraits for host memory spaces. More...
 
class  MLPreconditionerFactory
 A factory for building ML preconditioners. More...
 
class  MonomialGramSchmidtPCEBasis
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  MonomialProjGramSchmidtPCEBasis
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  MonomialProjGramSchmidtPCEBasis2
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  MonoProjPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  MortonZLess
 A comparison functor implementing a strict weak ordering based Morton Z-ordering. More...
 
class  MPBlockDiagonalPreconditioner
 A multi-point preconditioner based on applying the inverse of the diagonal. More...
 
class  MPInverseModelEvaluator
 Nonlinear, inverse multi-point ModelEvaluator. More...
 
class  MPMeanBasedPreconditioner
 A multi-point preconditioner based on applying the inverse of the mean. More...
 
class  MPModelEvaluator
 Multi-point model evaluator. More...
 
class  MPModelEvaluatorAdapter
 ModelEvaluator adapter that implements the multi-point evaluations through sampling. More...
 
class  MPPreconditioner
 An abstract class to represent a generic stochastic Galerkin preconditioner as an Epetra_Operator. More...
 
class  MPPreconditionerFactory
 Factory for generating stochastic Galerkin preconditioners. More...
 
class  MultiIndex
 A multidimensional index. More...
 
class  Multiply
 
class  Multiply< BlockCrsMatrix< BlockSpec, MatrixValue, Device >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Device >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Device > >
 
class  Multiply< BlockCrsMatrix< BlockSpec, MatrixValue, Kokkos::Cuda >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< CooProductTensor< TensorScalar, Kokkos::Cuda, Pack >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< CrsProductTensor< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< FlatSparse3Tensor< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< FlatSparse3Tensor_kji< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< LexicographicBlockSparse3Tensor< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< LinearSparse3Tensor< TensorScalar, Kokkos::Cuda, BlockSize >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< SimpleTiledCrsProductTensor< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< StochasticProductTensor< TensorScalar, TensorType, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< BlockCrsMatrix< StochasticProductTensor< ValueType, CrsProductTensor< ValueType, Kokkos::OpenMP >, Kokkos::OpenMP >, MatrixValue, Kokkos::OpenMP >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::OpenMP >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::OpenMP > >
 
class  Multiply< BlockCrsMatrix< StochasticProductTensor< ValueType, CrsProductTensor< ValueType, Kokkos::Serial >, Kokkos::Serial >, MatrixValue, Kokkos::Serial >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Serial >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Serial > >
 
class  Multiply< BlockCrsMatrix< StochasticProductTensor< ValueType, CrsProductTensor< ValueType, Kokkos::Threads >, Kokkos::Threads >, MatrixValue, Kokkos::Threads >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Threads >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Kokkos::Threads > >
 
class  Multiply< BlockCrsMatrix< TiledCrsProductTensor< TensorScalar, Kokkos::Cuda >, MatrixScalar, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda >, Kokkos::View< VectorScalar **, Kokkos::LayoutLeft, Kokkos::Cuda > >
 
class  Multiply< CrsMatrix< MatrixValue, Device, Layout >, InputMultiVectorType, OutputMultiVectorType, std::vector< OrdinalType >, IntegralRank< 2 > >
 
class  Multiply< CrsMatrix< MatrixValue, Device, Layout >, InputMultiVectorType, OutputMultiVectorType, void, IntegralRank< 2 > >
 
class  Multiply< CrsMatrix< MatrixValue, Device, Layout >, InputVectorType, OutputVectorType, void, IntegralRank< 1 > >
 
class  Multiply< CrsMatrix< MatrixValue, Device, Layout >, std::vector< InputViewType >, std::vector< OutputViewType >, void, IntegralRank< 1 > >
 
class  Multiply< KokkosSparse::CrsMatrix< const Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
class  Multiply< KokkosSparse::CrsMatrix< const Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > *, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > *, OutputP... > >
 
class  Multiply< KokkosSparse::CrsMatrix< Sacado::MP::Vector< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::MP::Vector< InputStorage > **, InputP... >, Kokkos::View< Sacado::MP::Vector< OutputStorage > **, OutputP... > >
 
class  Multiply< KokkosSparse::CrsMatrix< Sacado::MP::Vector< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::MP::Vector< InputStorage > *, InputP... >, Kokkos::View< Sacado::MP::Vector< OutputStorage > *, OutputP... > >
 
class  Multiply< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
class  Multiply< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< const Sacado::UQ::PCE< InputStorage > *, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > *, OutputP... > >
 
class  MultiplyImpl
 
class  OneDOrthogPolyBasis
 Abstract base class for 1-D orthogonal polynomials. More...
 
class  Operator
 
class  OrthogonalizationFactory
 Encapsulate various orthogonalization (ie QR) methods. More...
 
class  OrthogPolyApprox
 Class to store coefficients of a projection onto an orthogonal polynomial basis. More...
 
class  OrthogPolyBasis
 Abstract base class for multivariate orthogonal polynomials. More...
 
class  OrthogPolyExpansion
 Abstract base class for orthogonal polynomial-based expansions. More...
 
class  OrthogPolyExpansionBase
 Base class for consolidating common expansion implementations. More...
 
class  ParallelData
 
class  PCECovarianceOp
 An Epetra operator representing the covariance operator of a polynomial chaos expansion. More...
 
struct  power_of_two
 
struct  power_of_two< 1, true >
 
struct  power_of_two< 2, true >
 
struct  power_of_two< N, true >
 
class  PreconditionerFactory
 An class for building preconditioners. More...
 
class  ProductBasis
 Abstract base class for multivariate orthogonal polynomials generated from tensor products of univariate polynomials. More...
 
class  ProductBasisUtils
 Utilities for indexing a multi-variate complete polynomial basis. More...
 
class  ProductContainer
 A product (in the mathematical sense) container class whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
class  ProductContainerTraits
 Base traits definition for ProductContainer. More...
 
class  ProductContainerTraits< Epetra_CrsMatrix >
 Specialization of ProductContainerTraits to Epetra_CrsMatrix coefficients. More...
 
class  ProductContainerTraits< Epetra_MultiVector >
 Specialization of ProductContainerTraits to Epetra_MultiVector coefficients. More...
 
class  ProductContainerTraits< Epetra_Operator >
 Specialization of ProductContainerTraits to Epetra_Operator coefficients. More...
 
class  ProductContainerTraits< Epetra_Vector >
 Specialization of ProductContainerTraits to Epetra_Vector coefficients. More...
 
class  ProductEpetraMultiVector
 A container class storing products of Epetra_MultiVector's.
More...
 
class  ProductEpetraMultiVectorOperator
 A container class for products of Epetra_Vector's.
More...
 
class  ProductEpetraOperator
 A container class for products of Epetra_Vector's.
More...
 
class  ProductEpetraVector
 A container class for products of Epetra_Vector's.
More...
 
class  ProductLanczosGramSchmidtPCEBasis
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  ProductLanczosPCEBasis
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  PseudoSpectralOperator
 An operator interface for building pseudo-spectral approximations. More...
 
class  PseudoSpectralOperatorFactory
 Factory for building multivariate quadrature strategies. More...
 
class  PseudoSpectralOrthogPolyExpansion
 Orthogonal polynomial expansions based on numerical quadrature. More...
 
class  QuadOrthogPolyExpansion
 Orthogonal polynomial expansions based on numerical quadrature. More...
 
class  Quadrature
 Abstract base class for quadrature methods. More...
 
class  QuadratureFactory
 Factory for building multivariate quadrature strategies. More...
 
class  QuadraturePseudoSpectralOperator
 An operator for building pseudo-spectral coefficients using an arbitrary quadrature rule. More...
 
class  RCB
 
class  RecurrenceBasis
 Implementation of OneDOrthogPolyBasis based on the general three-term recurrence relationship: More...
 
class  ReducedBasisFactory
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  ReducedPCEBasis
 Abstract base class for reduced basis strategies built from polynomial chaos expansions in some other basis. More...
 
class  ReducedQuadratureFactory
 Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...
 
class  ResponseStatisticModelEvaluator
 ModelEvaluator providing statistic response functions. More...
 
class  RysBasis
 Rys polynomial basis. More...
 
class  SchurPreconditioner
 
class  SGInverseModelEvaluator
 Nonlinear, inverse stochastic Galerkin ModelEvaluator. More...
 
class  SGModelEvaluator
 Nonlinear, stochastic Galerkin ModelEvaluator. More...
 
class  SGModelEvaluator_Adaptive
 Nonlinear, stochastic Galerkin ModelEvaluator that constructs an adapted Jacobian. More...
 
class  SGModelEvaluator_Interlaced
 Nonlinear, stochastic Galerkin ModelEvaluator that constructs a interlaced Jacobian. More...
 
class  SGModelEvaluatorBase
 Base class for stochastic Galerkin model evaluators. More...
 
class  SGOperator
 An abstract class to represent a generic stochastic Galerkin operator as an Epetra_Operator. More...
 
class  SGOperatorFactory
 Factory for generating stochastic Galerkin preconditioners. More...
 
class  SGPreconditioner
 An abstract class to represent a generic stochastic Galerkin preconditioner as an Epetra_Operator. More...
 
class  SGPreconditionerFactory
 Factory for generating stochastic Galerkin preconditioners. More...
 
class  SGQuadModelEvaluator
 ModelEvaluator adaptor that implements the stochastic Galerkin residual and Jacobian computations using quadrature. More...
 
class  SGQuadMPModelEvaluator
 ModelEvaluator adaptor that implements the stochastic Galerkin residual and Jacobian computations using quadrature. More...
 
class  SimpleTiledCrsProductTensor
 
class  SingleColumnMultivectorMultiply
 
class  SmolyakBasis
 Multivariate orthogonal polynomial basis generated from a Smolyak sparse grid. More...
 
class  SmolyakPseudoSpectralOperator
 An operator for building pseudo-spectral coefficients using a sparse Smolyak construction. More...
 
class  SmolyakSparseGridQuadrature
 Defines quadrature for a tensor product basis by Smolyak sparse grids. More...
 
class  Sparse3Tensor
 Data structure storing a sparse 3-tensor C(i,j,k) in a a compressed format. More...
 
struct  SparseArray
 Container for a "sparse" array. More...
 
class  SparseArrayIterator
 Bi-directional iterator for traversing a sparse array. More...
 
class  SparseArrayReverseIterator
 Bi-directional reverse iterator for traversing a sparse array. More...
 
class  SPDDenseDirectDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
class  StandardStorage
 
struct  StaticArrayTraits
 Static array allocation class. More...
 
struct  StaticArrayTraits< T, D, false >
 Static array allocation class that works for any type. More...
 
struct  StaticArrayTraits< T, D, true >
 Static array allocation class that is specialized for scalar i.e., fundamental or built-in types (float, double, etc...). More...
 
class  StaticFixedStandardStorage
 Statically allocated storage class. More...
 
class  StaticFixedStorage
 Statically allocated storage class. More...
 
class  StaticStandardStorage
 Statically allocated storage class. More...
 
class  StaticStorage
 Statically allocated storage class. More...
 
class  StieltjesBasis
 Generates three-term recurrence using the Discretized Stieltjes procedure applied to a functional mapping another basis. More...
 
class  StieltjesGramSchmidtBuilder
 Class for building a reduced-dimension basis and quadrature from a given set of polynomial chaos expansions. First generates 1-D orthogonal bases using the discretized Stieltjes procedure, forms their tensor product, and then orthogonalizes using Gram-Schmidt. More...
 
class  StieltjesPCEBasis
 Generates three-term recurrence using the Discretized Stieltjes procedure applied to a polynomial chaos expansion in another basis. More...
 
class  StochasticProductTensor
 Bases defined by combinatorial product of polynomial bases. More...
 
class  SymmetricDiagonalSpec
 Symmetric diagonal storage for a dense matrix. More...
 
class  TensorProductBasis
 Multivariate orthogonal polynomial basis generated from a tensor product of univariate polynomials. More...
 
class  TensorProductElement
 Container storing a term in a generalized tensor product. More...
 
class  TensorProductIndexSet
 A tensor product index set. More...
 
struct  TensorProductPredicate
 Predicate functor for building sparse triple products. More...
 
class  TensorProductPseudoSpectralOperator
 An operator for building pseudo-spectral coefficients using tensor-product quadrature. More...
 
class  TensorProductQuadrature
 Defines quadrature for a tensor product basis by tensor products of 1-D quadrature rules. More...
 
class  TiledCrsProductTensor
 
class  TinyVec
 
class  TinyVec< ValueType, N, UseIntrinsics, true >
 
class  TotalOrderBasis
 Multivariate orthogonal polynomial basis generated from a total order tensor product of univariate polynomials. More...
 
class  TotalOrderIndexSet
 An isotropic total order index set. More...
 
class  TotalOrderLess
 A comparison functor implementing a strict weak ordering based total-order ordering, recursive on the dimension. More...
 
struct  TotalOrderPredicate
 Predicate functor for building sparse triple products based on total order. More...
 
class  Update
 
class  UserDefinedQuadrature
 
class  VectorOrthogPoly
 A container class storing an orthogonal polynomial whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
More...
 
struct  ViewRank
 
struct  ViewRank< std::vector< T > >
 
class  ViewStorage
 Dynamic storage with view semantics and contiguous access. More...
 
class  WeightedVectorSpace
 

Enumerations

enum  GrowthPolicy { SLOW_GROWTH , MODERATE_GROWTH }
 Enumerated type for determining Smolyak growth policies. More...
 
enum  CijkSymmetryType { CIJK_NO_SYMMETRY , CIJK_TWO_WAY_SYMMETRY , CIJK_SIX_WAY_SYMMETRY }
 

Functions

Teuchos::RCP< const EpetraExt::MultiComm > buildMultiComm (const Epetra_Comm &globalComm, int num_global_stochastic_blocks, int num_spatial_procs=-1)
 
Teuchos::RCP< const Epetra_CommgetSpatialComm (const Teuchos::RCP< const EpetraExt::MultiComm > &globalMultiComm)
 
Teuchos::RCP< const Epetra_CommgetStochasticComm (const Teuchos::RCP< const EpetraExt::MultiComm > &globalMultiComm)
 
template<typename coeff_type >
std::ostream & operator<< (std::ostream &os, const ProductContainer< coeff_type > &vec)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< Epetra_CrsGraphsparse3Tensor2CrsGraph (const Stokhos::OrthogPolyBasis< ordinal_type, value_type > &basis, const Stokhos::Sparse3Tensor< ordinal_type, value_type > &Cijk, const Epetra_Comm &comm)
 Build an Epetra_CrsGraph from a sparse 3 tensor.
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< Epetra_CrsGraphsparse3Tensor2CrsGraph (const Stokhos::Sparse3Tensor< ordinal_type, value_type > &Cijk, const Epetra_BlockMap &map)
 Build an Epetra_CrsGraph from a sparse 3 tensor.
 
template<typename ordinal_type , typename value_type >
void sparse3Tensor2MatrixMarket (const Stokhos::OrthogPolyBasis< ordinal_type, value_type > &basis, const Stokhos::Sparse3Tensor< ordinal_type, value_type > &Cijk, const Epetra_Comm &comm, const std::string &file)
 
template<typename ordinal_type , typename value_type >
void sparse3Tensor2MatrixMarket (const Stokhos::Sparse3Tensor< ordinal_type, value_type > &Cijk, const Epetra_BlockMap &map, const std::string &file)
 
template<typename coeff_type >
std::ostream & operator<< (std::ostream &os, const VectorOrthogPoly< coeff_type > &vec)
 
template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar shfl_down (const Scalar &val, const int &delta, const int &width)
 
template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar shfl_up (const Scalar &val, const int &delta, const int &width)
 
template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar shfl_down (const Scalar &val, const int &delta, const int &width, const int &mask)
 
template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar shfl_up (const Scalar &val, const int &delta, const int &width, const int &mask)
 
KOKKOS_INLINE_FUNCTION void sync_warp (const int &mask)
 
template<class Device , bool Pack, typename OrdinalType , typename ValueType >
CooProductTensor< ValueType, Device, Pack > create_coo_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<typename ValueType , typename Device , bool Pack>
std::ostream & operator<< (std::ostream &os, const CooProductTensor< ValueType, Device, Pack > &tensor)
 
template<typename MatrixValue , typename Layout , typename Device , typename InputMultiVectorType , typename OutputMultiVectorType , typename OrdinalType >
void multiply (const CrsMatrix< MatrixValue, Device, Layout > &A, const InputMultiVectorType &x, OutputMultiVectorType &y, const std::vector< OrdinalType > &col_indices, SingleColumnMultivectorMultiply)
 
template<typename MatrixValue , typename Layout , typename Device , typename InputVectorType , typename OutputVectorType >
void multiply (const CrsMatrix< MatrixValue, Device, Layout > &A, const std::vector< InputVectorType > &x, std::vector< OutputVectorType > &y, SingleColumnMultivectorMultiply)
 
template<class Device , typename OrdinalType , typename ValueType >
CrsProductTensor< ValueType, Device > create_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType , class Memory >
CrsProductTensor< ValueType, Device, Memory > create_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType >
CrsProductTensor< ValueType, Device > create_mean_based_product_tensor ()
 
template<class Device , typename OrdinalType , typename ValueType , class Memory >
CrsProductTensor< ValueType, Device, Memory > create_mean_based_product_tensor ()
 
template<class ValueType , class Device , class Memory >
CrsProductTensor< ValueType, Device, Memory >::HostMirror create_mirror_view (const CrsProductTensor< ValueType, Device, Memory > &src)
 
template<class ValueType , class DstDevice , class DstMemory , class SrcDevice , class SrcMemory >
void deep_copy (const CrsProductTensor< ValueType, DstDevice, DstMemory > &dst, const CrsProductTensor< ValueType, SrcDevice, SrcMemory > &src)
 
template<class Device , typename OrdinalType , typename ValueType >
FlatSparse3Tensor< ValueType, Device > create_flat_sparse_3_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType >
FlatSparse3Tensor_kji< ValueType, Device > create_flat_sparse_3_tensor_kji (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType >
LexicographicBlockSparse3Tensor< ValueType, Device > create_lexicographic_block_sparse_3_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::LTBSparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType , int BlockSize>
LinearSparse3Tensor< ValueType, Device, BlockSize > create_linear_sparse_3_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params)
 
template<typename MatrixType >
void write_matrix_market (const MatrixType &A, const std::string &filename)
 
template<typename MatrixType , typename InputVectorType , typename OutputVectorType >
void multiply (const MatrixType &A, const InputVectorType &x, OutputVectorType &y)
 
template<typename MatrixType , typename InputVectorType , typename OutputVectorType >
void multiply (const MatrixType &A, const InputVectorType &x, OutputVectorType &y, DefaultMultiply tag)
 
template<typename MatrixType , typename InputVectorType , typename OutputVectorType , typename ColumnIndicesType >
void multiply (const MatrixType &A, const InputVectorType &x, OutputVectorType &y, const ColumnIndicesType &col)
 
template<typename MatrixType , typename InputVectorType , typename OutputVectorType , typename ColumnIndicesType >
void multiply (const MatrixType &A, const InputVectorType &x, OutputVectorType &y, const ColumnIndicesType &col, DefaultMultiply tag)
 
template<class Device , typename OrdinalType , typename ValueType >
SimpleTiledCrsProductTensor< ValueType, Device > create_simple_tiled_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params)
 
template<typename TensorType , typename OrdinalType , typename ValueType , typename CijkType >
StochasticProductTensor< ValueType, TensorType, typename TensorType::execution_space > create_stochastic_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const CijkType &Cijk, const Teuchos::ParameterList &params=Teuchos::ParameterList())
 
template<class Device , typename OrdinalType , typename ValueType >
TiledCrsProductTensor< ValueType, Device > create_tiled_product_tensor (const Stokhos::ProductBasis< OrdinalType, ValueType > &basis, const Stokhos::Sparse3Tensor< OrdinalType, ValueType > &Cijk, const Teuchos::ParameterList &params)
 
template<typename ValueType , typename VectorType >
void update (const ValueType &alpha, VectorType &x, const ValueType &beta, const VectorType &y)
 
template<typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_cijk_crs_graph (const CijkType &cijk_dev, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, const size_t matrix_pce_size)
 
template<typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_pce_graph (const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &graph, const CijkType &cijk, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_domain_map, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_range_map, Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &cijk_graph, const size_t matrix_pce_size)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (const Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (const Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (const Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec_const, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (const Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsMatrix< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_matrix (const Tpetra::CrsMatrix< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &mat, const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_graph, const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &cijk_graph, const CijkType &cijk_dev)
 
template<typename T , typename U >
bool operator== (const aligned_allocator< T > &, const aligned_allocator< U > &)
 
template<typename T , typename U >
bool operator!= (const aligned_allocator< T > &, const aligned_allocator< U > &)
 
template<typename Scalar , typename LO , typename GO , typename N >
Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LO, GO, N > > build_mean_matrix (const Tpetra::CrsMatrix< Scalar, LO, GO, N > &A)
 
template<typename Scalar , typename LO , typename GO , typename N >
Teuchos::RCP< Tpetra::CrsMatrix< typename Scalar::value_type, LO, GO, N > > build_mean_scalar_matrix (const Tpetra::CrsMatrix< Scalar, LO, GO, N > &A)
 
template<typename DstView , typename SrcView >
void copy_pce_to_scalar (const DstView &dst, const SrcView &src)
 
template<typename DstView , typename SrcView >
void copy_scalar_to_pce (const DstView &dst, const SrcView &src)
 
template<typename Matrix , typename Vector , typename Ordinal >
bool CG_Solve (const Matrix &A, Vector &x, const Vector &b, typename Vector::mag_type tol, Ordinal max_its, std::ostream *out=0)
 
template<typename Matrix , typename Vector , typename Prec , typename Ordinal >
bool PCG_Solve (const Matrix &A, Vector &x, const Vector &b, const Prec &M, typename Vector::mag_type tol, Ordinal max_its, std::ostream *out=0)
 
template<typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > create_flat_map (const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > &map, const LocalOrdinal block_size)
 
template<typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > create_flat_mp_graph (const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > &graph, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_domain_map, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_range_map, const LocalOrdinal block_size)
 
template<typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_mp_graph (const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &graph, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_domain_map, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_range_map, const LocalOrdinal block_size)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec_const, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (const Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec_const, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (const Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_vector_view (Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &vec, Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > create_flat_vector_view (Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > &vec, const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > &flat_map)
 
template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::CrsMatrix< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > create_flat_matrix (const Tpetra::CrsMatrix< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > &mat, const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &flat_graph, const LocalOrdinal block_size)
 
template<typename ordinal_type , typename value_type >
std::ostream & operator<< (std::ostream &os, const Dense3Tensor< ordinal_type, value_type > &Cijk)
 
template<typename ordinal_type >
Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > build_lexicographic_basis_tree (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const ordinal_type total_order, const ordinal_type index_begin=ordinal_type(0), const ordinal_type order_sum=ordinal_type(0), const Stokhos::MultiIndex< ordinal_type > &term_prefix=Stokhos::MultiIndex< ordinal_type >())
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor< ordinal_type, value_type > > computeTripleProductTensorLTB (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename LTBSparse3Tensor< ordinal_type, value_type >::CijkNode > computeCijkLTBNode (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const Teuchos::ArrayView< const Teuchos::RCP< Sparse3Tensor< ordinal_type, value_type > > > &Cijk_1d, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &i_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &j_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &k_ltb, const ordinal_type total_order, const bool symmetric, const ordinal_type sum_i=ordinal_type(0), const ordinal_type sum_j=ordinal_type(0), const ordinal_type sum_k=ordinal_type(0), const value_type cijk_base=value_type(1))
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor< ordinal_type, value_type > > computeTripleProductTensorLTBBlockLeaf (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename LTBSparse3Tensor< ordinal_type, value_type >::CijkNode > computeCijkLTBNodeBlockLeaf (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const Teuchos::ArrayView< const Teuchos::RCP< Dense3Tensor< ordinal_type, value_type > > > &Cijk_1d, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &i_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &j_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &k_ltb, const ordinal_type total_order, const bool symmetric, const ordinal_type sum_i=ordinal_type(0), const ordinal_type sum_j=ordinal_type(0), const ordinal_type sum_k=ordinal_type(0), const value_type cijk_base=value_type(1), const bool parent_j_equals_k=true)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< FlatLTBSparse3Tensor< ordinal_type, value_type > > computeFlatTripleProductTensorLTB (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<int max_size, typename ordinal_type , typename value_type >
void flatLTB3TensorMultiply (OrthogPolyApprox< ordinal_type, value_type > &c, const OrthogPolyApprox< ordinal_type, value_type > &a, const OrthogPolyApprox< ordinal_type, value_type > &b, const FlatLTBSparse3Tensor< ordinal_type, value_type > &cijk)
 
template<typename ordinal_type , typename value_type >
std::ostream & operator<< (std::ostream &os, const OneDOrthogPolyBasis< ordinal_type, value_type > &b)
 Print basis to stream os.
 
template<typename ordinal_type , typename value_type , typename node_type >
std::ostream & operator<< (std::ostream &os, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)
 Prints the array of coefficients (more compact than print())
 
template<typename ordinal_type , typename value_type >
std::ostream & operator<< (std::ostream &os, const OrthogPolyBasis< ordinal_type, value_type > &b)
 Print basis to stream os.
 
template<typename ordinal_type >
ordinal_type n_choose_k (const ordinal_type &n, const ordinal_type &k)
 Compute bionomial coefficient (n ; k) = n!/( k! (n-k)! )
 
template<typename ordinal_type >
std::ostream & operator<< (std::ostream &os, const MultiIndex< ordinal_type > &m)
 
template<typename ordinal_type , typename element_type >
std::ostream & operator<< (std::ostream &os, const TensorProductElement< ordinal_type, element_type > &m)
 
template<typename ordinal_type >
ordinal_type totalOrderMapping (const Stokhos::MultiIndex< ordinal_type > &index)
 
template<typename ordinal_type >
ordinal_type lexicographicMapping (const Stokhos::MultiIndex< ordinal_type > &index, ordinal_type max_order)
 
template<typename ordinal_type , typename value_type >
std::ostream & operator<< (std::ostream &os, const Quadrature< ordinal_type, value_type > &quad)
 Print quadrature object to stream.
 
template<typename ordinal_type , typename scalar_type >
void print_matlab (std::ostream &os, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A)
 
template<typename ordinal_type , typename scalar_type >
scalar_type vec_norm_inf (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A)
 Vector-infinity norm of a matrix.
 
template<typename ordinal_type , typename scalar_type >
void QR_CGS (ordinal_type k, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute thin QR using classical Gram-Schmidt.
 
template<typename ordinal_type , typename scalar_type >
void QR_MGS (ordinal_type k, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute thin QR using modified Gram-Schmidt.
 
template<typename ordinal_type , typename scalar_type >
void QR_MGS2 (ordinal_type k, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute thin QR using modified Gram-Schmidt with reorthogonalization.
 
template<typename ordinal_type , typename scalar_type >
void QR_Householder (ordinal_type k, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute thin QR using Householder reflections.
 
template<typename ordinal_type , typename scalar_type >
void CPQR_Householder3 (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R, Teuchos::Array< ordinal_type > &piv)
 Compute column-pivoted QR using Householder reflections.
 
template<typename ordinal_type , typename scalar_type >
ordinal_type CPQR_Householder_threshold (const scalar_type &rank_threshold, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R, Teuchos::Array< ordinal_type > &piv)
 Compute column-pivoted QR using Householder reflections.
 
template<typename ordinal_type , typename scalar_type >
ordinal_type CPQR_MGS_threshold (const scalar_type &rank_threshold, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R, Teuchos::Array< ordinal_type > &piv)
 Compute column-pivoted QR using modified Gram-Schmidt.
 
template<typename ordinal_type , typename scalar_type >
ordinal_type CPQR_MGS_reorthog_threshold (const scalar_type &rank_threshold, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::Array< scalar_type > &w, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R, Teuchos::Array< ordinal_type > &piv)
 Compute column-pivoted QR using modified Gram-Schmidt and reorthogonalization.
 
template<typename ordinal_type , typename scalar_type >
scalar_type cond_R (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute condition number of upper-triangular R.
 
template<typename ordinal_type , typename scalar_type >
scalar_type weightedQROrthogonalizationError (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, const Teuchos::Array< scalar_type > &w)
 Compute weighted QR orthogonalization error.
 
template<typename ordinal_type , typename scalar_type >
scalar_type QROrthogonalizationError (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q)
 Compute QR orthogonalization error.
 
template<typename ordinal_type , typename scalar_type >
scalar_type residualQRError (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R)
 Compute QR residual error.
 
template<typename ordinal_type , typename scalar_type >
scalar_type residualCPQRError (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &R, const Teuchos::Array< ordinal_type > &piv)
 Compute column-pivoted QR residual error.
 
template<typename ordinal_type , typename scalar_type >
void svd (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, Teuchos::Array< scalar_type > &s, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &U, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Vt)
 Compute SVD of matrix.
 
template<typename ordinal_type , typename scalar_type >
ordinal_type svd_threshold (const scalar_type &rank_threshold, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &A, Teuchos::Array< scalar_type > &s, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &U, Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Vt)
 
template<typename ordinal_type , typename scalar_type >
Teuchos::ArrayRCP< CijkData< ordinal_type, scalar_type > > build_cijk_coordinate_list (const Sparse3Tensor< ordinal_type, scalar_type > &Cijk, CijkSymmetryType symmetry_type)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< Sparse3Tensor< ordinal_type, value_type > > computeTripleProductTensorLTO (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<class PCEType , class OrdinalType , class ValueType >
bool comparePCEs (const PCEType &a1, const std::string &a1_name, const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > &a2, const std::string &a2_name, const ValueType &rel_tol, const ValueType &abs_tol, Teuchos::FancyOStream &out)
 
template<class OrdinalType , class ValueType >
bool comparePCEs (const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > &a1, const std::string &a1_name, const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > &a2, const std::string &a2_name, const ValueType &rel_tol, const ValueType &abs_tol, Teuchos::FancyOStream &out)
 
template<class ValueType >
bool compareValues (const ValueType &a1, const std::string &a1_name, const ValueType &a2, const std::string &a2_name, const ValueType &rel_tol, const ValueType &abs_tol, Teuchos::FancyOStream &out)
 
template<class ValueType , class VectorType1 , class VectorType2 >
bool compareVecs (const VectorType1 &a1, const std::string &a1_name, const VectorType2 &a2, const std::string &a2_name, const ValueType &rel_tol, const ValueType &abs_tol, Teuchos::FancyOStream &out)
 
template<class Array1 , class Array2 , class ValueType >
bool compareArrays (const Array1 &a1, const std::string &a1_name, const Array2 &a2, const std::string &a2_name, const ValueType &rel_tol, const ValueType &abs_tol, Teuchos::FancyOStream &out)
 
template<class ordinal_type , class scalar_type >
bool compareSDM (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &a1, const std::string &a1_name, const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &a2, const std::string &a2_name, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 
template<class ordinal_type , class scalar_type >
bool compareSparse3Tensor (const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > &Cijk1, const std::string &cijk1_name, const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > &Cijk2, const std::string &cijk2_name, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 
template<class ordinal_type , class scalar_type >
bool testSparse3Tensor (const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > &Cijk, const Stokhos::ProductBasis< ordinal_type, scalar_type > &basis, const scalar_type &sparse_tol, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out, bool linear=false)
 
template<typename operator_type1 , typename operator_type2 , typename scalar_type >
bool testPseudoSpectralPoints (const operator_type1 &op1, const operator_type2 &op2, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 
template<typename operator_type1 , typename operator_type2 , typename func_type1 , typename func_type2 , typename scalar_type >
bool testPseudoSpectralApply (const operator_type1 &op1, const operator_type2 &op2, const func_type1 &func1, const func_type2 &func2, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 
template<typename operator_type1 , typename operator_type2 , typename func_type1 , typename func_type2 , typename scalar_type >
bool testPseudoSpectralApplyTrans (const operator_type1 &op1, const operator_type2 &op2, const func_type1 &func1, const func_type2 &func2, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 
template<typename basis_type , typename operator_type , typename scalar_type >
bool testPseudoSpectralDiscreteOrthogonality (const basis_type &basis, const operator_type &op, const scalar_type &rel_tol, const scalar_type &abs_tol, Teuchos::FancyOStream &out)
 

Detailed Description

Top-level namespace for Stokhos classes and functions.

Enumeration Type Documentation

◆ GrowthPolicy

Enumerated type for determining Smolyak growth policies.

Enumerator
SLOW_GROWTH 
MODERATE_GROWTH 

Definition at line 50 of file Stokhos_RecurrenceBasis.hpp.

◆ CijkSymmetryType

Enumerator
CIJK_NO_SYMMETRY 
CIJK_TWO_WAY_SYMMETRY 
CIJK_SIX_WAY_SYMMETRY 

Definition at line 246 of file Stokhos_Sparse3TensorPartition.hpp.

Function Documentation

◆ buildMultiComm()

Teuchos::RCP< const EpetraExt::MultiComm > Stokhos::buildMultiComm ( const Epetra_Comm & globalComm,
int num_global_stochastic_blocks,
int num_spatial_procs = -1 )

Definition at line 115 of file Stokhos_ParallelData.cpp.

◆ getSpatialComm()

Teuchos::RCP< const Epetra_Comm > Stokhos::getSpatialComm ( const Teuchos::RCP< const EpetraExt::MultiComm > & globalMultiComm)

Definition at line 143 of file Stokhos_ParallelData.cpp.

◆ getStochasticComm()

Teuchos::RCP< const Epetra_Comm > Stokhos::getStochasticComm ( const Teuchos::RCP< const EpetraExt::MultiComm > & globalMultiComm)

Definition at line 150 of file Stokhos_ParallelData.cpp.

◆ operator<<() [1/10]

template<typename coeff_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const ProductContainer< coeff_type > & vec )

Definition at line 184 of file Stokhos_ProductContainer.hpp.

◆ sparse3Tensor2CrsGraph() [1/2]

template<typename ordinal_type , typename value_type >
Teuchos::RCP< Epetra_CrsGraph > Stokhos::sparse3Tensor2CrsGraph ( const Stokhos::OrthogPolyBasis< ordinal_type, value_type > & basis,
const Stokhos::Sparse3Tensor< ordinal_type, value_type > & Cijk,
const Epetra_Comm & comm )

Build an Epetra_CrsGraph from a sparse 3 tensor.

Builds a sparse graph from a sparse 3 tensor by summing over the third index. This graph then represents the sparsity pattern of the stochastic part of the block stochastic Galerkin operator. Redistributing the graph should then provide a suitable parallel distribution for block stochastic Galerkin linear solves.

Definition at line 67 of file Stokhos_Sparse3TensorUtilities.hpp.

◆ sparse3Tensor2CrsGraph() [2/2]

template<typename ordinal_type , typename value_type >
Teuchos::RCP< Epetra_CrsGraph > Stokhos::sparse3Tensor2CrsGraph ( const Stokhos::Sparse3Tensor< ordinal_type, value_type > & Cijk,
const Epetra_BlockMap & map )

Build an Epetra_CrsGraph from a sparse 3 tensor.

Builds a sparse graph from a sparse 3 tensor by summing over the third index. This graph then represents the sparsity pattern of the stochastic part of the block stochastic Galerkin operator. Redistributing the graph should then provide a suitable parallel distribution for block stochastic Galerkin linear solves.

Definition at line 115 of file Stokhos_Sparse3TensorUtilities.hpp.

◆ sparse3Tensor2MatrixMarket() [1/2]

template<typename ordinal_type , typename value_type >
void Stokhos::sparse3Tensor2MatrixMarket ( const Stokhos::OrthogPolyBasis< ordinal_type, value_type > & basis,
const Stokhos::Sparse3Tensor< ordinal_type, value_type > & Cijk,
const Epetra_Comm & comm,
const std::string & file )

Definition at line 148 of file Stokhos_Sparse3TensorUtilities.hpp.

◆ sparse3Tensor2MatrixMarket() [2/2]

template<typename ordinal_type , typename value_type >
void Stokhos::sparse3Tensor2MatrixMarket ( const Stokhos::Sparse3Tensor< ordinal_type, value_type > & Cijk,
const Epetra_BlockMap & map,
const std::string & file )

Definition at line 164 of file Stokhos_Sparse3TensorUtilities.hpp.

◆ operator<<() [2/10]

template<typename coeff_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const VectorOrthogPoly< coeff_type > & vec )

Definition at line 153 of file Stokhos_VectorOrthogPoly.hpp.

◆ shfl_down() [1/2]

template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar Stokhos::shfl_down ( const Scalar & val,
const int & delta,
const int & width )

Definition at line 61 of file Stokhos_Cuda_WarpShuffle.hpp.

◆ shfl_up() [1/2]

template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar Stokhos::shfl_up ( const Scalar & val,
const int & delta,
const int & width )

Definition at line 67 of file Stokhos_Cuda_WarpShuffle.hpp.

◆ shfl_down() [2/2]

template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar Stokhos::shfl_down ( const Scalar & val,
const int & delta,
const int & width,
const int & mask )

Definition at line 73 of file Stokhos_Cuda_WarpShuffle.hpp.

◆ shfl_up() [2/2]

template<typename Scalar >
KOKKOS_INLINE_FUNCTION Scalar Stokhos::shfl_up ( const Scalar & val,
const int & delta,
const int & width,
const int & mask )

Definition at line 87 of file Stokhos_Cuda_WarpShuffle.hpp.

◆ sync_warp()

KOKKOS_INLINE_FUNCTION void Stokhos::sync_warp ( const int & mask)

Definition at line 100 of file Stokhos_Cuda_WarpShuffle.hpp.

◆ create_coo_product_tensor()

template<class Device , bool Pack, typename OrdinalType , typename ValueType >
CooProductTensor< ValueType, Device, Pack > Stokhos::create_coo_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 472 of file Stokhos_CooProductTensor.hpp.

◆ operator<<() [3/10]

template<typename ValueType , typename Device , bool Pack>
std::ostream & Stokhos::operator<< ( std::ostream & os,
const CooProductTensor< ValueType, Device, Pack > & tensor )

Definition at line 482 of file Stokhos_CooProductTensor.hpp.

◆ multiply() [1/6]

template<typename MatrixValue , typename Layout , typename Device , typename InputMultiVectorType , typename OutputMultiVectorType , typename OrdinalType >
void Stokhos::multiply ( const CrsMatrix< MatrixValue, Device, Layout > & A,
const InputMultiVectorType & x,
OutputMultiVectorType & y,
const std::vector< OrdinalType > & col_indices,
SingleColumnMultivectorMultiply  )

Definition at line 621 of file Stokhos_CrsMatrix.hpp.

◆ multiply() [2/6]

template<typename MatrixValue , typename Layout , typename Device , typename InputVectorType , typename OutputVectorType >
void Stokhos::multiply ( const CrsMatrix< MatrixValue, Device, Layout > & A,
const std::vector< InputVectorType > & x,
std::vector< OutputVectorType > & y,
SingleColumnMultivectorMultiply  )

Definition at line 646 of file Stokhos_CrsMatrix.hpp.

◆ create_product_tensor() [1/2]

template<class Device , typename OrdinalType , typename ValueType >
CrsProductTensor< ValueType, Device > Stokhos::create_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 514 of file Stokhos_CrsProductTensor.hpp.

◆ create_product_tensor() [2/2]

template<class Device , typename OrdinalType , typename ValueType , class Memory >
CrsProductTensor< ValueType, Device, Memory > Stokhos::create_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 525 of file Stokhos_CrsProductTensor.hpp.

◆ create_mean_based_product_tensor() [1/2]

template<class Device , typename OrdinalType , typename ValueType >
CrsProductTensor< ValueType, Device > Stokhos::create_mean_based_product_tensor ( )

Definition at line 536 of file Stokhos_CrsProductTensor.hpp.

◆ create_mean_based_product_tensor() [2/2]

template<class Device , typename OrdinalType , typename ValueType , class Memory >
CrsProductTensor< ValueType, Device, Memory > Stokhos::create_mean_based_product_tensor ( )

Definition at line 544 of file Stokhos_CrsProductTensor.hpp.

◆ create_mirror_view()

template<class ValueType , class Device , class Memory >
CrsProductTensor< ValueType, Device, Memory >::HostMirror Stokhos::create_mirror_view ( const CrsProductTensor< ValueType, Device, Memory > & src)
inline

Definition at line 552 of file Stokhos_CrsProductTensor.hpp.

◆ deep_copy()

template<class ValueType , class DstDevice , class DstMemory , class SrcDevice , class SrcMemory >
void Stokhos::deep_copy ( const CrsProductTensor< ValueType, DstDevice, DstMemory > & dst,
const CrsProductTensor< ValueType, SrcDevice, SrcMemory > & src )

Definition at line 561 of file Stokhos_CrsProductTensor.hpp.

◆ create_flat_sparse_3_tensor()

template<class Device , typename OrdinalType , typename ValueType >
FlatSparse3Tensor< ValueType, Device > Stokhos::create_flat_sparse_3_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 340 of file Stokhos_FlatSparse3Tensor.hpp.

◆ create_flat_sparse_3_tensor_kji()

template<class Device , typename OrdinalType , typename ValueType >
FlatSparse3Tensor_kji< ValueType, Device > Stokhos::create_flat_sparse_3_tensor_kji ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 356 of file Stokhos_FlatSparse3Tensor_kji.hpp.

◆ create_lexicographic_block_sparse_3_tensor()

template<class Device , typename OrdinalType , typename ValueType >
LexicographicBlockSparse3Tensor< ValueType, Device > Stokhos::create_lexicographic_block_sparse_3_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::LTBSparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 284 of file Stokhos_LexicographicBlockSparse3Tensor.hpp.

◆ create_linear_sparse_3_tensor()

template<class Device , typename OrdinalType , typename ValueType , int BlockSize>
LinearSparse3Tensor< ValueType, Device, BlockSize > Stokhos::create_linear_sparse_3_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params )

Definition at line 196 of file Stokhos_LinearSparse3Tensor.hpp.

◆ write_matrix_market()

template<typename MatrixType >
void Stokhos::write_matrix_market ( const MatrixType & A,
const std::string & filename )

Definition at line 50 of file Stokhos_MatrixMarket.hpp.

◆ multiply() [3/6]

template<typename MatrixType , typename InputVectorType , typename OutputVectorType >
void Stokhos::multiply ( const MatrixType & A,
const InputVectorType & x,
OutputVectorType & y )

Definition at line 101 of file Stokhos_Multiply.hpp.

◆ multiply() [4/6]

template<typename MatrixType , typename InputVectorType , typename OutputVectorType >
void Stokhos::multiply ( const MatrixType & A,
const InputVectorType & x,
OutputVectorType & y,
DefaultMultiply tag )

Definition at line 136 of file Stokhos_Multiply.hpp.

◆ multiply() [5/6]

template<typename MatrixType , typename InputVectorType , typename OutputVectorType , typename ColumnIndicesType >
void Stokhos::multiply ( const MatrixType & A,
const InputVectorType & x,
OutputVectorType & y,
const ColumnIndicesType & col )

Definition at line 153 of file Stokhos_Multiply.hpp.

◆ multiply() [6/6]

template<typename MatrixType , typename InputVectorType , typename OutputVectorType , typename ColumnIndicesType >
void Stokhos::multiply ( const MatrixType & A,
const InputVectorType & x,
OutputVectorType & y,
const ColumnIndicesType & col,
DefaultMultiply tag )

Definition at line 165 of file Stokhos_Multiply.hpp.

◆ create_simple_tiled_product_tensor()

template<class Device , typename OrdinalType , typename ValueType >
SimpleTiledCrsProductTensor< ValueType, Device > Stokhos::create_simple_tiled_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params )

Definition at line 728 of file Stokhos_SimpleTiledCrsProductTensor.hpp.

◆ create_stochastic_product_tensor()

template<typename TensorType , typename OrdinalType , typename ValueType , typename CijkType >
StochasticProductTensor< ValueType, TensorType, typename TensorType::execution_space > Stokhos::create_stochastic_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const CijkType & Cijk,
const Teuchos::ParameterList & params = Teuchos::ParameterList() )

Definition at line 220 of file Stokhos_StochasticProductTensor.hpp.

◆ create_tiled_product_tensor()

template<class Device , typename OrdinalType , typename ValueType >
TiledCrsProductTensor< ValueType, Device > Stokhos::create_tiled_product_tensor ( const Stokhos::ProductBasis< OrdinalType, ValueType > & basis,
const Stokhos::Sparse3Tensor< OrdinalType, ValueType > & Cijk,
const Teuchos::ParameterList & params )

Definition at line 441 of file Stokhos_TiledCrsProductTensor.hpp.

◆ update()

template<typename ValueType , typename VectorType >
void Stokhos::update ( const ValueType & alpha,
VectorType & x,
const ValueType & beta,
const VectorType & y )

Definition at line 87 of file Stokhos_Update.hpp.

◆ create_cijk_crs_graph()

template<typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_cijk_crs_graph ( const CijkType & cijk_dev,
const Teuchos::RCP< const Teuchos::Comm< int > > & comm,
const size_t matrix_pce_size )

Definition at line 60 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_pce_graph()

template<typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_pce_graph ( const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & graph,
const CijkType & cijk,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_domain_map,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_range_map,
Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & cijk_graph,
const size_t matrix_pce_size )

Definition at line 124 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [1/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( const Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 238 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [2/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 275 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [3/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( const Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 306 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [4/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( Tpetra::MultiVector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 330 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [5/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( const Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec_const,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 353 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [6/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( const Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 373 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [7/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 396 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_vector_view() [8/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( Tpetra::Vector< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 416 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ create_flat_matrix() [1/2]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device , typename CijkType >
Teuchos::RCP< Tpetra::CrsMatrix< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_matrix ( const Tpetra::CrsMatrix< Sacado::UQ::PCE< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & mat,
const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_graph,
const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & cijk_graph,
const CijkType & cijk_dev )

Definition at line 439 of file Stokhos_Tpetra_Utilities_UQ_PCE.hpp.

◆ operator==()

template<typename T , typename U >
bool Stokhos::operator== ( const aligned_allocator< T > & ,
const aligned_allocator< U > &  )
inline

Definition at line 245 of file Stokhos_MemoryTraits.hpp.

◆ operator!=()

template<typename T , typename U >
bool Stokhos::operator!= ( const aligned_allocator< T > & ,
const aligned_allocator< U > &  )
inline

Definition at line 250 of file Stokhos_MemoryTraits.hpp.

◆ build_mean_matrix()

template<typename Scalar , typename LO , typename GO , typename N >
Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LO, GO, N > > Stokhos::build_mean_matrix ( const Tpetra::CrsMatrix< Scalar, LO, GO, N > & A)

Definition at line 239 of file Stokhos_Tpetra_Utilities.hpp.

◆ build_mean_scalar_matrix()

template<typename Scalar , typename LO , typename GO , typename N >
Teuchos::RCP< Tpetra::CrsMatrix< typename Scalar::value_type, LO, GO, N > > Stokhos::build_mean_scalar_matrix ( const Tpetra::CrsMatrix< Scalar, LO, GO, N > & A)

Definition at line 266 of file Stokhos_Tpetra_Utilities.hpp.

◆ copy_pce_to_scalar()

template<typename DstView , typename SrcView >
void Stokhos::copy_pce_to_scalar ( const DstView & dst,
const SrcView & src )

Definition at line 472 of file Stokhos_Tpetra_Utilities.hpp.

◆ copy_scalar_to_pce()

template<typename DstView , typename SrcView >
void Stokhos::copy_scalar_to_pce ( const DstView & dst,
const SrcView & src )

Definition at line 478 of file Stokhos_Tpetra_Utilities.hpp.

◆ CG_Solve()

template<typename Matrix , typename Vector , typename Ordinal >
bool Stokhos::CG_Solve ( const Matrix & A,
Vector & x,
const Vector & b,
typename Vector::mag_type tol,
Ordinal max_its,
std::ostream * out = 0 )

Definition at line 51 of file Stokhos_Tpetra_CG.hpp.

◆ PCG_Solve()

template<typename Matrix , typename Vector , typename Prec , typename Ordinal >
bool Stokhos::PCG_Solve ( const Matrix & A,
Vector & x,
const Vector & b,
const Prec & M,
typename Vector::mag_type tol,
Ordinal max_its,
std::ostream * out = 0 )

Definition at line 102 of file Stokhos_Tpetra_CG.hpp.

◆ create_flat_map()

template<typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_map ( const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > & map,
const LocalOrdinal block_size )

Definition at line 57 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_mp_graph() [1/2]

template<typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_mp_graph ( const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > & graph,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_domain_map,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_range_map,
const LocalOrdinal block_size )

Definition at line 97 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_mp_graph() [2/2]

template<typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_mp_graph ( const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & graph,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_domain_map,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_range_map,
const LocalOrdinal block_size )

Definition at line 171 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [9/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec_const,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 251 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [10/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 298 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [11/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 316 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [12/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 358 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [13/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( const Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec_const,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 376 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [14/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< const Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( const Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 392 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [15/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 410 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [16/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::Vector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_vector_view ( Tpetra::Vector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & vec,
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > & flat_map )

Definition at line 426 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [17/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< const Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( const Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 446 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_vector_view() [18/18]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Device >
Teuchos::RCP< Tpetra::MultiVector< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > Stokhos::create_flat_vector_view ( Tpetra::MultiVector< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > & vec,
const Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode< Device > > > & flat_map )

Definition at line 483 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ create_flat_matrix() [2/2]

template<typename Storage , typename LocalOrdinal , typename GlobalOrdinal , typename Node >
Teuchos::RCP< Tpetra::CrsMatrix< typename Storage::value_type, LocalOrdinal, GlobalOrdinal, Node > > Stokhos::create_flat_matrix ( const Tpetra::CrsMatrix< Sacado::MP::Vector< Storage >, LocalOrdinal, GlobalOrdinal, Node > & mat,
const Teuchos::RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > & flat_graph,
const LocalOrdinal block_size )

Definition at line 513 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

◆ operator<<() [4/10]

template<typename ordinal_type , typename value_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const Dense3Tensor< ordinal_type, value_type > & Cijk )

Definition at line 105 of file Stokhos_Dense3Tensor.hpp.

◆ build_lexicographic_basis_tree()

template<typename ordinal_type >
Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > Stokhos::build_lexicographic_basis_tree ( const Teuchos::ArrayView< const ordinal_type > & basis_orders,
const ordinal_type total_order,
const ordinal_type index_begin = ordinal_type(0),
const ordinal_type order_sum = ordinal_type(0),
const Stokhos::MultiIndex< ordinal_type > & term_prefix = Stokhos::MultiIndex<ordinal_type>() )

Definition at line 172 of file Stokhos_LTBSparse3Tensor.hpp.

◆ computeTripleProductTensorLTB()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor< ordinal_type, value_type > > Stokhos::computeTripleProductTensorLTB ( const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > & product_basis,
bool symmetric = false )

Definition at line 226 of file Stokhos_LTBSparse3Tensor.hpp.

◆ computeCijkLTBNode()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename LTBSparse3Tensor< ordinal_type, value_type >::CijkNode > Stokhos::computeCijkLTBNode ( const Teuchos::ArrayView< const ordinal_type > & basis_orders,
const Teuchos::ArrayView< const Teuchos::RCP< Sparse3Tensor< ordinal_type, value_type > > > & Cijk_1d,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & i_ltb,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & j_ltb,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & k_ltb,
const ordinal_type total_order,
const bool symmetric,
const ordinal_type sum_i = ordinal_type(0),
const ordinal_type sum_j = ordinal_type(0),
const ordinal_type sum_k = ordinal_type(0),
const value_type cijk_base = value_type(1) )

Definition at line 272 of file Stokhos_LTBSparse3Tensor.hpp.

◆ computeTripleProductTensorLTBBlockLeaf()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor< ordinal_type, value_type > > Stokhos::computeTripleProductTensorLTBBlockLeaf ( const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > & product_basis,
bool symmetric = false )

Definition at line 368 of file Stokhos_LTBSparse3Tensor.hpp.

◆ computeCijkLTBNodeBlockLeaf()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename LTBSparse3Tensor< ordinal_type, value_type >::CijkNode > Stokhos::computeCijkLTBNodeBlockLeaf ( const Teuchos::ArrayView< const ordinal_type > & basis_orders,
const Teuchos::ArrayView< const Teuchos::RCP< Dense3Tensor< ordinal_type, value_type > > > & Cijk_1d,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & i_ltb,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & j_ltb,
const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > & k_ltb,
const ordinal_type total_order,
const bool symmetric,
const ordinal_type sum_i = ordinal_type(0),
const ordinal_type sum_j = ordinal_type(0),
const ordinal_type sum_k = ordinal_type(0),
const value_type cijk_base = value_type(1),
const bool parent_j_equals_k = true )

Definition at line 413 of file Stokhos_LTBSparse3Tensor.hpp.

◆ computeFlatTripleProductTensorLTB()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< FlatLTBSparse3Tensor< ordinal_type, value_type > > Stokhos::computeFlatTripleProductTensorLTB ( const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > & product_basis,
bool symmetric = false )

Definition at line 545 of file Stokhos_LTBSparse3Tensor.hpp.

◆ flatLTB3TensorMultiply()

template<int max_size, typename ordinal_type , typename value_type >
void Stokhos::flatLTB3TensorMultiply ( OrthogPolyApprox< ordinal_type, value_type > & c,
const OrthogPolyApprox< ordinal_type, value_type > & a,
const OrthogPolyApprox< ordinal_type, value_type > & b,
const FlatLTBSparse3Tensor< ordinal_type, value_type > & cijk )

Definition at line 617 of file Stokhos_LTBSparse3Tensor.hpp.

◆ operator<<() [5/10]

template<typename ordinal_type , typename value_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const OneDOrthogPolyBasis< ordinal_type, value_type > & b )

Print basis to stream os.

Definition at line 234 of file Stokhos_OneDOrthogPolyBasis.hpp.

◆ operator<<() [6/10]

template<typename ordinal_type , typename value_type , typename node_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const OrthogPolyApprox< ordinal_type, value_type, node_type > & a )

Prints the array of coefficients (more compact than print())

◆ operator<<() [7/10]

template<typename ordinal_type , typename value_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const OrthogPolyBasis< ordinal_type, value_type > & b )

Print basis to stream os.

Definition at line 148 of file Stokhos_OrthogPolyBasis.hpp.

◆ n_choose_k()

template<typename ordinal_type >
ordinal_type Stokhos::n_choose_k ( const ordinal_type & n,
const ordinal_type & k )

Compute bionomial coefficient (n ; k) = n!/( k! (n-k)! )

Definition at line 60 of file Stokhos_ProductBasisUtils.hpp.

◆ operator<<() [8/10]

template<typename ordinal_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const MultiIndex< ordinal_type > & m )

Definition at line 199 of file Stokhos_ProductBasisUtils.hpp.

◆ operator<<() [9/10]

template<typename ordinal_type , typename element_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const TensorProductElement< ordinal_type, element_type > & m )

Definition at line 782 of file Stokhos_ProductBasisUtils.hpp.

◆ totalOrderMapping()

template<typename ordinal_type >
ordinal_type Stokhos::totalOrderMapping ( const Stokhos::MultiIndex< ordinal_type > & index)

Definition at line 1001 of file Stokhos_ProductBasisUtils.hpp.

◆ lexicographicMapping()

template<typename ordinal_type >
ordinal_type Stokhos::lexicographicMapping ( const Stokhos::MultiIndex< ordinal_type > & index,
ordinal_type max_order )

Definition at line 1032 of file Stokhos_ProductBasisUtils.hpp.

◆ operator<<() [10/10]

template<typename ordinal_type , typename value_type >
std::ostream & Stokhos::operator<< ( std::ostream & os,
const Quadrature< ordinal_type, value_type > & quad )

Print quadrature object to stream.

Definition at line 104 of file Stokhos_Quadrature.hpp.

◆ print_matlab()

template<typename ordinal_type , typename scalar_type >
void Stokhos::print_matlab ( std::ostream & os,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A )

Definition at line 115 of file Stokhos_SDMUtils.hpp.

◆ vec_norm_inf()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::vec_norm_inf ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A)

Vector-infinity norm of a matrix.

Definition at line 170 of file Stokhos_SDMUtils.hpp.

◆ QR_CGS()

template<typename ordinal_type , typename scalar_type >
void Stokhos::QR_CGS ( ordinal_type k,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R )

Compute thin QR using classical Gram-Schmidt.

For A an m-by-n matrix computes A = Q*R with R k-by-k upper triangular, Q m-by-k with orthogonal columns, k <= min(m,n).

Definition at line 183 of file Stokhos_SDMUtils.hpp.

◆ QR_MGS()

template<typename ordinal_type , typename scalar_type >
void Stokhos::QR_MGS ( ordinal_type k,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R )

Compute thin QR using modified Gram-Schmidt.

For A an m-by-n matrix computes A = Q*R with R k-by-k upper triangular, Q m-by-k with orthogonal columns, k <= min(m,n).

Definition at line 225 of file Stokhos_SDMUtils.hpp.

◆ QR_MGS2()

template<typename ordinal_type , typename scalar_type >
void Stokhos::QR_MGS2 ( ordinal_type k,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R )

Compute thin QR using modified Gram-Schmidt with reorthogonalization.

For A an m-by-n matrix computes A = Q*R with R k-by-k upper triangular, Q m-by-k with orthogonal columns, k <= min(m,n).

Definition at line 270 of file Stokhos_SDMUtils.hpp.

◆ QR_Householder()

template<typename ordinal_type , typename scalar_type >
void Stokhos::QR_Householder ( ordinal_type k,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R )

Compute thin QR using Householder reflections.

For A an m-by-n matrix computes A = Q*R with R k-by-k upper triangular, Q m-by-k with orthogonal columns, k <= min(m,n).

The QR factorization is computed by the corresponding LAPACK function.

Definition at line 324 of file Stokhos_SDMUtils.hpp.

◆ CPQR_Householder3()

template<typename ordinal_type , typename scalar_type >
void Stokhos::CPQR_Householder3 ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R,
Teuchos::Array< ordinal_type > & piv )

Compute column-pivoted QR using Householder reflections.

For A an m-by-n matrix with m >= n, computes A*P = Q*R with R n-by-n upper triangular and Q m-by-n with orthogonal columns (often called the economy size QR) and P an m-by-n permutation matrix. For n >= m, computes A*P = Q*R with R m-by-n upper trapezoidal and Q m-by-m upper trapezoidal (R = [R_1 R_2] with R_1 upper triangular and R_2 rectangular). For k = min(m,n), both cases are handled with Q m-by-k and R k-by-n.

The QR factorization is computed by the corresponding LAPACK function. This version uses the BLAS3-rich xGEQP3.

Definition at line 405 of file Stokhos_SDMUtils.hpp.

◆ CPQR_Householder_threshold()

template<typename ordinal_type , typename scalar_type >
ordinal_type Stokhos::CPQR_Householder_threshold ( const scalar_type & rank_threshold,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R,
Teuchos::Array< ordinal_type > & piv )

Compute column-pivoted QR using Householder reflections.

For A an m-by-n matrix, computes A*P = Q*R with R k-by-k upper triangular, Q m-by-k with orthonormal columns, and P an n-by-k permutation matrix. Here k <= min(m,n) is determined by a rank threshold tau provided by the user. The resulting R will have cond(R) <= 1/tau. P is returned in the pivot array piv and the rank k returned by the function. Only the first k entries of piv will be set. As with LAPACK, the user can require columns of A to be included in P by setting the corresponding entries of piv to be nonzero on input.

If make_R_square is false then R is k-by-n.

This ultimately uses the LAPACK column-pivoted QR function which does a full QR factorization. This then extracts the parts of Q, R, and P determined by the threshold as described above. As such, this function requires the weight vector to be 1 (Note the weight vector will be ignored if it is size 0).

Definition at line 494 of file Stokhos_SDMUtils.hpp.

◆ CPQR_MGS_threshold()

template<typename ordinal_type , typename scalar_type >
ordinal_type Stokhos::CPQR_MGS_threshold ( const scalar_type & rank_threshold,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R,
Teuchos::Array< ordinal_type > & piv )

Compute column-pivoted QR using modified Gram-Schmidt.

For A an m-by-n matrix, computes A*P = Q*R with R k-by-k upper triangular, Q m-by-k with orthonormal columns, and P an n-by-k permutation matrix. Here k <= min(m,n) is determined by a rank threshold tau provided by the user. The resulting R will have cond(R) <= 1/tau. P is returned in the pivot array piv and the rank k returned by the function. Only the first k entries of piv will be set. As with LAPACK, the user can require columns of A to be included in P by setting the corresponding entries of piv to be nonzero on input. The orthogonality of Q is determined by the weight vector w, defining a weighted inner-product.

Definition at line 546 of file Stokhos_SDMUtils.hpp.

◆ CPQR_MGS_reorthog_threshold()

template<typename ordinal_type , typename scalar_type >
ordinal_type Stokhos::CPQR_MGS_reorthog_threshold ( const scalar_type & rank_threshold,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::Array< scalar_type > & w,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R,
Teuchos::Array< ordinal_type > & piv )

Compute column-pivoted QR using modified Gram-Schmidt and reorthogonalization.

For A an m-by-n matrix, computes A*P = Q*R with R k-by-k upper triangular, Q m-by-k with orthonormal columns, and P an n-by-k permutation matrix. Here k <= min(m,n) is determined by a rank threshold tau provided by the user. The resulting R will have cond(R) <= 1/tau. P is returned in the pivot array piv and the rank k returned by the function. Only the first k entries of piv will be set. As with LAPACK, the user can require columns of A to be included in P by setting the corresponding entries of piv to be nonzero on input. The orthogonality of Q is determined by the weight vector w, defining a weighted inner-product.

Definition at line 679 of file Stokhos_SDMUtils.hpp.

◆ cond_R()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::cond_R ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R)

Compute condition number of upper-triangular R.

Definition at line 700 of file Stokhos_SDMUtils.hpp.

◆ weightedQROrthogonalizationError()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::weightedQROrthogonalizationError ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
const Teuchos::Array< scalar_type > & w )

Compute weighted QR orthogonalization error.

Computes ||Q^T*W*Q-I||_infinity for Q coming from a weighted QR factorization.

Definition at line 724 of file Stokhos_SDMUtils.hpp.

◆ QROrthogonalizationError()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::QROrthogonalizationError ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q)

Compute QR orthogonalization error.

Computes ||Q^T*Q-I||_infinity for Q coming from a QR factorization.

Definition at line 747 of file Stokhos_SDMUtils.hpp.

◆ residualQRError()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::residualQRError ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R )

Compute QR residual error.

Computes ||Q*R-A||_infinity for Q,R coming from QR factorization.

Works with thin or full QR, weighted or not.

Definition at line 766 of file Stokhos_SDMUtils.hpp.

◆ residualCPQRError()

template<typename ordinal_type , typename scalar_type >
scalar_type Stokhos::residualCPQRError ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Q,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & R,
const Teuchos::Array< ordinal_type > & piv )

Compute column-pivoted QR residual error.

Computes ||Q*R-A*P||_infinity for Q,R coming from a column-pivoted QR factorization.

Works with thin or full QR, weighted or not.

Definition at line 792 of file Stokhos_SDMUtils.hpp.

◆ svd()

template<typename ordinal_type , typename scalar_type >
void Stokhos::svd ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
Teuchos::Array< scalar_type > & s,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & U,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Vt )

Compute SVD of matrix.

The SVD is computed by the corresponding LAPACK function.

Definition at line 819 of file Stokhos_SDMUtils.hpp.

◆ svd_threshold()

template<typename ordinal_type , typename scalar_type >
ordinal_type Stokhos::svd_threshold ( const scalar_type & rank_threshold,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & A,
Teuchos::Array< scalar_type > & s,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & U,
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & Vt )

Definition at line 865 of file Stokhos_SDMUtils.hpp.

◆ build_cijk_coordinate_list()

template<typename ordinal_type , typename scalar_type >
Teuchos::ArrayRCP< CijkData< ordinal_type, scalar_type > > Stokhos::build_cijk_coordinate_list ( const Sparse3Tensor< ordinal_type, scalar_type > & Cijk,
CijkSymmetryType symmetry_type )

Definition at line 254 of file Stokhos_Sparse3TensorPartition.hpp.

◆ computeTripleProductTensorLTO()

template<typename ordinal_type , typename value_type >
Teuchos::RCP< Sparse3Tensor< ordinal_type, value_type > > Stokhos::computeTripleProductTensorLTO ( const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > & product_basis,
bool symmetric = false )

Definition at line 237 of file Stokhos_TotalOrderBasis.hpp.

◆ comparePCEs() [1/2]

template<class PCEType , class OrdinalType , class ValueType >
bool Stokhos::comparePCEs ( const PCEType & a1,
const std::string & a1_name,
const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > & a2,
const std::string & a2_name,
const ValueType & rel_tol,
const ValueType & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 59 of file Stokhos_SacadoUQPCEUnitTest.cpp.

◆ comparePCEs() [2/2]

template<class OrdinalType , class ValueType >
bool Stokhos::comparePCEs ( const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > & a1,
const std::string & a1_name,
const Stokhos::OrthogPolyApprox< OrdinalType, ValueType > & a2,
const std::string & a2_name,
const ValueType & rel_tol,
const ValueType & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 54 of file Stokhos_UnitTestHelpers.hpp.

◆ compareValues()

template<class ValueType >
bool Stokhos::compareValues ( const ValueType & a1,
const std::string & a1_name,
const ValueType & a2,
const std::string & a2_name,
const ValueType & rel_tol,
const ValueType & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 101 of file Stokhos_UnitTestHelpers.hpp.

◆ compareVecs()

template<class ValueType , class VectorType1 , class VectorType2 >
bool Stokhos::compareVecs ( const VectorType1 & a1,
const std::string & a1_name,
const VectorType2 & a2,
const std::string & a2_name,
const ValueType & rel_tol,
const ValueType & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 123 of file Stokhos_UnitTestHelpers.hpp.

◆ compareArrays()

template<class Array1 , class Array2 , class ValueType >
bool Stokhos::compareArrays ( const Array1 & a1,
const std::string & a1_name,
const Array2 & a2,
const std::string & a2_name,
const ValueType & rel_tol,
const ValueType & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 174 of file Stokhos_UnitTestHelpers.hpp.

◆ compareSDM()

template<class ordinal_type , class scalar_type >
bool Stokhos::compareSDM ( const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & a1,
const std::string & a1_name,
const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > & a2,
const std::string & a2_name,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 214 of file Stokhos_UnitTestHelpers.hpp.

◆ compareSparse3Tensor()

template<class ordinal_type , class scalar_type >
bool Stokhos::compareSparse3Tensor ( const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > & Cijk1,
const std::string & cijk1_name,
const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > & Cijk2,
const std::string & cijk2_name,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 268 of file Stokhos_UnitTestHelpers.hpp.

◆ testSparse3Tensor()

template<class ordinal_type , class scalar_type >
bool Stokhos::testSparse3Tensor ( const Stokhos::Sparse3Tensor< ordinal_type, scalar_type > & Cijk,
const Stokhos::ProductBasis< ordinal_type, scalar_type > & basis,
const scalar_type & sparse_tol,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out,
bool linear = false )

Definition at line 321 of file Stokhos_UnitTestHelpers.hpp.

◆ testPseudoSpectralPoints()

template<typename operator_type1 , typename operator_type2 , typename scalar_type >
bool Stokhos::testPseudoSpectralPoints ( const operator_type1 & op1,
const operator_type2 & op2,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 366 of file Stokhos_UnitTestHelpers.hpp.

◆ testPseudoSpectralApply()

template<typename operator_type1 , typename operator_type2 , typename func_type1 , typename func_type2 , typename scalar_type >
bool Stokhos::testPseudoSpectralApply ( const operator_type1 & op1,
const operator_type2 & op2,
const func_type1 & func1,
const func_type2 & func2,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 408 of file Stokhos_UnitTestHelpers.hpp.

◆ testPseudoSpectralApplyTrans()

template<typename operator_type1 , typename operator_type2 , typename func_type1 , typename func_type2 , typename scalar_type >
bool Stokhos::testPseudoSpectralApplyTrans ( const operator_type1 & op1,
const operator_type2 & op2,
const func_type1 & func1,
const func_type2 & func2,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 469 of file Stokhos_UnitTestHelpers.hpp.

◆ testPseudoSpectralDiscreteOrthogonality()

template<typename basis_type , typename operator_type , typename scalar_type >
bool Stokhos::testPseudoSpectralDiscreteOrthogonality ( const basis_type & basis,
const operator_type & op,
const scalar_type & rel_tol,
const scalar_type & abs_tol,
Teuchos::FancyOStream & out )

Definition at line 528 of file Stokhos_UnitTestHelpers.hpp.