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

Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions. More...

#include <Stokhos_ReducedQuadratureFactory.hpp>

Public Member Functions

 ReducedQuadratureFactory (const Teuchos::ParameterList &params)
 Constructor. More...
 
virtual ~ReducedQuadratureFactory ()
 Destructor. More...
 
virtual Teuchos::RCP< const
Stokhos::UserDefinedQuadrature
< ordinal_type, value_type > > 
createReducedQuadrature (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q2, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights) const
 Get reduced quadrature object. More...
 

Protected Member Functions

void reducedQuadrature_Q_Squared (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights, Teuchos::RCP< Teuchos::Array< value_type > > &red_weights, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_points, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_values) const
 
void reducedQuadrature_Q_Squared_CPQR (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights, Teuchos::RCP< Teuchos::Array< value_type > > &red_weights, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_points, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_values) const
 
void reducedQuadrature_Q_Squared_CPQR2 (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights, Teuchos::RCP< Teuchos::Array< value_type > > &red_weights, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_points, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_values) const
 
void reducedQuadrature_Q2 (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q2, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights, Teuchos::RCP< Teuchos::Array< value_type > > &red_weights, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_points, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_values) const
 
void reducedQuadrature_Q2_CPQR (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &Q2, const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &F, const Teuchos::Array< value_type > &weights, Teuchos::RCP< Teuchos::Array< value_type > > &red_weights, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_points, Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &red_values) const
 
void underdetermined_solver (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_TRSM (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_GLPK (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_CLP (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_CLP_IP (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_qpOASES (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
void solver_CompressedSensing (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &A, const Teuchos::SerialDenseVector< ordinal_type, value_type > &b, Teuchos::SerialDenseVector< ordinal_type, value_type > &x, Teuchos::ETransp transa, Teuchos::EUplo uplo) const
 
ordinal_type computeRank (const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &R, const value_type tol) const
 
ordinal_type n_choose_k (const ordinal_type &n, const ordinal_type &k) const
 Compute bionomial coefficient (n ; k) = n!/( k! (n-k)! ) More...
 

Protected Attributes

Teuchos::ParameterList params
 Algorithm parameters. More...
 
std::string reduction_method
 Reduction method. More...
 
std::string solver_method
 Underdetermined solver method. More...
 
bool eliminate_dependent_rows
 Whether to eliminate dependent rows in constraints. More...
 
bool verbose
 Whether to print a bunch of stuff out. More...
 
value_type reduction_tol
 Dimension reduction tolerance. More...
 
value_type objective_value
 Value used in LP-based objective function. More...
 
Teuchos::LAPACK< ordinal_type,
value_type > 
lapack
 
Teuchos::BLAS< ordinal_type,
value_type > 
blas
 

Private Member Functions

 ReducedQuadratureFactory (const ReducedQuadratureFactory &)
 
ReducedQuadratureFactoryoperator= (const ReducedQuadratureFactory &)
 

Detailed Description

template<typename ordinal_type, typename value_type>
class Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >

Generate a basis from a given set of PCE expansions that is orthogonal with respect to the product measure induced by these expansions.

Given the PCE expansions, first build a non-orthogonal monomial basis. Orthogonalize this basis using Gram-Schmidt, then build a quadrature rule using the simplex method.

Definition at line 33 of file Stokhos_ReducedQuadratureFactory.hpp.

Constructor & Destructor Documentation

template<typename ordinal_type , typename value_type >
Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::ReducedQuadratureFactory ( const Teuchos::ParameterList params)

Constructor.

Parameters
paramsParameter dictating choice of reduction method

Definition at line 39 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type, typename value_type>
virtual Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::~ReducedQuadratureFactory ( )
inlinevirtual

Destructor.

Definition at line 43 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::ReducedQuadratureFactory ( const ReducedQuadratureFactory< ordinal_type, value_type > &  )
private

Member Function Documentation

template<typename ordinal_type , typename value_type >
Teuchos::RCP< const Stokhos::UserDefinedQuadrature< ordinal_type, value_type > > Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::createReducedQuadrature ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q2,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights 
) const
virtual

Get reduced quadrature object.

Definition at line 54 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reducedQuadrature_Q_Squared ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights,
Teuchos::RCP< Teuchos::Array< value_type > > &  red_weights,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_points,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_values 
) const
protected

Definition at line 128 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reducedQuadrature_Q_Squared_CPQR ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights,
Teuchos::RCP< Teuchos::Array< value_type > > &  red_weights,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_points,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_values 
) const
protected

Definition at line 234 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reducedQuadrature_Q_Squared_CPQR2 ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights,
Teuchos::RCP< Teuchos::Array< value_type > > &  red_weights,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_points,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_values 
) const
protected

Definition at line 363 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reducedQuadrature_Q2 ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q2,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights,
Teuchos::RCP< Teuchos::Array< value_type > > &  red_weights,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_points,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_values 
) const
protected

Definition at line 516 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reducedQuadrature_Q2_CPQR ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  Q2,
const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  F,
const Teuchos::Array< value_type > &  weights,
Teuchos::RCP< Teuchos::Array< value_type > > &  red_weights,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_points,
Teuchos::RCP< Teuchos::Array< Teuchos::Array< value_type > > > &  red_values 
) const
protected

Definition at line 611 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::underdetermined_solver ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 730 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_TRSM ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 757 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_GLPK ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 791 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_CLP ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 911 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_CLP_IP ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 1018 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_qpOASES ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 1125 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
void Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_CompressedSensing ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  A,
const Teuchos::SerialDenseVector< ordinal_type, value_type > &  b,
Teuchos::SerialDenseVector< ordinal_type, value_type > &  x,
Teuchos::ETransp  transa,
Teuchos::EUplo  uplo 
) const
protected

Definition at line 1199 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type , typename value_type >
ordinal_type Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::computeRank ( const Teuchos::SerialDenseMatrix< ordinal_type, value_type > &  R,
const value_type  tol 
) const
protected

Definition at line 1239 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

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

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

Definition at line 1273 of file Stokhos_ReducedQuadratureFactoryImp.hpp.

template<typename ordinal_type, typename value_type>
ReducedQuadratureFactory& Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::operator= ( const ReducedQuadratureFactory< ordinal_type, value_type > &  )
private

Member Data Documentation

template<typename ordinal_type, typename value_type>
Teuchos::ParameterList Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::params
mutableprotected

Algorithm parameters.

Definition at line 164 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
std::string Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reduction_method
protected

Reduction method.

Definition at line 167 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
std::string Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::solver_method
protected

Underdetermined solver method.

Definition at line 170 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
bool Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::eliminate_dependent_rows
protected

Whether to eliminate dependent rows in constraints.

Definition at line 173 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
bool Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::verbose
protected

Whether to print a bunch of stuff out.

Definition at line 176 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
value_type Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::reduction_tol
protected

Dimension reduction tolerance.

Definition at line 179 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
value_type Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::objective_value
protected

Value used in LP-based objective function.

Definition at line 182 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
Teuchos::LAPACK<ordinal_type,value_type> Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::lapack
protected

Definition at line 184 of file Stokhos_ReducedQuadratureFactory.hpp.

template<typename ordinal_type, typename value_type>
Teuchos::BLAS<ordinal_type,value_type> Stokhos::ReducedQuadratureFactory< ordinal_type, value_type >::blas
protected

Definition at line 185 of file Stokhos_ReducedQuadratureFactory.hpp.


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