$extrastylesheet
Dakota  Version 6.2
Protected Member Functions | Protected Attributes
MetaIterator Class Reference

Base class for meta-iterators. More...

Inheritance diagram for MetaIterator:
Iterator CollabHybridMetaIterator ConcurrentMetaIterator EmbedHybridMetaIterator SeqHybridMetaIterator

List of all members.

Protected Member Functions

 MetaIterator (ProblemDescDB &problem_db)
 standard constructor
 MetaIterator (ProblemDescDB &problem_db, Model &model)
 alternate constructor
 ~MetaIterator ()
 destructor
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
bool new_model (const String &method_ptr, const String &model_ptr)
 identify presence of a new model specification identified by pointer, necessitating a new instantiation
void check_model (const String &method_ptr, const String &model_ptr)
 check that any model identified by pointer has the same id as the passed iteratedModel
void allocate_by_pointer (const String &method_ptr, Iterator &the_iterator, Model &the_model)
 initialize the_iterator and the_model based on method_ptr
void allocate_by_name (const String &method_string, const String &model_ptr, Iterator &the_iterator, Model &the_model)
 initialize the_iterator based on method_string
std::pair< int, int > estimate_by_pointer (const String &method_ptr, Iterator &the_iterator, Model &the_model)
 estimate minimum and maximum processors per iterator needed for init_iterator_parallelism(); instantiates the_iterator and the_model as needed, but on minimal processor ranks (is later augmented by allocate_by_pointer())
std::pair< int, int > estimate_by_name (const String &method_string, const String &model_ptr, Iterator &the_iterator, Model &the_model)
 estimate minimum and maximum processors per iterator needed for init_iterator_parallelism(); instantiates the_iterator and the_model as needed, but on minimal processor ranks (is later augmented by allocate_by_name())

Protected Attributes

IteratorScheduler iterSched
 scheduler for concurrent execution of Iterators
int maxIteratorConcurrency
 maximum number of concurrent sub-iterator executions

Detailed Description

Base class for meta-iterators.

This base class shares code for concurrent and hybrid meta-iterators, where the former supports multi-start and Pareto set iteration and the latter supports sequential, embedded, and collaborative hybrids.


Member Function Documentation

void post_run ( std::ostream &  s) [protected, 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 Iterator.

References MetaIterator::iterSched, IteratorScheduler::lead_rank(), and Iterator::print_results().


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