Dakota
Version 6.21
Explore and Predict with Confidence
|
Nonintrusive polynomial chaos expansion approaches to uncertainty quantification. More...
Public Member Functions | |
NonDMultilevelPolynomialChaos (ProblemDescDB &problem_db, Model &model) | |
standard constructor More... | |
NonDMultilevelPolynomialChaos (Model &model, short exp_coeffs_approach, const UShortArray &num_int_seq, const RealVector &dim_pref, short u_space_type, short refine_type, short refine_control, short covar_control, short ml_alloc_cntl, short ml_discrep, short rule_nest, short rule_growth, bool piecewise_basis, bool use_derivs) | |
alternate constructor for numerical integration (tensor, sparse, cubature) More... | |
NonDMultilevelPolynomialChaos (unsigned short method_name, Model &model, short exp_coeffs_approach, const UShortArray &exp_order_seq, const RealVector &dim_pref, const SizetArray &colloc_pts_seq, Real colloc_ratio, const SizetArray &seed_seq, short u_space_type, short refine_type, short refine_control, short covar_control, short ml_alloc_cntl, short ml_discrep, bool piecewise_basis, bool use_derivs, bool cv_flag, const String &import_build_pts_file, unsigned short import_build_format, bool import_build_active_only) | |
alternate constructor for regression (least squares, CS, OLI) More... | |
~NonDMultilevelPolynomialChaos () | |
destructor | |
Public Member Functions inherited from NonDPolynomialChaos | |
NonDPolynomialChaos (ProblemDescDB &problem_db, Model &model) | |
standard constructor More... | |
NonDPolynomialChaos (Model &model, short exp_coeffs_approach, unsigned short num_int, const RealVector &dim_pref, short u_space_type, short refine_type, short refine_control, short covar_control, short rule_nest, short rule_growth, bool piecewise_basis, bool use_derivs, String exp_expansion_file="") | |
alternate constructor for numerical integration (tensor, sparse, cubature) More... | |
NonDPolynomialChaos (Model &model, short exp_coeffs_approach, unsigned short exp_order, const RealVector &dim_pref, size_t colloc_pts, Real colloc_ratio, int seed, short u_space_type, short refine_type, short refine_control, short covar_control, bool piecewise_basis, bool use_derivs, bool cv_flag, const String &import_build_pts_file, unsigned short import_build_format, bool import_build_active_only, String exp_expansion_file="") | |
alternate constructor for regression (least squares, CS, OLI) More... | |
NonDPolynomialChaos (Model &model, const String &exp_import_file, short u_space_type, const ShortShortPair &approx_view) | |
alternate constructor for coefficient import More... | |
~NonDPolynomialChaos () | |
destructor | |
bool | resize () |
reinitializes iterator based on new variable size | |
Public Member Functions inherited from NonDExpansion | |
NonDExpansion (ProblemDescDB &problem_db, Model &model) | |
standard constructor | |
NonDExpansion (unsigned short method_name, Model &model, const ShortShortPair &approx_view, short exp_coeffs_approach, const RealVector &dim_pref, int seed, short refine_type, short refine_control, short covar_control, Real colloc_ratio, short rule_nest, short rule_growth, bool piecewise_basis, bool use_derivs) | |
alternate constructor | |
~NonDExpansion () | |
destructor | |
void | nested_variable_mappings (const SizetArray &c_index1, const SizetArray &di_index1, const SizetArray &ds_index1, const SizetArray &dr_index1, const ShortArray &c_target2, const ShortArray &di_target2, const ShortArray &ds_target2, const ShortArray &dr_target2) |
set primaryA{CV,DIV,DRV}MapIndices, secondaryA{CV,DIV,DRV}MapTargets within derived Iterators; supports computation of higher-level sensitivities in nested contexts (e.g., derivatives of statistics w.r.t. inserted design variables) | |
const Model & | algorithm_space_model () const |
virtual void | append_expansion () |
generate numSamplesOnModel, append to approximation data, and update QoI expansions | |
size_t | maximum_refinement_iterations () const |
return maxRefineIterations | |
void | maximum_refinement_iterations (size_t max_refine_iter) |
set maxRefineIterations | |
Public Member Functions inherited from NonD | |
void | requested_levels (const RealVectorArray &req_resp_levels, const RealVectorArray &req_prob_levels, const RealVectorArray &req_rel_levels, const RealVectorArray &req_gen_rel_levels, short resp_lev_tgt, short resp_lev_tgt_reduce, bool cdf_flag, bool pdf_output) |
set requestedRespLevels, requestedProbLevels, requestedRelLevels, requestedGenRelLevels, respLevelTarget, cdfFlag, and pdfOutput (used in combination with alternate ctors) | |
void | print_level_mappings (std::ostream &s) const |
prints the z/p/beta/beta* mappings reflected in {requested,computed}{Resp,Prob,Rel,GenRel}Levels for default qoi_type and qoi_labels | |
void | print_level_mappings (std::ostream &s, String qoi_type, const StringArray &qoi_labels) const |
prints the z/p/beta/beta* mappings reflected in {requested,computed}{Resp,Prob,Rel,GenRel}Levels More... | |
void | print_level_mappings (std::ostream &s, const RealVector &level_maps, bool moment_offset, const String &prepend="") |
print level mapping statistics using optional pre-pend More... | |
bool | pdf_output () const |
get pdfOutput | |
void | pdf_output (bool output) |
set pdfOutput | |
short | final_moments_type () const |
get finalMomentsType | |
void | final_moments_type (short type) |
set finalMomentsType | |
Public Member Functions inherited from Analyzer | |
const VariablesArray & | all_variables () |
return the complete set of evaluated variables | |
const RealMatrix & | all_samples () |
return the complete set of evaluated samples | |
const IntResponseMap & | all_responses () const |
return the complete set of computed responses | |
size_t | num_samples () const |
virtual void | vary_pattern (bool pattern_flag) |
sets varyPattern in derived classes that support it | |
Public Member Functions inherited from Iterator | |
Iterator (std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
default constructor More... | |
Iterator (ProblemDescDB &problem_db, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
standard envelope constructor, which constructs its own model(s) More... | |
Iterator (ProblemDescDB &problem_db, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
alternate envelope constructor which uses the ProblemDescDB but accepts a model from a higher level (meta-iterator) context, instead of constructing its own More... | |
Iterator (const String &method_string, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
alternate envelope constructor for instantiations by name without the ProblemDescDB More... | |
Iterator (const Iterator &iterator) | |
copy constructor More... | |
virtual | ~Iterator () |
destructor | |
Iterator | operator= (const Iterator &iterator) |
assignment operator | |
virtual void | post_input () |
read tabular data for post-run mode | |
virtual void | reset () |
restore initial state for repeated sub-iterator executions | |
virtual void | nested_response_mappings (const RealMatrix &primary_coeffs, const RealMatrix &secondary_coeffs) |
set primaryResponseCoefficients, secondaryResponseCoefficients within derived Iterators; Necessary for scalarization case in MLMC NonDMultilevelSampling to map scalarization in nested context | |
virtual void | initialize_iterator (int job_index) |
used by IteratorScheduler to set the starting data for a run | |
virtual void | pack_parameters_buffer (MPIPackBuffer &send_buffer, int job_index) |
used by IteratorScheduler to pack starting data for an iterator run | |
virtual void | unpack_parameters_buffer (MPIUnpackBuffer &recv_buffer, int job_index) |
used by IteratorScheduler to unpack starting data for an iterator run | |
virtual void | unpack_parameters_initialize (MPIUnpackBuffer &recv_buffer, int job_index) |
used by IteratorScheduler to unpack starting data and initialize an iterator run | |
virtual void | pack_results_buffer (MPIPackBuffer &send_buffer, int job_index) |
used by IteratorScheduler to pack results data from an iterator run | |
virtual void | unpack_results_buffer (MPIUnpackBuffer &recv_buffer, int job_index) |
used by IteratorScheduler to unpack results data from an iterator run | |
virtual void | update_local_results (int job_index) |
used by IteratorScheduler to update local results arrays | |
virtual const RealSymMatrix & | response_error_estimates () const |
return error estimates associated with the final iterator solution | |
virtual bool | accepts_multiple_points () const |
indicates if this iterator accepts multiple initial points. Default return is false. Override to return true if appropriate. | |
virtual void | initial_point (const Variables &pt) |
sets the initial point for this iterator (user-functions mode for which Model updating is not used) | |
virtual void | initial_point (const RealVector &pt) |
sets the initial point (active continuous variables) for this iterator (user-functions mode for which Model updating is not used) | |
virtual void | initial_points (const VariablesArray &pts) |
sets the multiple initial points for this iterator. This should only be used if accepts_multiple_points() returns true. | |
virtual void | update_callback_data (const RealVector &cv_initial, const RealVector &cv_lower_bnds, const RealVector &cv_upper_bnds, const RealMatrix &lin_ineq_coeffs, const RealVector &lin_ineq_lb, const RealVector &lin_ineq_ub, const RealMatrix &lin_eq_coeffs, const RealVector &lin_eq_tgt, const RealVector &nln_ineq_lb, const RealVector &nln_ineq_ub, const RealVector &nln_eq_tgt) |
assign variable values and bounds and constraint coefficients and bounds for this iterator (user-functions mode for which iteratedModel is null) | |
virtual const RealMatrix & | callback_linear_ineq_coefficients () const |
return linear constraint coefficients for this iterator (user-functions mode for which iteratedModel is null) | |
virtual const RealVector & | callback_linear_ineq_lower_bounds () const |
return linear constraint lower bounds for this iterator (user-functions mode for which iteratedModel is null) | |
virtual const RealVector & | callback_linear_ineq_upper_bounds () const |
return linear constraint upper bounds for this iterator (user-functions mode for which iteratedModel is null) | |
virtual void | initialize_graphics (int iterator_server_id=1) |
initialize the 2D graphics window and the tabular graphics data More... | |
virtual void | check_sub_iterator_conflict () |
detect any conflicts due to recursive use of the same Fortran solver More... | |
virtual unsigned short | uses_method () const |
return name of any enabling iterator used by this iterator | |
virtual void | method_recourse (unsigned short method_name) |
perform a method switch, if possible, due to a detected conflict with the simultaneous use of method_name at an higher-level | |
virtual void | sampling_reset (size_t min_samples, bool all_data_flag, bool stats_flag) |
reset sampling iterator to use at least min_samples | |
virtual void | sampling_reference (size_t samples_ref) |
set reference number of samples, which is a lower bound during reset | |
virtual void | sampling_increment () |
increment to next in sequence of refinement samples | |
virtual void | random_seed (int seed) |
set randomSeed, if present | |
virtual unsigned short | sampling_scheme () const |
return sampling name | |
virtual IntIntPair | estimate_partition_bounds () |
estimate the minimum and maximum partition sizes that can be utilized by this Iterator | |
virtual void | declare_sources () |
Declare sources to the evaluations database. | |
void | init_communicators (ParLevLIter pl_iter) |
initialize the communicators associated with this Iterator instance | |
void | set_communicators (ParLevLIter pl_iter) |
set the communicators associated with this Iterator instance | |
void | free_communicators (ParLevLIter pl_iter) |
free the communicators associated with this Iterator instance | |
void | resize_communicators (ParLevLIter pl_iter, bool reinit_comms) |
Resize the communicators. This is called from the letter's resize() | |
void | parallel_configuration_iterator (ParConfigLIter pc_iter) |
set methodPCIter | |
ParConfigLIter | parallel_configuration_iterator () const |
return methodPCIter | |
void | parallel_configuration_iterator_map (std::map< size_t, ParConfigLIter > pci_map) |
set methodPCIterMap | |
std::map< size_t, ParConfigLIter > | parallel_configuration_iterator_map () const |
return methodPCIterMap | |
void | run (ParLevLIter pl_iter) |
invoke set_communicators(pl_iter) prior to run() | |
void | run () |
orchestrate initialize/pre/core/post/finalize phases More... | |
void | assign_rep (std::shared_ptr< Iterator > iterator_rep) |
replaces existing letter with a new one More... | |
void | iterated_model (const Model &model) |
set the iteratedModel (iterators and meta-iterators using a single model instance) | |
Model & | iterated_model () |
return the iteratedModel (iterators & meta-iterators using a single model instance) | |
ProblemDescDB & | problem_description_db () const |
return the problem description database (probDescDB) | |
ParallelLibrary & | parallel_library () const |
return the parallel library (parallelLib) | |
void | method_name (unsigned short m_name) |
set the method name to an enumeration value | |
unsigned short | method_name () const |
return the method name via its native enumeration value | |
void | method_string (const String &m_str) |
set the method name by string | |
String | method_string () const |
return the method name by string | |
String | method_enum_to_string (unsigned short method_enum) const |
convert a method name enumeration value to a string | |
unsigned short | method_string_to_enum (const String &method_str) const |
convert a method name string to an enumeration value | |
String | submethod_enum_to_string (unsigned short submethod_enum) const |
convert a sub-method name enumeration value to a string | |
const String & | method_id () const |
return the method identifier (methodId) | |
int | maximum_evaluation_concurrency () const |
return the maximum evaluation concurrency supported by the iterator | |
void | maximum_evaluation_concurrency (int max_conc) |
set the maximum evaluation concurrency supported by the iterator | |
size_t | maximum_iterations () const |
return the maximum iterations for this iterator | |
void | maximum_iterations (size_t max_iter) |
set the maximum iterations for this iterator | |
void | convergence_tolerance (Real conv_tol) |
set the method convergence tolerance (convergenceTol) | |
Real | convergence_tolerance () const |
return the method convergence tolerance (convergenceTol) | |
void | output_level (short out_lev) |
set the method output level (outputLevel) | |
short | output_level () const |
return the method output level (outputLevel) | |
void | summary_output (bool summary_output_flag) |
Set summary output control; true enables evaluation/results summary. | |
size_t | num_final_solutions () const |
return the number of solutions to retain in best variables/response arrays | |
void | num_final_solutions (size_t num_final) |
set the number of solutions to retain in best variables/response arrays | |
void | active_set (const ActiveSet &set) |
set the default active set (for use with iterators that employ evaluate_parameter_sets()) | |
const ActiveSet & | active_set () const |
return the default active set (used by iterators that employ evaluate_parameter_sets()) | |
void | active_set_request_vector (const ShortArray &asv) |
return the default active set request vector (used by iterators that employ evaluate_parameter_sets()) | |
const ShortArray & | active_set_request_vector () const |
return the default active set request vector (used by iterators that employ evaluate_parameter_sets()) | |
void | active_set_request_values (short asv_val) |
return the default active set request vector (used by iterators that employ evaluate_parameter_sets()) | |
void | sub_iterator_flag (bool si_flag) |
set subIteratorFlag (and update summaryOutputFlag if needed) | |
bool | is_null () const |
function to check iteratorRep (does this envelope contain a letter?) | |
std::shared_ptr< Iterator > | iterator_rep () const |
returns iteratorRep for access to derived class member functions that are not mapped to the top Iterator level | |
virtual void | eval_tag_prefix (const String &eval_id_str) |
set the hierarchical eval ID tag prefix More... | |
std::shared_ptr< TraitsBase > | traits () const |
returns methodTraits for access to derived class member functions that are not mapped to the top TraitsBase level | |
bool | top_level () |
Return whether the iterator is the top level iterator. | |
void | top_level (bool tflag) |
Set the iterator's top level flag. | |
Protected Member Functions | |
void | initialize_u_space_model () |
initialize uSpaceModel polynomial approximations with PCE/SC data | |
void | core_run () |
perform a forward uncertainty propagation using PCE/SC methods | |
void | assign_specification_sequence () |
assign the current values from the input specification sequence | |
void | increment_specification_sequence () |
increment the input specification sequence and assign values More... | |
size_t | collocation_points () const |
return specification for number of collocation points (may be part of a sequence specification) | |
int | random_seed () const |
return specification for random seed (may be part of a sequence specification) | |
int | first_seed () const |
return first seed in sequence specification (defaults to random_seed()) | |
void | initialize_ml_regression (size_t num_lev, bool &import_pilot) |
initializations for multilevel_regression() | |
void | infer_pilot_sample (size_t num_steps, SizetArray &delta_N_l) |
void | increment_sample_sequence (size_t new_samp, size_t total_samp, size_t step) |
increment sequence in numSamplesOnModel for multilevel_regression() | |
void | compute_sample_increment (const RealVector &sparsity, const SizetArray &N_l, SizetArray &delta_N_l) |
compute delta_N_l for {RIP,RANK}_SAMPLING cases | |
void | print_results (std::ostream &s, short results_state=FINAL_RESULTS) |
print the final statistics | |
void | assign_allocation_control () |
assign defaults related to allocation control (currently for ML regression approaches) | |
Protected Member Functions inherited from NonDPolynomialChaos | |
NonDPolynomialChaos (unsigned short method_name, ProblemDescDB &problem_db, Model &model) | |
base constructor for DB construction of multilevel/multifidelity PCE (method_name is not necessary, rather it is just a convenient overload allowing the derived ML PCE class to bypass the standard PCE ctor) More... | |
NonDPolynomialChaos (unsigned short method_name, Model &model, short exp_coeffs_approach, const RealVector &dim_pref, short u_space_type, short refine_type, short refine_control, short covar_control, short ml_alloc_control, short ml_discrep, short rule_nest, short rule_growth, bool piecewise_basis, bool use_derivs) | |
base constructor for lightweight construction of multifidelity PCE using numerical integration More... | |
NonDPolynomialChaos (unsigned short method_name, Model &model, short exp_coeffs_approach, const RealVector &dim_pref, short u_space_type, short refine_type, short refine_control, short covar_control, const SizetArray &colloc_pts_seq, Real colloc_ratio, short ml_alloc_control, short ml_discrep, bool piecewise_basis, bool use_derivs, bool cv_flag) | |
base constructor for lightweight construction of multilevel PCE using regression More... | |
void | derived_init_communicators (ParLevLIter pl_iter) |
derived class contributions to initializing the communicators associated with this Iterator instance | |
void | derived_set_communicators (ParLevLIter pl_iter) |
derived class contributions to setting the communicators associated with this Iterator instance | |
void | derived_free_communicators (ParLevLIter pl_iter) |
derived class contributions to freeing the communicators associated with this Iterator instance | |
void | resolve_inputs (short &u_space_type, short &data_order) |
perform error checks and mode overrides | |
void | initialize_u_space_model () |
initialize uSpaceModel polynomial approximations with PCE/SC data | |
size_t | collocation_points () const |
return specification for number of collocation points (may be part of a sequence specification) | |
void | compute_expansion () |
form the expansion by calling uSpaceModel.build_approximation() | |
void | select_refinement_points (const RealVectorArray &candidate_samples, unsigned short batch_size, RealMatrix &best_samples) |
evaluate allSamples for inclusion in the (PCE regression) approximation and retain the best set (well spaced) of size batch_size | |
void | select_refinement_points_deprecated (const RealVectorArray &candidate_samples, unsigned short batch_size, RealMatrix &best_samples) |
void | append_expansion (const RealMatrix &samples, const IntResponseMap &resp_map) |
append new data to uSpaceModel and, when appropriate, update expansion order | |
void | update_samples_from_order_increment () |
update numSamplesOnModel after an order increment | |
void | sample_allocation_metric (Real &sparsity_metric, Real power) |
accumulate one of the level metrics for {RIP,RANK}_SAMPLING cases | |
virtual void | post_run (std::ostream &s) override |
Inherit to allow on-the-fly instances to customize behavior. | |
void | print_results (std::ostream &s, short results_state=FINAL_RESULTS) |
print the final coefficients and final statistics | |
void | print_coefficients (std::ostream &s) |
print the PCE coefficient array for the orthogonal basis | |
void | export_coefficients () |
export the PCE coefficient array to expansionExportFile | |
void | archive_coefficients () |
archive the PCE coefficient array for the orthogonal basis | |
bool | config_integration (unsigned short quad_order, unsigned short ssg_level, unsigned short cub_int, Iterator &u_space_sampler, Model &g_u_model, String &approx_type) |
configure u_space_sampler and approx_type based on numerical integration specification | |
bool | config_expectation (size_t exp_samples, unsigned short sample_type, int seed, const String &rng, Iterator &u_space_sampler, Model &g_u_model, String &approx_type) |
configure u_space_sampler and approx_type based on expansion_samples specification | |
bool | config_regression (const UShortArray &exp_orders, size_t colloc_pts, Real colloc_ratio_order, short regress_type, short ls_regress_type, const UShortArray &tensor_grid_order, unsigned short sample_type, int seed, const String &rng, const String &pt_reuse, Iterator &u_space_sampler, Model &g_u_model, String &approx_type) |
configure u_space_sampler and approx_type based on regression specification | |
void | increment_order_from_grid () |
define an expansion order that is consistent with an advancement in structured/unstructured grid level/density More... | |
void | ratio_samples_to_order (Real colloc_ratio, int num_samples, UShortArray &exp_order, bool less_than_or_equal) |
convert collocation ratio and number of samples to expansion order | |
Protected Member Functions inherited from NonDExpansion | |
virtual void | initialize_expansion () |
initialize random variable definitions and final stats arrays | |
virtual void | finalize_expansion () |
finalize mappings for the uSpaceModel | |
virtual void | update_expansion () |
update an expansion; avoids overhead in compute_expansion() More... | |
virtual void | combined_to_active () |
combine coefficients, promote to active, and update statsMetricMode | |
virtual void | push_increment () |
helper function to manage different push increment cases | |
virtual void | pop_increment () |
helper function to manage different pop increment cases | |
virtual Real | compute_covariance_metric (bool revert, bool print_metric) |
compute 2-norm of change in response covariance More... | |
virtual Real | compute_level_mappings_metric (bool revert, bool print_metric) |
compute 2-norm of change in final statistics More... | |
virtual void | compute_statistics (short results_state=FINAL_RESULTS) |
calculate analytic and numerical statistics from the expansion, supporting {REFINEMENT,INTERMEDIATE,FINAL}_RESULTS modes More... | |
virtual void | pull_candidate (RealVector &stats_star) |
extract statistics from native stats arrays for a selected candidate | |
virtual void | push_candidate (const RealVector &stats_star) |
restore statistics into native stats arrays for a selected candidate | |
virtual void | finalize_ml_regression () |
finalizations for multilevel_regression() | |
virtual void | update_samples_from_order_decrement () |
update (restore previous) numSamplesOnModel after an order decrement More... | |
virtual void | print_sobol_indices (std::ostream &s) |
print global sensitivity indices | |
void | initialize_response_covariance () |
set covarianceControl defaults and shape respCovariance | |
void | update_final_statistics () |
update function values within finalStatistics | |
void | update_final_statistics_gradients () |
update function gradients within finalStatistics | |
void | assign_modes () |
verify supported and define default correction / emulation modes | |
void | assign_surrogate_response_mode () |
define the surrogate response mode for an ensemble model in multilevel/multifidelity expansions | |
void | initialize_u_space_grid () |
helper for initializing a numerical integration grid | |
void | check_dimension_preference (const RealVector &dim_pref) const |
check length and content of dimension preference vector | |
void | construct_cubature (Iterator &u_space_sampler, Model &g_u_model, unsigned short cub_int_order) |
assign a NonDCubature instance within u_space_sampler | |
void | construct_quadrature (Iterator &u_space_sampler, Model &g_u_model, unsigned short quad_order, const RealVector &dim_pref) |
assign a NonDQuadrature instance within u_space_sampler based on a quad_order specification | |
void | construct_quadrature (Iterator &u_space_sampler, Model &g_u_model, unsigned short quad_order, const RealVector &dim_pref, int filtered_samples) |
assign a NonDQuadrature instance within u_space_sampler that generates a filtered tensor product sample set | |
void | construct_quadrature (Iterator &u_space_sampler, Model &g_u_model, unsigned short quad_order, const RealVector &dim_pref, int random_samples, int seed) |
assign a NonDQuadrature instance within u_space_sampler that samples randomly from a tensor product multi-index | |
void | construct_sparse_grid (Iterator &u_space_sampler, Model &g_u_model, unsigned short ssg_level, const RealVector &dim_pref) |
assign a NonDSparseGrid instance within u_space_sampler | |
void | configure_expansion_orders (unsigned short exp_order, const RealVector &dim_pref, UShortArray &exp_orders) |
configure exp_orders from inputs | |
void | configure_pecos_options () |
configure expansion and basis configuration options for Pecos polynomial approximations | |
void | construct_expansion_sampler (unsigned short sample_type, const String &rng, unsigned short integration_refine=NO_INT_REFINE, const IntVector &refine_samples=IntVector(), const String &import_approx_file=String(), unsigned short import_approx_format=TABULAR_ANNOTATED, bool import_approx_active_only=false) |
construct the expansionSampler for evaluating samples on uSpaceModel | |
void | multifidelity_expansion () |
construct a multifidelity expansion, across model forms or discretization levels | |
void | multilevel_regression () |
allocate a multilevel expansion based on some approximation to an optimal resource allocation across model forms/discretization levels | |
void | configure_indices (size_t group, size_t form, size_t lev, short seq_type) |
configure response mode and active/truth/surrogate model keys within a hierarchical model. seq_type is the type of sequence that defines the active dimension for traversing a model sequence. | |
Real | sequence_cost (size_t step, const RealVector &cost) |
return aggregate cost (one or more models) for a level sample | |
void | compute_equivalent_cost (const SizetArray &N_l, const RealVector &cost) |
compute equivHFEvals from samples per level and cost per evaluation | |
void | compute_sample_increment (const RealVector &agg_var, const RealVector &cost, Real sum_root_var_cost, Real eps_sq_div_2, const SizetArray &N_l, SizetArray &delta_N_l) |
compute increment in samples for multilevel_regression() based on ESTIMATOR_VARIANCE | |
size_t | collocation_points (size_t index) const |
return number of collocation points for index within model sequence | |
int | seed_sequence (size_t index) const |
return random seed for index within model sequence More... | |
void | refine_expansion () |
refine the reference expansion found by compute_expansion() using uniform/adaptive p-/h-refinement strategies | |
void | pre_refinement () |
initialization of expansion refinement, if necessary | |
size_t | core_refinement (Real &metric, bool revert=false, bool print_metric=true) |
advance the refinement strategy one step | |
void | post_refinement (Real &metric, bool reverted=false) |
finalization of expansion refinement, if necessary | |
void | increment_grid (bool update_anisotropy=true) |
helper function to manage different grid increment cases | |
void | decrement_grid () |
helper function to manage different grid decrement cases | |
void | merge_grid () |
helper function to manage different grid merge cases | |
void | increment_order_and_grid () |
uniformly increment the expansion order and structured/unstructured grid (PCE and FT) More... | |
void | decrement_order_and_grid () |
uniformly decrement the expansion order and structured/unstructured grid (PCE and FT) More... | |
void | update_model_from_samples () |
publish numSamplesOnModel update to the DataFitSurrModel instance | |
void | update_u_space_sampler (size_t sequence_index, const UShortArray &approx_orders) |
perform sampler updates after a change to numSamplesOnModel (shared code from ML/MF updaters) | |
void | refinement_statistics_mode (short stats_mode) |
update statsMetricMode, here and in Pecos::ExpansionConfigOptions | |
void | metric_roll_up (short results_state=FINAL_RESULTS) |
perform any required expansion roll-ups prior to metric computation | |
void | aggregate_variance (Real &agg_var_l) |
Aggregate variance across the set of QoI for a particular model level. | |
void | compute_covariance () |
calculate the response covariance (diagonal or full matrix) for the expansion indicated by statsMetricMode | |
void | compute_active_covariance () |
calculate the response covariance of the active expansion | |
void | compute_combined_covariance () |
calculate the response covariance of the combined expansion | |
void | compute_active_diagonal_variance () |
calculate the diagonal response variance of the active expansion | |
void | compute_combined_diagonal_variance () |
calculate the diagonal response variance of the cmbined expansion | |
void | compute_off_diagonal_covariance () |
calculate off diagonal terms in respCovariance(i,j) for j<i for the expansion indicated by statsMetricMode | |
void | compute_active_off_diagonal_covariance () |
calculate off diagonal terms in respCovariance(i,j) for j<i using the active expansion coefficients | |
void | compute_combined_off_diagonal_covariance () |
calculate off diagonal terms in respCovariance(i,j) for j<i using the combined expansion coefficients | |
void | compute_moments () |
compute expansion moments; this uses a lightweight approach for incremental statistics (no additional moments; no finalStatistics update) | |
void | compute_level_mappings () |
compute all analytic/numerical level mappings; this uses a lightweight approach for incremental statistics (no derivatives, no finalStatistics update) | |
void | compute_numerical_level_mappings () |
compute only numerical level mappings; this uses a lightweight approach for incremental statistics (no derivatives, no finalStatistics update) | |
void | compute_sobol_indices () |
compute Sobol' indices for main, interaction, and total effects; this is intended for incremental statistics | |
void | print_covariance (std::ostream &s) |
print resp{Variance,Covariance} | |
void | print_variance (std::ostream &s, const RealVector &resp_var, const String &prepend="") |
print resp_var (response variance vector) using optional pre-pend | |
void | print_covariance (std::ostream &s, const RealSymMatrix &resp_covar, const String &prepend="") |
print resp_covar (response covariance matrix) using optional pre-pend | |
void | archive_moments () |
archive the central moments (numerical and expansion) to ResultsDB | |
void | archive_sobol_indices () |
archive the Sobol' indices to the resultsDB | |
void | pull_reference (RealVector &stats_ref) |
void | push_reference (const RealVector &stats_ref) |
void | pull_lower_triangle (const RealSymMatrix &mat, RealVector &vec, size_t offset=0) |
pull lower triangle of symmetric matrix into vector | |
void | push_lower_triangle (const RealVector &vec, RealSymMatrix &mat, size_t offset=0) |
push vector into lower triangle of symmetric matrix | |
int | terms_ratio_to_samples (size_t num_exp_terms, Real colloc_ratio) |
convert number of regression terms and collocation ratio to a number of collocation samples | |
Real | terms_samples_to_ratio (size_t num_exp_terms, int samples) |
convert number of regression terms and number of collocation samples to a collocation ratio | |
Protected Member Functions inherited from NonD | |
NonD (ProblemDescDB &problem_db, Model &model) | |
constructor | |
NonD (unsigned short method_name, Model &model) | |
alternate constructor for sample generation and evaluation "on the fly" | |
NonD (unsigned short method_name, Model &model, const ShortShortPair &approx_view) | |
alternate constructor for sample generation and evaluation "on the fly" | |
NonD (unsigned short method_name, const RealVector &lower_bnds, const RealVector &upper_bnds) | |
alternate constructor for sample generation "on the fly" | |
~NonD () | |
destructor | |
void | initialize_run () |
utility function to perform common operations prior to pre_run(); typically memory initialization; setting of instance pointers More... | |
void | finalize_run () |
utility function to perform common operations following post_run(); deallocation and resetting of instance pointers More... | |
const Response & | response_results () const |
return the final statistics from the nondeterministic iteration | |
void | response_results_active_set (const ActiveSet &set) |
set the active set within finalStatistics | |
virtual void | initialize_final_statistics () |
initializes finalStatistics for storing NonD final results More... | |
virtual bool | discrepancy_sample_counts () const |
flag identifying whether sample counts correspond to level discrepancies | |
void | pull_level_mappings (RealVector &level_maps, size_t offset) |
concatenate computed{Resp,Prob,Rel,GenRel}Levels into level_maps | |
void | push_level_mappings (const RealVector &level_maps, size_t offset) |
update computed{Resp,Prob,Rel,GenRel}Levels from level_maps | |
void | configure_1d_sequence (size_t &num_steps, size_t &secondary_index, short &seq_type) |
configure a one-dimensional hierarchical sequence (ML or MF) More... | |
void | configure_2d_sequence (size_t &num_steps, size_t &secondary_index, short &seq_type) |
configure a two-dimensional hierarchical sequence (MLMF) More... | |
void | configure_enumeration (size_t &num_combinations, short &seq_type) |
configure the total number of model form/resolution level options More... | |
short | configure_cost (size_t num_steps, short seq_type, RealVector &cost) |
extract cost estimates from model ensemble, enforcing requirements (case without metadata support) | |
short | configure_cost (size_t num_steps, short seq_type, RealVector &cost, SizetSizetPairArray &cost_md_indices) |
extract cost estimates from model ensemble, enforcing requirements (case with metadata support) | |
short | query_cost (size_t num_steps, short seq_type, RealVector &cost) |
optionally extract cost estimates from model ensemble, if available (case without metadata support) | |
short | query_cost (size_t num_steps, short seq_type, RealVector &cost, BitArray &model_cost_spec, const SizetSizetPairArray &cost_md_indices) |
optionally extract cost estimates from model ensemble, if available (case with metadata support) | |
void | test_cost (short seq_type, const BitArray &model_cost_spec, SizetSizetPairArray &cost_md_indices) |
check cost specification and metadata indices for each active model | |
bool | test_cost (bool cost_spec, SizetSizetPair &cost_md_indices, const String &model_id) |
check cost specification and metadata indices for a given model | |
bool | valid_cost (Real cost) const |
test cost for value > 0 | |
bool | valid_costs (const RealVector &costs) const |
test costs for valid values > 0 | |
void | load_pilot_sample (const SizetArray &pilot_spec, size_t num_steps, SizetArray &delta_N_l) |
distribute pilot sample specification across model forms or levels | |
void | load_pilot_sample (const SizetArray &pilot_spec, short seq_type, const Sizet3DArray &N_l, Sizet2DArray &delta_N_l) |
distribute pilot sample specification across model forms and levels | |
template<typename ArrayType > | |
void | inflate_approx_samples (const ArrayType &N_l, bool multilev, size_t secondary_index, std::vector< ArrayType > &N_l_vec) |
update the relevant slice of N_l_3D from the final 2D multilevel or 2D multifidelity sample profile | |
template<typename ArrayType > | |
void | inflate_sequence_samples (const ArrayType &N_l, bool multilev, size_t secondary_index, std::vector< ArrayType > &N_l_vec) |
update the relevant slice of N_l_3D from the final 2D multilevel or 2D multifidelity sample profile | |
void | resize_final_statistics_gradients () |
resizes finalStatistics::functionGradients based on finalStatistics ASV | |
void | update_aleatory_final_statistics () |
update finalStatistics::functionValues from momentStats and computed{Prob,Rel,GenRel,Resp}Levels | |
void | update_system_final_statistics () |
update system metrics from component metrics within finalStatistics | |
void | update_system_final_statistics_gradients () |
update finalStatistics::functionGradients | |
void | initialize_level_mappings () |
size computed{Resp,Prob,Rel,GenRel}Levels | |
void | compute_densities (const RealRealPairArray &min_max_fns, bool prob_refinement=false, bool all_levels_computed=false) |
compute the PDF bins from the CDF/CCDF values and store in computedPDF{Abscissas,Ordinates} More... | |
void | print_densities (std::ostream &s) const |
output the PDFs reflected in computedPDF{Abscissas,Ordinates} using default qoi_type and pdf_labels | |
void | print_densities (std::ostream &s, String qoi_type, const StringArray &pdf_labels) const |
output the PDFs reflected in computedPDF{Abscissas,Ordinates} | |
void | print_system_mappings (std::ostream &s) const |
print system series/parallel mappings for response levels | |
void | print_multilevel_evaluation_summary (std::ostream &s, const SizetArray &N_m) |
print evaluation summary for multilevel sampling across 1D level profile | |
void | print_multilevel_evaluation_summary (std::ostream &s, const Sizet2DArray &N_m) |
print evaluation summary for multilevel sampling across 2D level+QoI profile | |
void | print_multilevel_discrepancy_summary (std::ostream &s, const SizetArray &N_m) |
print evaluation summary for multilevel sampling across 1D level profile for discrepancy across levels | |
void | print_multilevel_discrepancy_summary (std::ostream &s, const SizetArray &N_m, const SizetArray &N_mp1) |
print evaluation summary for multilevel sampling across 1D level profile for discrepancy across model forms | |
void | print_multilevel_discrepancy_summary (std::ostream &s, const Sizet2DArray &N_m) |
print evaluation summary for multilevel sampling across 2D level+QoI profile for discrepancy across levels | |
void | print_multilevel_discrepancy_summary (std::ostream &s, const Sizet2DArray &N_m, const Sizet2DArray &N_mp1) |
print evaluation summary for multilevel sampling across 2D level+QoI profile for discrepancy across model forms | |
template<typename ArrayType > | |
void | print_multilevel_model_summary (std::ostream &s, const std::vector< ArrayType > &N_samp, String type, short seq_type, bool discrep_flag) |
print evaluation summary for multilevel sampling across 2D model+level profile (allocations) or 3D model+level+QoI profile (actual) | |
void | construct_lhs (Iterator &u_space_sampler, Model &u_model, unsigned short sample_type, int num_samples, int seed, const String &rng, bool vary_pattern, short sampling_vars_mode=ACTIVE) |
assign a NonDLHSSampling instance within u_space_sampler | |
unsigned short | sub_optimizer_select (unsigned short requested_sub_method, unsigned short default_sub_method=SUBMETHOD_NPSOL) |
utility for vetting sub-method request against optimizers within the package configuration | |
size_t | one_sided_relax_round (Real diff, Real relax_factor=1.) |
compute a one-sided sample increment for multilevel methods to move current sampling level to a new target | |
size_t | one_sided_delta (Real current, Real target, Real relax_factor=1.) |
compute a one-sided sample increment for multilevel methods to move current sampling level to a new target | |
size_t | one_sided_delta (const SizetArray ¤t, const RealVector &targets, Real relax_factor=1., size_t power=1) |
compute a one-sided sample increment for multilevel methods to move current sampling level to a new target | |
size_t | one_sided_delta (const SizetArray ¤t, Real target, Real relax_factor=1., size_t power=1) |
compute a one-sided sample increment for multilevel methods to move current sampling level to a new target | |
void | one_sided_delta (const SizetArray ¤t, const RealVector &targets, SizetArray &delta_N, Real relax_factor=1.) |
compute a one-sided sample increment vector to move current sampling levels to new targets | |
void | one_sided_delta (const Sizet2DArray ¤t, const RealVector &targets, SizetArray &delta_N, Real relax_factor=1.) |
compute a one-sided sample increment vector to move current sampling levels to new targets | |
bool | differ (size_t N_alloc_ij, const SizetArray &N_actual_ij) const |
return true if fine-grained reporting differs from coarse-grained | |
bool | differ (const SizetArray &N_alloc_i, const Sizet2DArray &N_actual_i) const |
return true if fine-grained reporting differs from coarse-grained | |
bool | differ (const Sizet2DArray &N_alloc, const Sizet3DArray &N_actual) const |
return true if fine-grained reporting differs from coarse-grained | |
void | archive_allocate_mappings () |
allocate results array storage for distribution mappings | |
void | archive_from_resp (size_t fn_index, size_t inc_id=0) |
archive the mappings from specified response levels for specified fn | |
void | archive_to_resp (size_t fn_index, size_t inc_id=0) |
archive the mappings to computed response levels for specified fn and (optional) increment id. | |
void | archive_allocate_pdf () |
allocate results array storage for pdf histograms | |
void | archive_pdf (size_t fn_index, size_t inc_id=0) |
archive a single pdf histogram for specified function | |
void | archive_equiv_hf_evals (const Real equiv_hf_evals) |
archive the equivalent number of HF evals (used by ML/MF methods) | |
bool | zeros (const SizetArray &N_m) const |
return true if N_m is empty or only populated with zeros | |
bool | zeros (const Sizet2DArray &N_m) const |
return true if N_m is empty or only populated with zeros | |
bool | zeros (const SizetVector &N_m) const |
return true if N_m is empty or only populated with zeros | |
bool | homogeneous (const SizetArray &N_l) const |
return true if N_l has consistent values | |
Protected Member Functions inherited from Analyzer | |
Analyzer () | |
default constructor | |
Analyzer (ProblemDescDB &problem_db, Model &model) | |
standard constructor | |
Analyzer (unsigned short method_name, Model &model) | |
alternate constructor for instantiations "on the fly" with a Model | |
Analyzer (unsigned short method_name, Model &model, const ShortShortPair &view_override) | |
alternate constructor for instantiations "on the fly" with a Model | |
Analyzer (unsigned short method_name) | |
alternate constructor for instantiations "on the fly" without a Model | |
~Analyzer () | |
destructor | |
virtual void | get_parameter_sets (Model &model) |
Generate one block of numSamples samples (ndim * num_samples), populating allSamples; ParamStudy is the only class that specializes to use allVariables. | |
virtual void | get_parameter_sets (Model &model, const size_t num_samples, RealMatrix &design_matrix) |
Generate one block of numSamples samples (ndim * num_samples), populating design_matrix. | |
virtual void | update_model_from_sample (Model &model, const Real *sample_vars) |
update model's current variables with data from sample | |
virtual void | update_model_from_variables (Model &model, const Variables &vars) |
update model's current variables with data from vars | |
virtual void | sample_to_variables (const Real *sample_vars, Variables &vars) |
convert column of samples array to variables; derived classes may reimplement for more than active continuous variables More... | |
void | update_from_model (const Model &model) |
set inherited data attributes based on extractions from incoming model | |
void | pre_run () |
pre-run portion of run (optional); re-implemented by Iterators which can generate all Variables (parameter sets) a priori More... | |
void | pre_output () |
const Variables & | variables_results () const |
return a single final iterator solution (variables) | |
const VariablesArray & | variables_array_results () |
return multiple final iterator solutions (variables). This should only be used if returns_multiple_points() returns true. | |
const ResponseArray & | response_array_results () |
return multiple final iterator solutions (response). This should only be used if returns_multiple_points() returns true. | |
bool | compact_mode () const |
returns Analyzer::compactMode | |
bool | returns_multiple_points () const |
indicates if this iterator returns multiple final points. Default return is false. Override to return true if appropriate. | |
void | evaluate_parameter_sets (Model &model, bool log_resp_flag=true, bool log_best_flag=false) |
perform function evaluations to map parameter sets (allVariables) into response sets (allResponses) More... | |
void | evaluate_batch (Model &model, int batch_id, bool log_best_flag=false) |
perform function evaluations to map a keyed batch of parameter sets (allVariablesMap[key]) into a corresponding batch of response sets (allResponsesMap[key]) | |
const IntIntResponse2DMap & | synchronize_batches (Model &model, bool log_best_flag=false) |
perform function evaluations to map a keyed batch of parameter sets (allVariablesMap[key]) into a corresponding batch of response sets (allResponsesMap[key]) | |
void | clear_batches () |
since synchronize returns the aggregation of all evaluated batches, we use a separate call to indicate when processing of this data is complete and bookkeeping can be cleared | |
void | get_vbd_parameter_sets (Model &model, size_t num_samples) |
generate replicate parameter sets for use in variance-based decomposition More... | |
virtual void | archive_model_variables (const Model &, size_t idx) const |
archive model evaluation points | |
virtual void | archive_model_response (const Response &, size_t idx) const |
archive model evaluation responses | |
void | read_variables_responses (int num_evals, size_t num_vars) |
convenience function for reading variables/responses (used in derived classes post_input) More... | |
void | samples_to_variables_array (const RealMatrix &sample_matrix, VariablesArray &vars_array) |
convert samples array to variables array; e.g., allSamples to allVariables | |
virtual void | variables_to_sample (const Variables &vars, Real *sample_c_vars) |
convert the active continuous variables into a column of allSamples More... | |
void | variables_array_to_samples (const VariablesArray &vars_array, RealMatrix &sample_matrix) |
convert variables array to samples array; e.g., allVariables to allSamples | |
Protected Member Functions inherited from Iterator | |
Iterator (BaseConstructor, ProblemDescDB &problem_db, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
constructor initializes the base class part of letter classes (BaseConstructor overloading avoids infinite recursion in the derived class constructors - Coplien, p. 139) More... | |
Iterator (NoDBBaseConstructor, unsigned short method_name, Model &model, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
alternate constructor for base iterator classes constructed on the fly More... | |
Iterator (NoDBBaseConstructor, unsigned short method_name, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
alternate constructor for base iterator classes constructed on the fly More... | |
Iterator (NoDBBaseConstructor, Model &model, size_t max_iter, size_t max_eval, Real conv_tol, std::shared_ptr< TraitsBase > traits=std::shared_ptr< TraitsBase >(new TraitsBase())) | |
alternate envelope constructor for instantiations without ProblemDescDB More... | |
virtual const VariablesArray & | initial_points () const |
gets the multiple initial points for this iterator. This will only be meaningful after a call to initial_points mutator. | |
StrStrSizet | run_identifier () const |
get the unique run identifier based on method name, id, and number of executions | |
void | initialize_model_graphics (Model &model, int iterator_server_id) |
helper function that encapsulates initialization operations, modular on incoming Model instance More... | |
void | export_final_surrogates (Model &data_fit_surr_model) |
export final surrogates generated, e.g., GP in EGO and friends More... | |
Private Member Functions | |
size_t | expansion_samples (size_t index) const |
unsigned short | expansion_order (size_t index) const |
unsigned short | quadrature_order (size_t index) const |
unsigned short | sparse_grid_level (size_t index) const |
size_t | expansion_samples () const |
unsigned short | expansion_order () const |
unsigned short | quadrature_order () const |
unsigned short | sparse_grid_level () const |
void | update_from_specification (bool update_exp, bool update_sampler, bool update_from_ratio) |
perform specification updates (shared code from | |
Private Attributes | |
UShortArray | expOrderSeqSpec |
user specification for expansion_order (array for multifidelity) | |
SizetArray | expSamplesSeqSpec |
user specification for expansion_samples (array for multifidelity) | |
UShortArray | quadOrderSeqSpec |
user request of quadrature order | |
UShortArray | ssgLevelSeqSpec |
user request of sparse grid level | |
size_t | sequenceIndex |
sequence index for {...}SeqSpec | |
Additional Inherited Members | |
Static Protected Member Functions inherited from Iterator | |
static void | gnewton_set_recast (const Variables &recast_vars, const ActiveSet &recast_set, ActiveSet &sub_model_set) |
conversion of request vector values for the Gauss-Newton Hessian approximation More... | |
Protected Attributes inherited from NonDPolynomialChaos | |
short | uSpaceType |
user requested expansion type | |
unsigned short | cubIntSpec |
cubature integrand | |
bool | crossValidation |
flag for use of cross-validation for selection of parameter settings in regression approaches | |
bool | crossValidNoiseOnly |
flag to restrict cross-validation to only estimate the noise tolerance in order to manage computational cost | |
unsigned short | maxCVOrderCandidates |
maximum number of expansion order candidates for cross-validation in regression-based PCE | |
bool | respScaling |
flag for scaling response data to [0,1] for alignment with regression tols | |
String | importBuildPointsFile |
user-specified file for importing build points | |
String | expansionImportFile |
filename for import of chaos coefficients | |
String | expansionExportFile |
filename for export of chaos coefficients | |
Protected Attributes inherited from NonDExpansion | |
Model | uSpaceModel |
Model representing the approximate response function in u-space, after u-space recasting and polynomial data fit recursions. | |
Iterator | expansionSampler |
Iterator used for sampling on the uSpaceModel to generate approximate probability/reliability/response level statistics. Currently this is an LHS sampling instance, but AIS could also be used. | |
Iterator | importanceSampler |
Iterator used to refine the approximate probability estimates generated by the expansionSampler using importance sampling. | |
short | expansionCoeffsApproach |
method for collocation point generation and subsequent calculation of the expansion coefficients | |
short | expansionBasisType |
type of expansion basis: DEFAULT_BASIS or Pecos::{NODAL,HIERARCHICAL}_INTERPOLANT for SC or Pecos::{TENSOR_PRODUCT,TOTAL_ORDER,ADAPTED}_BASIS for PCE regression | |
short | statsMetricMode |
type of statistical metric roll-up: {NO,ACTIVE,COMBINED}_EXPANSION_STATS | |
bool | relativeMetric |
flag indicating the use of relative scaling in refinement metrics | |
RealVector | dimPrefSpec |
user specification for dimension_preference | |
SizetArray | collocPtsSeqSpec |
user specification of number of initial samples per model instance, including adaptive cases where an optimal sample profile is the target of iteration (e.g., multilevel_regression()) | |
Real | collocRatio |
factor applied to terms^termsOrder in computing number of regression points, either user-specified or inferred | |
Real | termsOrder |
exponent applied to number of expansion terms for computing number of regression points (usually 1) | |
int | randomSeed |
seed for random number generator (used for regression with LHS and sub-sampled tensor grids, as well as for expansionSampler) | |
SizetArray | randomSeedSeqSpec |
user specification for seed_sequence | |
bool | fixedSeed |
don't continue an existing random number sequence, rather reset seed each time within some sampling-based iteration | |
size_t | mlmfIter |
top level iteration counter in adaptive NonDExpansion ML/MF algorithms, allowing special updating logic for some sequence handlers | |
bool | allVars |
flag for combined variable expansions which include a non-probabilistic subset (design, epistemic, state) | |
bool | tensorRegression |
option for regression FT using a filtered set of tensor-product quadrature points | |
short | multilevAllocControl |
type of sample allocation scheme for discretization levels / model forms within multilevel / multifidelity methods | |
short | multilevDiscrepEmulation |
emulation approach for multilevel / multifidelity discrepancy: distinct or recursive | |
SizetArray | NLev |
number of samples allocated to each level of a discretization/model hierarchy within multilevel/multifidelity methods | |
Real | equivHFEvals |
equivalent number of high fidelity evaluations accumulated using samples across multiple model forms and/or discretization levels | |
Real | kappaEstimatorRate |
rate parameter for allocation by ESTIMATOR_VARIANCE in multilevel_regression() | |
Real | gammaEstimatorScale |
scale parameter for allocation by ESTIMATOR_VARIANCE in multilevel_regression() | |
int | numSamplesOnModel |
number of truth samples performed on g_u_model to form the expansion | |
int | numSamplesOnExpansion |
number of approximation samples performed on the polynomial expansion in order to estimate probabilities | |
bool | nestedRules |
flag for indicating state of nested and non_nested overrides of default rule nesting, which depends on the type of integration driver; this is defined in construct_{quadrature,sparse_grid}(), such that override attributes (defined in ctors) must be used upstream | |
short | ruleNestingOverride |
user override of default rule nesting: NO_NESTING_OVERRIDE, NESTED, or NON_NESTED | |
short | ruleGrowthOverride |
user override of default rule growth: NO_GROWTH_OVERRIDE, RESTRICTED, or UNRESTRICTED | |
bool | piecewiseBasis |
flag for piecewise specification, indicating usage of local basis polynomials within the stochastic expansion | |
bool | useDerivs |
flag for use_derivatives specification, indicating usage of derivative data (with respect to expansion variables) to enhance the calculation of the stochastic expansion. More... | |
RealVector | initialPtU |
stores the initial variables data in u-space | |
short | refineType |
refinement type: NO_REFINEMENT, P_REFINEMENT, or H_REFINEMENT | |
short | refineControl |
refinement control: NO_CONTROL, UNIFORM_CONTROL, LOCAL_ADAPTIVE_CONTROL, DIMENSION_ADAPTIVE_CONTROL_SOBOL, DIMENSION_ADAPTIVE_CONTROL_DECAY, or DIMENSION_ADAPTIVE_CONTROL_GENERALIZED | |
short | refineMetric |
refinement metric: NO_METRIC, COVARIANCE_METRIC, LEVEL_STATS_METRIC, or MIXED_STATS_METRIC | |
short | covarianceControl |
enumeration for controlling response covariance calculation and output: {DEFAULT,DIAGONAL,FULL}_COVARIANCE | |
unsigned short | softConvLimit |
number of consecutive iterations within tolerance required to indicate soft convergence | |
RealSymMatrix | respCovariance |
symmetric matrix of analytic response covariance (full response covariance option) | |
RealVector | respVariance |
vector of response variances (diagonal response covariance option) | |
RealVector | statsStar |
stats of the best refinement candidate for the current model indices | |
size_t | numUncertainQuant |
number of invocations of core_run() | |
Protected Attributes inherited from NonD | |
NonD * | prevNondInstance |
pointer containing previous value of nondInstance | |
size_t | startCAUV |
starting index of continuous aleatory uncertain variables within active continuous variables (convenience for managing offsets) | |
size_t | numCAUV |
number of active continuous aleatory uncertain variables | |
bool | epistemicStats |
flag for computing interval-type metrics instead of integrated metrics If any epistemic vars are active in a metric evaluation, then flag is set. | |
RealMatrix | momentStats |
standardized or central resp moments, as determined by finalMomentsType. Calculated in compute_moments()) and indexed as (moment,fn). | |
RealVectorArray | requestedRespLevels |
requested response levels for all response functions | |
RealVectorArray | computedProbLevels |
output probability levels for all response functions resulting from requestedRespLevels | |
RealVectorArray | computedRelLevels |
output reliability levels for all response functions resulting from requestedRespLevels | |
RealVectorArray | computedGenRelLevels |
output generalized reliability levels for all response functions resulting from requestedRespLevels | |
short | respLevelTarget |
indicates mapping of z->p (PROBABILITIES), z->beta (RELIABILITIES), or z->beta* (GEN_RELIABILITIES) | |
short | respLevelTargetReduce |
indicates component or system series/parallel failure metrics | |
RealVectorArray | requestedProbLevels |
requested probability levels for all response functions | |
RealVectorArray | requestedRelLevels |
requested reliability levels for all response functions | |
RealVectorArray | requestedGenRelLevels |
requested generalized reliability levels for all response functions | |
RealVectorArray | computedRespLevels |
output response levels for all response functions resulting from requestedProbLevels, requestedRelLevels, or requestedGenRelLevels | |
size_t | totalLevelRequests |
total number of levels specified within requestedRespLevels, requestedProbLevels, and requestedRelLevels | |
bool | cdfFlag |
flag for type of probabilities/reliabilities used in mappings: cumulative/CDF (true) or complementary/CCDF (false) | |
bool | pdfOutput |
flag for managing output of response probability density functions (PDFs) | |
RealVectorArray | computedPDFAbscissas |
sorted response PDF intervals bounds extracted from min/max sample and requested/computedRespLevels (vector lengths = num bins + 1) | |
RealVectorArray | computedPDFOrdinates |
response PDF densities computed from bin counts divided by (unequal) bin widths (vector lengths = num bins) | |
Response | finalStatistics |
final statistics from the uncertainty propagation used in strategies: response means, standard deviations, and probabilities of failure | |
short | finalMomentsType |
type of moments logged within finalStatistics: none, central, standard | |
size_t | miPLIndex |
index for the active ParallelLevel within ParallelConfiguration::miPLIters | |
BitArray | pdfComputed |
Whether PDF was computed for function i; used to determine whether a pdf should be archived. | |
Protected Attributes inherited from Analyzer | |
size_t | numFunctions |
number of response functions | |
size_t | numContinuousVars |
number of active continuous vars | |
size_t | numDiscreteIntVars |
number of active discrete integer vars | |
size_t | numDiscreteStringVars |
number of active discrete string vars | |
size_t | numDiscreteRealVars |
number of active discrete real vars | |
bool | compactMode |
switch for allSamples (compact mode) instead of allVariables (normal mode) | |
VariablesArray | allVariables |
array of all variables to be evaluated in evaluate_parameter_sets() | |
RealMatrix | allSamples |
compact alternative to allVariables | |
IntResponseMap | allResponses |
array of all responses to be computed in evaluate_parameter_sets() | |
IntIntVariables2DMap | batchVariablesMap |
alternate container for Variables samples supporting evaluate_batch() and synchronize_batches(), a 2D map with outer batch_id and inner eval_id | |
IntIntRealVector2DMap | batchSamplesMap |
alternate container for RealVector samples supporting evaluate_batch() and synchronize_batches(), a 2D map with outer batch_id and inner eval_id | |
IntIntResponse2DMap | batchResponsesMap |
alternate container for Response samples supporting evaluate_batch() and synchronize_batches(), a 2D map with outer batch_id and inner eval_id | |
StringArray | allHeaders |
array of headers to insert into output while evaluating allVariables | |
size_t | numObjFns |
number of objective functions | |
size_t | numLSqTerms |
number of least squares terms | |
RealPairPRPMultiMap | bestVarsRespMap |
map which stores best set of solutions | |
bool | vbdFlag |
flag indicating the activation of variance-bsaed decomposition for computing Sobol' indices, via either PCE or sampling | |
Real | vbdDropTol |
tolerance for omitting output of small VBD indices computed via either PCE or sampling | |
Protected Attributes inherited from Iterator | |
ProblemDescDB & | probDescDB |
class member reference to the problem description database More... | |
ParallelLibrary & | parallelLib |
class member reference to the parallel library | |
ParConfigLIter | methodPCIter |
the active ParallelConfiguration used by this Iterator instance | |
Model | iteratedModel |
the model to be iterated (for iterators and meta-iterators employing a single model instance) | |
size_t | myModelLayers |
number of Models locally (in Iterator or derived classes) wrapped around the initially passed in Model | |
unsigned short | methodName |
name of the iterator (the user's method spec) | |
Real | convergenceTol |
iteration convergence tolerance | |
size_t | maxIterations |
maximum number of iterations for the method | |
size_t | maxFunctionEvals |
maximum number of fn evaluations for the method | |
int | maxEvalConcurrency |
maximum number of concurrent model evaluations More... | |
ActiveSet | activeSet |
the response data requirements on each function evaluation | |
size_t | numFinalSolutions |
number of solutions to retain in best variables/response arrays | |
VariablesArray | bestVariablesArray |
collection of N best solution variables found during the study; always in context of Model originally passed to the Iterator (any in-flight Recasts must be undone) | |
ResponseArray | bestResponseArray |
collection of N best solution responses found during the study; always in context of Model originally passed to the Iterator (any in-flight Recasts must be undone) | |
bool | subIteratorFlag |
flag indicating if this Iterator is a sub-iterator (NestedModel::subIterator or DataFitSurrModel::daceIterator) | |
short | outputLevel |
output verbosity level: {SILENT,QUIET,NORMAL,VERBOSE,DEBUG}_OUTPUT | |
bool | summaryOutputFlag |
flag for summary output (evaluation stats, final results); default true, but false for on-the-fly (helper) iterators and sub-iterator use cases | |
ResultsManager & | resultsDB |
reference to the global iterator results database | |
EvaluationStore & | evaluationsDB |
reference to the global evaluation database | |
EvaluationsDBState | evaluationsDBState |
State of evaluations DB for this iterator. | |
ResultsNames | resultsNames |
valid names for iterator results | |
std::shared_ptr< TraitsBase > | methodTraits |
pointer that retains shared ownership of a TraitsBase object, or child thereof | |
bool | topLevel |
Whether this is the top level iterator. | |
bool | exportSurrogate = false |
whether to export final surrogates | |
String | surrExportPrefix |
base filename for exported surrogates | |
unsigned short | surrExportFormat = NO_MODEL_FORMAT |
(bitwise) format(s) to export | |
Static Protected Attributes inherited from NonD | |
static NonD * | nondInstance |
pointer to the active object instance used within static evaluator functions in order to avoid the need for static data | |
Nonintrusive polynomial chaos expansion approaches to uncertainty quantification.
The NonDMultilevelPolynomialChaos class uses a polynomial chaos expansion (PCE) approach to approximate the effect of parameter uncertainties on response functions of interest. It utilizes the OrthogPolyApproximation class to manage multiple types of orthogonal polynomials within a Wiener-Askey scheme to PCE. It supports PCE coefficient estimation via sampling, quadrature, point-collocation, and file import.
NonDMultilevelPolynomialChaos | ( | ProblemDescDB & | problem_db, |
Model & | model | ||
) |
standard constructor
This constructor is called for a standard letter-envelope iterator instantiation using the ProblemDescDB.
References Dakota::abort_handler(), Response::active_set(), NonDMultilevelPolynomialChaos::assign_allocation_control(), NonDExpansion::assign_modes(), Model::assign_rep(), NonDMultilevelPolynomialChaos::collocation_points(), ParallelLibrary::command_line_check(), NonDPolynomialChaos::config_expectation(), NonDPolynomialChaos::config_integration(), NonDPolynomialChaos::config_regression(), NonDExpansion::configure_expansion_orders(), NonDExpansion::construct_expansion_sampler(), NonDPolynomialChaos::cubIntSpec, Model::current_response(), Model::current_variables(), ActiveSet::derivative_vector(), NonDExpansion::dimPrefSpec, ProblemDescDB::get_bool(), ProblemDescDB::get_iv(), ProblemDescDB::get_real(), ProblemDescDB::get_short(), ProblemDescDB::get_string(), ProblemDescDB::get_sza(), ProblemDescDB::get_usa(), ProblemDescDB::get_ushort(), NonDPolynomialChaos::importBuildPointsFile, NonDMultilevelPolynomialChaos::initialize_u_space_model(), Iterator::iteratedModel, NonDExpansion::numSamplesOnModel, Iterator::outputLevel, Iterator::parallelLib, Iterator::probDescDB, Model::qoi(), NonDMultilevelPolynomialChaos::random_seed(), NonDExpansion::randomSeedSeqSpec, NonDPolynomialChaos::resolve_inputs(), NonDExpansion::uSpaceModel, NonDPolynomialChaos::uSpaceType, and Variables::view().
NonDMultilevelPolynomialChaos | ( | Model & | model, |
short | exp_coeffs_approach, | ||
const UShortArray & | num_int_seq, | ||
const RealVector & | dim_pref, | ||
short | u_space_type, | ||
short | refine_type, | ||
short | refine_control, | ||
short | covar_control, | ||
short | ml_alloc_control, | ||
short | ml_discrep, | ||
short | rule_nest, | ||
short | rule_growth, | ||
bool | piecewise_basis, | ||
bool | use_derivs | ||
) |
alternate constructor for numerical integration (tensor, sparse, cubature)
This constructor is used for helper iterator instantiation on the fly that employ numerical integration (quadrature, sparse grid, cubature).
References Dakota::abort_handler(), Response::active_set(), NonDMultilevelPolynomialChaos::assign_allocation_control(), NonDExpansion::assign_modes(), Model::assign_rep(), NonDPolynomialChaos::config_integration(), NonDPolynomialChaos::cubIntSpec, Model::current_response(), Model::current_variables(), ActiveSet::derivative_vector(), NonDMultilevelPolynomialChaos::initialize_u_space_model(), Iterator::iteratedModel, Iterator::outputLevel, Model::qoi(), NonDMultilevelPolynomialChaos::quadOrderSeqSpec, NonDPolynomialChaos::resolve_inputs(), NonDMultilevelPolynomialChaos::sequenceIndex, NonDMultilevelPolynomialChaos::ssgLevelSeqSpec, NonDExpansion::uSpaceModel, NonDPolynomialChaos::uSpaceType, and Variables::view().
NonDMultilevelPolynomialChaos | ( | unsigned short | method_name, |
Model & | model, | ||
short | exp_coeffs_approach, | ||
const UShortArray & | exp_order_seq, | ||
const RealVector & | dim_pref, | ||
const SizetArray & | colloc_pts_seq, | ||
Real | colloc_ratio, | ||
const SizetArray & | seed_seq, | ||
short | u_space_type, | ||
short | refine_type, | ||
short | refine_control, | ||
short | covar_control, | ||
short | ml_alloc_control, | ||
short | ml_discrep, | ||
bool | piecewise_basis, | ||
bool | use_derivs, | ||
bool | cv_flag, | ||
const String & | import_build_pts_file, | ||
unsigned short | import_build_format, | ||
bool | import_build_active_only | ||
) |
alternate constructor for regression (least squares, CS, OLI)
This constructor is used for helper iterator instantiation on the fly that employ regression (least squares, CS, OLI).
References Response::active_set(), NonDMultilevelPolynomialChaos::assign_allocation_control(), NonDExpansion::assign_modes(), Model::assign_rep(), NonDMultilevelPolynomialChaos::collocation_points(), NonDPolynomialChaos::config_regression(), NonDExpansion::configure_expansion_orders(), Model::current_response(), Model::current_variables(), ActiveSet::derivative_vector(), NonDExpansion::dimPrefSpec, NonDMultilevelPolynomialChaos::initialize_u_space_model(), Iterator::iteratedModel, Iterator::outputLevel, Model::qoi(), NonDMultilevelPolynomialChaos::random_seed(), NonDExpansion::randomSeedSeqSpec, NonDPolynomialChaos::resolve_inputs(), NonDExpansion::uSpaceModel, NonDPolynomialChaos::uSpaceType, and Variables::view().
|
protectedvirtual |
increment the input specification sequence and assign values
Default implementation redefined by Multilevel derived classes.
Reimplemented from NonDExpansion.
References Dakota::abort_handler(), NonDExpansion::collocPtsSeqSpec, NonDExpansion::expansionCoeffsApproach, NonDMultilevelPolynomialChaos::expOrderSeqSpec, NonDMultilevelPolynomialChaos::expSamplesSeqSpec, Iterator::iterator_rep(), NonDExpansion::numSamplesOnModel, NonDMultilevelPolynomialChaos::quadOrderSeqSpec, NonDExpansion::randomSeedSeqSpec, NonDMultilevelPolynomialChaos::sequenceIndex, NonDMultilevelPolynomialChaos::ssgLevelSeqSpec, Model::subordinate_iterator(), NonDMultilevelPolynomialChaos::update_from_specification(), and NonDExpansion::uSpaceModel.
|
protectedvirtual |
Default implementation redefined by Multilevel derived classes.
Reimplemented from NonDExpansion.
References NonDExpansion::collocRatio, NonDExpansion::configure_expansion_orders(), NonDExpansion::dimPrefSpec, NonDExpansion::expansionBasisType, and NonDExpansion::terms_ratio_to_samples().