Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Classes | Enumerations | Functions
Stokhos Namespace Reference

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

Namespaces

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

Classes

class  AbstractPreconditionerFactory
 An abstract class to represent a generic preconditioner factory. More...
 
class  AdaptivityManager
 
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  BasisInteractionGraph
 
class  BlockDiagonalOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  DiagEpetraOp
 An Epetra operator representing the block stochastic Galerkin operator. 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  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  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...
 
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  IfpackPreconditionerFactory
 A factory for building Ifpack preconditioners. More...
 
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  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  MatrixFreeOperator
 An Epetra operator representing the block stochastic Galerkin operator. More...
 
class  MeanBasedPreconditioner
 A stochastic preconditioner based on applying the inverse of the mean. More...
 
class  MLPreconditionerFactory
 A factory for building ML preconditioners. 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  ParallelData
 
class  PCECovarianceOp
 An Epetra operator representing the covariance operator of a polynomial chaos expansion. More...
 
class  PreconditionerFactory
 An class for building preconditioners. More...
 
class  ProductContainerTraits
 Base traits definition for ProductContainer. 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  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  ResponseStatisticModelEvaluator
 ModelEvaluator providing statistic response functions. More...
 
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  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...
 
class  EpetraVectorCloner
 Cloner for Epetra_Vector coefficients. More...
 
class  EpetraMultiVectorCloner
 Cloner for Epetra_MultiVector coefficients. More...
 
class  EpetraOperatorCloner
 Cloner for Epetra_Operator coefficients. More...
 
class  EpetraCrsMatrixCloner
 Cloner for Epetra_CrsMatrix coefficients. More...
 
class  ProductContainerTraits< Epetra_Vector >
 Specialization of ProductContainerTraits to Epetra_Vector coefficients. More...
 
class  ProductContainerTraits< Epetra_MultiVector >
 Specialization of ProductContainerTraits to Epetra_MultiVector coefficients. More...
 
class  ProductContainerTraits< Epetra_CrsMatrix >
 Specialization of ProductContainerTraits to Epetra_CrsMatrix coefficients. More...
 
class  ProductContainerTraits< Epetra_Operator >
 Specialization of ProductContainerTraits to Epetra_Operator coefficients. More...
 
class  HouseTriDiagPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  MonoProjPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
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  DeviceProp
 
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  BlockMultiply< SymmetricDiagonalSpec< Kokkos::Cuda > >
 
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< 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  BlockCrsMatrix
 CRS matrix of dense blocks. More...
 
class  Multiply< BlockCrsMatrix< BlockSpec, MatrixValue, Device >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Device >, Kokkos::View< VectorValue **, Kokkos::LayoutLeft, Device > >
 
class  CooProductTensor
 Sparse product tensor using 'COO'-like storage format. More...
 
class  CooProductTensor< ValueType, ExecutionSpace, true >
 Specialization of CooProductTensor for packed (i,j,k) More...
 
class  CooProductTensor< ValueType, ExecutionSpace, false >
 Specialization of CooProductTensor for unpacked (i,j,k) More...
 
class  BlockMultiply< CooProductTensor< ValueType, Device, Pack > >
 
struct  DeviceConfig
 
class  CrsMatrix
 CRS matrix. More...
 
class  Multiply< CrsMatrix< MatrixValue, Device, Layout >, InputVectorType, OutputVectorType, void, IntegralRank< 1 > >
 
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 >, std::vector< InputViewType >, std::vector< OutputViewType >, void, IntegralRank< 1 > >
 
class  SingleColumnMultivectorMultiply
 
class  MatrixMarketWriter< CrsMatrix< MatrixValue, Device, Layout > >
 
class  CrsProductTensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  BlockMultiply< CrsProductTensor< ValueType, Device > >
 
class  MultiplyImpl
 
class  FlatSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  BlockMultiply< FlatSparse3Tensor< ValueType, Device > >
 
class  FlatSparse3Tensor_kji
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  BlockMultiply< FlatSparse3Tensor_kji< ValueType, Device > >
 
class  LexicographicBlockSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  BlockMultiply< LexicographicBlockSparse3Tensor< ValueType, Device > >
 
class  LinearSparse3Tensor
 Sparse product tensor with replicated entries to provide subsets with a given coordinate. More...
 
