$extrastylesheet
Dakota  Version 6.2
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
NonDIntegration Class Reference

Derived nondeterministic class that generates N-dimensional numerical integration points for evaluation of expectation integrals. More...

Inheritance diagram for NonDIntegration:
NonD Analyzer Iterator NonDCubature NonDQuadrature NonDSparseGrid

List of all members.

Public Member Functions

virtual void initialize_grid (const std::vector< Pecos::BasisPolynomial > &poly_basis)=0
 initialize integration grid by drawing from polynomial basis settings
virtual void increment_grid ()=0
 increment SSG level/TPQ order
virtual void increment_grid_preference (const RealVector &dim_pref)
 increment SSG level/TPQ order and update anisotropy
virtual void increment_grid_weights (const RealVector &aniso_wts)
 increment SSG level/TPQ order and update anisotropy
virtual void increment_specification_sequence ()
 increment sequenceIndex and update active orders/levels
const Pecos::IntegrationDriver & driver () const
 return numIntDriver

Static Public Member Functions

static void dimension_preference_to_anisotropic_order (unsigned short scalar_order_spec, const RealVector &dim_pref_spec, size_t num_v, UShortArray &aniso_order)
 convert scalar_order_spec and vector dim_pref_spec to vector aniso_order
static void anisotropic_order_to_dimension_preference (const UShortArray &aniso_order, unsigned short &scalar_order, RealVector &dim_pref)
 convert vector aniso_order to scalar_order and vector dim_pref

Protected Member Functions

 NonDIntegration (ProblemDescDB &problem_db, Model &model)
 constructor
 NonDIntegration (unsigned short method_name, Model &model)
 alternate constructor for instantiations "on the fly"
 NonDIntegration (unsigned short method_name, Model &model, const RealVector &dim_pref)
 alternate constructor for instantiations "on the fly"
 ~NonDIntegration ()
 destructor
void quantify_uncertainty ()
 Mapping of the core_run() virtual function for the NonD branch.
void check_variables (const Pecos::ShortArray &x_types)
 verify self-consistency of variables data
void print_points_weights (const String &tabular_name)
 output integration points and weights to a tabular file

Protected Attributes

Pecos::IntegrationDriver numIntDriver
 Pecos utlity class for managing interface to tensor-product grids and VPISparseGrid utilities for Smolyak sparse grids and cubature.
size_t numIntegrations
 counter for number of integration executions for this object
size_t sequenceIndex
 index into NonDQuadrature::quadOrderSpec and NonDSparseGrid::ssgLevelSpec that defines the current instance of several possible refinement levels
RealVector dimPrefSpec
 the user specification for anisotropic dimension preference

Detailed Description

Derived nondeterministic class that generates N-dimensional numerical integration points for evaluation of expectation integrals.

This class provides a base class for shared code among NonDQuadrature and NonDSparseGrid.


Constructor & Destructor Documentation

NonDIntegration ( ProblemDescDB problem_db,
Model model 
) [protected]

constructor

This constructor is called for a standard letter-envelope iterator instantiation. In this case, set_db_list_nodes has been called and probDescDB can be queried for settings from the method specification. It is not currently used, as there are not yet separate nond_quadrature/nond_sparse_grid method specifications.

References Dakota::abort_handler(), NonD::initialize_final_statistics(), NonD::initialize_random_variable_correlations(), NonD::initialize_random_variable_transformation(), NonD::initialize_random_variable_types(), Analyzer::numDiscreteIntVars, Analyzer::numDiscreteRealVars, Analyzer::numDiscreteStringVars, and NonD::verify_correlation_support().

NonDIntegration ( unsigned short  method_name,
Model model 
) [protected]

alternate constructor for instantiations "on the fly"

This alternate constructor is used for on-the-fly generation and evaluation of numerical integration points.

NonDIntegration ( unsigned short  method_name,
Model model,
const RealVector &  dim_pref 
) [protected]

alternate constructor for instantiations "on the fly"

This alternate constructor is used for on-the-fly generation and evaluation of numerical integration points.


Member Function Documentation

void dimension_preference_to_anisotropic_order ( unsigned short  scalar_order_spec,
const RealVector &  dim_pref_spec,
size_t  num_v,
UShortArray &  aniso_order 
) [static]

convert scalar_order_spec and vector dim_pref_spec to vector aniso_order

Converts a scalar order specification and a vector anisotropic dimension preference into an anisotropic order vector. It is used for initialization and does not enforce a reference lower bound (see also NonDQuadrature::update_anisotropic_order()).

Referenced by NonDPolynomialChaos::increment_specification_sequence(), NonDQuadrature::initialize_dimension_quadrature_order(), and NonDPolynomialChaos::NonDPolynomialChaos().

void anisotropic_order_to_dimension_preference ( const UShortArray &  aniso_order,
unsigned short &  scalar_order,
RealVector &  dim_pref 
) [static]

convert vector aniso_order to scalar_order and vector dim_pref

Converts a vector anisotropic order into a scalar order and vector anisotropic dimension preference.

Referenced by NonDPolynomialChaos::NonDPolynomialChaos().

void check_variables ( const Pecos::ShortArray &  x_types) [protected]

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