Public Member Functions | Private Member Functions | Private Attributes
PSUADEDesignCompExp Class Reference

Wrapper class for the PSUADE library. More...

Inheritance diagram for PSUADEDesignCompExp:
PStudyDACE Analyzer Iterator

List of all members.

Public Member Functions

 PSUADEDesignCompExp (Model &model)
 primary constructor for building a standard DACE iterator
 ~PSUADEDesignCompExp ()
 destructor
void pre_run ()
 pre-run portion of run_iterator (optional); re-implemented by Iterators which can generate all Variables (parameter sets) a priori
void post_input ()
 read tabular data for post-run mode
void extract_trends ()
 Redefines the run_iterator virtual function for the PStudy/DACE branch.
void post_run (std::ostream &s)
 post-run portion of run_iterator (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
 get the current number of samples
void sampling_reset (int min_samples, bool all_data_flag, bool stats_flag)
 reset sampling iterator to use at least min_samples
const Stringsampling_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
const UShortArray & varPartitionsSpec
 number of partitions in each variable direction
int numPartitions
 number of partitions to pass to PSUADE (levels = partitions + 1)
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 run() executions for this object
bool varyPattern
 flag for generating a sequence of seed values within multiple get_parameter_sets() calls so that the sample sets are not repeated, but are still repeatable
const int seedSpec
 the user seed specification for the random number generator (allows repeatable results)
int randomSeed
 current seed for the random number generator

Detailed Description

Wrapper class for the PSUADE library.

The PSUADEDesignCompExp class provides a wrapper for PSUADE, a C++ design of experiments library from Lawrence Livermore National Laboratory. Currently this class only includes the PSUADE Morris One-at-a-time (MOAT) method 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.


Constructor & Destructor Documentation

PSUADEDesignCompExp ( 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(), Iterator::maxConcurrency, Iterator::methodName, and PSUADEDesignCompExp::numSamples.


Member Function Documentation

void pre_run ( ) [virtual]

pre-run portion of run_iterator (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 PSUADEDesignCompExp::get_parameter_sets(), and Iterator::iteratedModel.

void post_run ( std::ostream &  s) [virtual]

post-run portion of run_iterator (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 Iterator.

References Dakota::abort_handler(), Analyzer::allResponses, Analyzer::allSamples, Model::continuous_lower_bounds(), Model::continuous_upper_bounds(), Iterator::iteratedModel, Iterator::numContinuousVars, Iterator::numFunctions, and PSUADEDesignCompExp::numSamples.

int num_samples ( ) const [inline, virtual]

get the current number of samples

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 maxConcurrency. May be (is) overridden by derived classes.

Reimplemented from Iterator.

References PSUADEDesignCompExp::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, Iterator::numContinuousVars, PSUADEDesignCompExp::numPartitions, PSUADEDesignCompExp::numSamples, and PSUADEDesignCompExp::varPartitionsSpec.

Referenced by PSUADEDesignCompExp::get_parameter_sets().


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