class  BlockMultiply< LinearSparse3Tensor< ValueType, Device, BlockSize > >
 
class  MatrixMarketWriter
 
class  DefaultMultiply
 
class  IntegralRank
 
struct  ViewRank
 
struct  ViewRank< std::vector< T > >
 
class  Multiply
 
class  BlockMultiply
 
class  SimpleTiledCrsProductTensor
 
class  BlockMultiply< SimpleTiledCrsProductTensor< ValueType, Device > >
 
class  StochasticProductTensor
 Bases defined by combinatorial product of polynomial bases. More...
 
class  BlockMultiply< StochasticProductTensor< ValueType, TensorType, Device > >
 
class  SymmetricDiagonalSpec
 Symmetric diagonal storage for a dense matrix. More...
 
class  BlockMultiply< SymmetricDiagonalSpec< Device > >
 
class  TiledCrsProductTensor
 
class  BlockMultiply< TiledCrsProductTensor< ValueType, Device > >
 
class  TinyVec
 
class  TinyVec< ValueType, N, UseIntrinsics, true >
 
class  Update
 
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< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< 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< Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
class  MeanMultiply
 
class  MeanMultiply< KokkosSparse::CrsMatrix< Sacado::UQ::PCE< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< 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< Sacado::UQ::PCE< InputStorage > **, InputP... >, Kokkos::View< Sacado::UQ::PCE< OutputStorage > **, OutputP... > >
 
struct  DeviceForNode2
 
struct  DeviceForNode2< Kokkos::Compat::KokkosDeviceWrapperNode< Device > >
 
class  DynamicStorage
 
class  DynamicStridedStorage
 
class  DynamicThreadedStorage
 Dynamically allocated storage class with striding. More...
 
struct  IsScalarType2
 Base template specification for IsScalarType. 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...
 
struct  MemoryTraits
 Traits class encapsulting memory alignment. More...
 
struct  MemoryTraits< Kokkos::HostSpace >
 Specialization of MemoryTraits for host memory spaces. More...
 
class  aligned_allocator
 An aligned STL allocator. More...
 
class  aligned_allocator< const T >
 An aligned STL allocator. More...
 
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  StaticFixedStorage
 Statically allocated storage class. More...
 
class  StaticStorage
 Statically allocated storage class. More...
 
class  GetMeanValsFunc
 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  GetMeanValsFunc< Kokkos::View< Sacado::MP::Vector< 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::UQ::PCE< Storage > *, P... > >
 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  MeanBasedTpetraOperator
 
struct  error_storage_type_is_not_allocateable
 
struct  error_storage_type_is_not_resizeable
 
class  ViewStorage
 Dynamic storage with view semantics and contiguous access. More...
 
struct  is_ViewStorage
 
struct  is_ViewStorage< ViewStorage< ordinal_t, value_t, static_length, static_stride, device_t > >
 
class  Multiply< KokkosSparse::CrsMatrix< Sacado::MP::Vector< MatrixStorage >, MatrixOrdinal, MatrixDevice, MatrixMemory, MatrixSize >, Kokkos::View< 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< Sacado::MP::Vector< InputStorage > **, InputP... >, Kokkos::View< Sacado::MP::Vector< OutputStorage > **, OutputP... > >
 
struct  DeviceForNode
 Trait class that determines (new) Kokkos execution space type from Kokkos(Classic) Node type. More...
 
class  AlgebraicOrthogPolyExpansion
 Orthogonal polynomial expansions limited to algebraic operations. More...
 
class  BasisFactory
 Factory for building multivariate orthogonal polynomial bases. More...
 
class  BlockPreconditioner
 
class  CGDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. 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  ConstantOrthogPolyExpansion
 Orthogonal polynomial expansion class for constant (size 1) expansions. 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  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...
 
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  IsScalarType
 Base template specification for IsScalarType. 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  ExpansionFactory
 Factory for building multivariate expansion strategies. More...
 
class  GaussPattersonLegendreBasis
 Legendre polynomial basis using Gauss-Patterson quadrature points. 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  IdentityGrowthRule
 A growth rule that is the identity. More...
 
class  LinearGrowthRule
 A linear growth rule. More...
 
class  EvenGrowthRule
 A growth rule that always makes the supplied order even. More...
 
