$extrastylesheet
Dakota
Version 6.2
|
Wrapper class for the FSUDace QMC/CVT library. More...
Public Member Functions | |
FSUDesignCompExp (ProblemDescDB &problem_db, Model &model) | |
primary constructor for building a standard DACE iterator | |
FSUDesignCompExp (Model &model, int samples, int seed, unsigned short sampling_method) | |
alternate constructor for building a DACE iterator on-the-fly | |
~FSUDesignCompExp () | |
destructor | |
void | pre_run () |
pre-run portion of run (optional); re-implemented by Iterators which can generate all Variables (parameter sets) a priori | |
void | extract_trends () |
Mapping of the core_run() virtual function for the PStudy/DACE branch. | |
void | post_input () |
read tabular data for post-run mode | |
void | post_run (std::ostream &s) |
post-run portion of run (optional); verbose to print results; re-implemented by Iterators that can read all Variables/Responses and perform final analysis phase in a standalone way | |
int | num_samples () const |
void | sampling_reset (int min_samples, bool all_data_flag, bool stats_flag) |
reset sampling iterator to use at least min_samples | |
unsigned short | sampling_scheme () const |
return sampling name | |
void | vary_pattern (bool pattern_flag) |
sets varyPattern in derived classes that support it | |
void | get_parameter_sets (Model &model) |
Returns one block of samples (ndim * num_samples) | |
Private Member Functions | |
void | enforce_input_rules () |
enforce sanity checks/modifications for the user input specification | |
Private Attributes | |
int | samplesSpec |
initial specification of number of samples | |
int | numSamples |
current number of samples to be evaluated | |
bool | allDataFlag |
flag which triggers the update of allVars/allResponses for use by Iterator::all_variables() and Iterator::all_responses() | |
size_t | numDACERuns |
counter for number of executions for this object | |
bool | latinizeFlag |
flag which specifies latinization of QMC or CVT sample sets | |
IntVector | sequenceStart |
Integer vector defining a starting index into the sequence for random variable sampled. Default is 0 0 0 (e.g. for three random variables). | |
IntVector | sequenceLeap |
Integer vector defining the leap number for each sequence being generated. Default is 1 1 1 (e.g. for three random vars.) | |
IntVector | primeBase |
Integer vector defining the prime base for each sequence being generated. Default is 2 3 5 (e.g., for three random vars.) | |
int | seedSpec |
the user seed specification for the random number generator (allows repeatable results) | |
int | randomSeed |
current seed for the random number generator | |
bool | varyPattern |
flag for continuing the random number or QMC sequence from a previous execution (e.g., for surrogate-based optimization) so that multiple executions are repeatable but not identical. | |
int | numCVTTrials |
specifies the number of sample points taken at internal CVT iteration | |
int | trialType |
Trial type in CVT. Specifies where the points are placed for consideration relative to the centroids. Choices are grid (2), halton (1), uniform (0), or random (-1). Default is random. |
Wrapper class for the FSUDace QMC/CVT library.
The FSUDesignCompExp class provides a wrapper for FSUDace, a C++ design of experiments library from Florida State University. This class uses quasi Monte Carlo (QMC) and Centroidal Voronoi Tesselation (CVT) methods to uniformly sample the parameter space spanned by the active bounds of the current Model. It returns all generated samples and their corresponding responses as well as the best sample found.
FSUDesignCompExp | ( | ProblemDescDB & | problem_db, |
Model & | model | ||
) |
primary constructor for building a standard DACE iterator
This constructor is called for a standard iterator built with data from probDescDB.
References Dakota::abort_handler(), ProblemDescDB::get_bool(), ProblemDescDB::get_int(), ProblemDescDB::get_iv(), ProblemDescDB::get_string(), Iterator::maxEvalConcurrency, Iterator::methodName, Analyzer::numContinuousVars, FSUDesignCompExp::numCVTTrials, FSUDesignCompExp::numSamples, FSUDesignCompExp::primeBase, Iterator::probDescDB, FSUDesignCompExp::randomSeed, FSUDesignCompExp::seedSpec, FSUDesignCompExp::sequenceLeap, FSUDesignCompExp::sequenceStart, FSUDesignCompExp::trialType, and FSUDesignCompExp::varyPattern.
FSUDesignCompExp | ( | Model & | model, |
int | samples, | ||
int | seed, | ||
unsigned short | sampling_method | ||
) |
alternate constructor for building a DACE iterator on-the-fly
This alternate constructor is used for instantiations on-the-fly, using only the incoming data. No problem description database queries are used.
References Dakota::abort_handler(), Iterator::maxEvalConcurrency, Iterator::methodName, Analyzer::numContinuousVars, FSUDesignCompExp::numCVTTrials, FSUDesignCompExp::numSamples, FSUDesignCompExp::primeBase, FSUDesignCompExp::randomSeed, FSUDesignCompExp::seedSpec, FSUDesignCompExp::sequenceLeap, FSUDesignCompExp::sequenceStart, and FSUDesignCompExp::trialType.
void pre_run | ( | ) | [virtual] |
pre-run portion of run (optional); re-implemented by Iterators which can generate all Variables (parameter sets) a priori
pre-run phase, which a derived iterator may optionally reimplement; when not present, pre-run is likely integrated into the derived run function. This is a virtual function; when re-implementing, a derived class must call its nearest parent's pre_run(), if implemented, typically _before_ performing its own implementation steps.
Reimplemented from Iterator.
References FSUDesignCompExp::get_parameter_sets(), Iterator::iteratedModel, and PStudyDACE::varBasedDecompFlag.
void post_run | ( | std::ostream & | s | ) | [virtual] |
post-run portion of run (optional); verbose to print results; re-implemented by Iterators that can read all Variables/Responses and perform final analysis phase in a standalone way
Post-run phase, which a derived iterator may optionally reimplement; when not present, post-run is likely integrated into run. This is a virtual function; when re-implementing, a derived class must call its nearest parent's post_run(), typically _after_ performing its own implementation steps.
Reimplemented from Analyzer.
References Analyzer::allResponses, Analyzer::allSamples, SensAnalysisGlobal::compute_correlations(), PStudyDACE::pStudyDACESensGlobal, Iterator::subIteratorFlag, and PStudyDACE::varBasedDecompFlag.
int num_samples | ( | ) | const [inline, virtual] |
Return current number of evaluation points. Since the calculation of samples, collocation points, etc. might be costly, provide a default implementation here that backs out from the maxEvalConcurrency.
Reimplemented from Analyzer.
References FSUDesignCompExp::numSamples.
void enforce_input_rules | ( | ) | [private] |
enforce sanity checks/modifications for the user input specification
Users may input a variety of quantities, but this function must enforce any restrictions imposed by the sampling algorithms.
References Dakota::abort_handler(), Iterator::methodName, Analyzer::numContinuousVars, FSUDesignCompExp::numSamples, and FSUDesignCompExp::primeBase.
Referenced by FSUDesignCompExp::get_parameter_sets().