class  ClenshawCurtisExponentialGrowthRule
 An exponential growth rule for Clenshaw-Curtis. More...
 
class  GaussPattersonExponentialGrowthRule
 An exponential growth rule for Gauss-Patterson. 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  InversePreconditioner
 
class  JacobiBasis
 Jacobi polynomial basis. More...
 
class  JacobiPreconditioner
 
class  WeightedVectorSpace
 
class  Lanczos
 Applies Lanczos procedure to a given matrix. More...
 
class  DiagonalOperator
 
class  LanczosPCEBasis
 Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
 
class  DenseOperator
 
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  LTBSparse3Tensor
 Data structure storing a sparse 3-tensor C(i,j,k) in a a tree-based format for lexicographically ordered product bases. More...
 
struct  LexicographicTreeBasisNode
 
struct  FlatLTBSparse3TensorNode
 
struct  FlatLTBSparse3Tensor
 
class  MeanBasedDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. 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  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  ProductBasis
 Abstract base class for multivariate orthogonal polynomials generated from tensor products of univariate polynomials. More...
 
class  MultiIndex
 A multidimensional index. More...
 
class  TotalOrderIndexSet
 An isotropic total order index set. More...
 
class  AnisotropicTotalOrderIndexSet
 An anisotropic total order index set. More...
 
class  TensorProductIndexSet
 A tensor product index set. More...
 
class  TensorProductElement
 Container storing a term in a generalized tensor product. More...
 
class  LexographicLess
 A comparison functor implementing a strict weak ordering based lexographic ordering. More...
 
class  TotalOrderLess
 A comparison functor implementing a strict weak ordering based total-order ordering, recursive on the dimension. More...
 
class  MortonZLess
 A comparison functor implementing a strict weak ordering based Morton Z-ordering. More...
 
class  FloatingPointLess
 A functor for comparing floating-point numbers to some tolerance. More...
 
struct  TensorProductPredicate
 Predicate functor for building sparse triple products. More...
 
struct  TotalOrderPredicate
 Predicate functor for building sparse triple products based on total order. More...
 
class  ProductBasisUtils
 Utilities for indexing a multi-variate complete polynomial basis. More...
 
class  CompletePolynomialBasisUtils
 Utilities for indexing a multi-variate complete polynomial basis. 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...
 
struct  DefaultPointCompare
 Struct defining default point compare type. 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  RecurrenceBasis
 Implementation of OneDOrthogPolyBasis based on the general three-term recurrence relationship:

\[ \gamma_{k+1}\psi_{k+1}(x) = (\delta_k x - \alpha_k)\psi_k(x) - \beta_k\psi_{k-1}(x) \]

for $k=0,\dots,P$ where $\psi_{-1}(x) = 0$, $\psi_{0}(x) = 1/\gamma_0$, and $\beta_{0} = 1 = \int d\lambda$. 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  RysBasis
 Rys polynomial basis. More...
 
class  SchurPreconditioner
 
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...
 
class  RCB
 
struct  CijkData
 
class  SparseArrayIterator
 Bi-directional iterator for traversing a sparse array. More...
 
class  SparseArrayReverseIterator
 Bi-directional reverse iterator for traversing a sparse array. More...
 
struct  SparseArray
 Container for a "sparse" array. More...
 
class  SPDDenseDirectDivisionExpansionStrategy
 Strategy interface for computing PCE of a/b using only b[0]. More...
 
class  StandardStorage
 
class  StaticFixedStandardStorage
 Statically allocated storage class. More...
 
class  StaticStandardStorage
 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  TensorProductBasis
 Multivariate orthogonal polynomial basis generated from a tensor product of univariate polynomials. 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  TotalOrderBasis
 Multivariate orthogonal polynomial basis generated from a total order tensor product of univariate polynomials. More...
 
class  UserDefinedQuadrature
 
class  JacobiTester
 

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. More...
 
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. More...
 
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 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 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 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. More...
 
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()) More...
 
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. More...
 
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)! ) More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
template<typename ordinal_type , typename scalar_type >
scalar_type QROrthogonalizationError (const Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > &Q)
 Compute QR orthogonalization error. More...
 
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. More...
 
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. More...
 
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. More...
 
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

Enumerated type for determining Smolyak growth policies.

Enumerator
SLOW_GROWTH 
MODERATE_GROWTH 

Definition at line 50 of file Stokhos_RecurrenceBasis.hpp.

Enumerator
CIJK_NO_SYMMETRY 
CIJK_TWO_WAY_SYMMETRY 
CIJK_SIX_WAY_SYMMETRY 

Definition at line 246 of file Stokhos_Sparse3TensorPartition.hpp.

Function Documentation

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.

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

Definition at line 143 of file Stokhos_ParallelData.cpp.

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

Definition at line 150 of file Stokhos_ParallelData.cpp.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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 80 of file Stokhos_Cuda_WarpShuffle.hpp.

KOKKOS_INLINE_FUNCTION void Stokhos::sync_warp ( const int mask)

Definition at line 86 of file Stokhos_Cuda_WarpShuffle.hpp.

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.

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.

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.

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.

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 516 of file Stokhos_CrsProductTensor.hpp.

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 527 of file Stokhos_CrsProductTensor.hpp.

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

Definition at line 538 of file Stokhos_CrsProductTensor.hpp.

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

Definition at line 546 of file Stokhos_CrsProductTensor.hpp.

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 554 of file Stokhos_CrsProductTensor.hpp.

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 563 of file Stokhos_CrsProductTensor.hpp.

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.

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.

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.

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.

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

Definition at line 50 of file Stokhos_MatrixMarket.hpp.

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

Definition at line 78 of file Stokhos_Multiply.hpp.

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

Definition at line 88 of file Stokhos_Multiply.hpp.

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 100 of file Stokhos_Multiply.hpp.

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 112 of file Stokhos_Multiply.hpp.

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.

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 221 of file Stokhos_StochasticProductTensor.hpp.

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.

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.

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.

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.

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.

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 275 of file Stokhos_Tpetra_Utilities.hpp.

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

Definition at line 491 of file Stokhos_Tpetra_Utilities.hpp.

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

Definition at line 497 of file Stokhos_Tpetra_Utilities.hpp.

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.

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.

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.

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.

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 249 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 296 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 314 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 356 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 374 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 390 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 408 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 424 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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 518 of file Stokhos_Tpetra_Utilities_MP_Vector.hpp.

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

Definition at line 106 of file Stokhos_Dense3Tensor.hpp.

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.

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.

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.

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.

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.

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.

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.

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 235 of file Stokhos_OneDOrthogPolyBasis.hpp.

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())

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.

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.

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.

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.

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

Definition at line 1001 of file Stokhos_ProductBasisUtils.hpp.

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.

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.

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 103 of file Stokhos_SDMUtils.hpp.

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 158 of file Stokhos_SDMUtils.hpp.

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 171 of file Stokhos_SDMUtils.hpp.

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 213 of file Stokhos_SDMUtils.hpp.

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 258 of file Stokhos_SDMUtils.hpp.

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 312 of file Stokhos_SDMUtils.hpp.

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 393 of file Stokhos_SDMUtils.hpp.

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 482 of file Stokhos_SDMUtils.hpp.

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 534 of file Stokhos_SDMUtils.hpp.

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 667 of file Stokhos_SDMUtils.hpp.

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 688 of file Stokhos_SDMUtils.hpp.

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 712 of file Stokhos_SDMUtils.hpp.

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 735 of file Stokhos_SDMUtils.hpp.

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 754 of file Stokhos_SDMUtils.hpp.

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 780 of file Stokhos_SDMUtils.hpp.

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 807 of file Stokhos_SDMUtils.hpp.

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 853 of file Stokhos_SDMUtils.hpp.

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.

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.

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 58 of file Stokhos_SacadoUQPCEUnitTest.cpp.

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.

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.

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.

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 170 of file Stokhos_UnitTestHelpers.hpp.

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 210 of file Stokhos_UnitTestHelpers.hpp.

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 264 of file Stokhos_UnitTestHelpers.hpp.

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 317 of file Stokhos_UnitTestHelpers.hpp.

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 362 of file Stokhos_UnitTestHelpers.hpp.

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 404 of file Stokhos_UnitTestHelpers.hpp.

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 465 of file Stokhos_UnitTestHelpers.hpp.

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 524 of file Stokhos_UnitTestHelpers.hpp.