$extrastylesheet
Dakota  Version 6.2
Public Member Functions | Protected Member Functions | Private Member Functions
ParallelDirectApplicInterface Class Reference

Sample derived interface class for testing parallel simulator plug-ins using assign_rep(). More...

Inheritance diagram for ParallelDirectApplicInterface:
DirectApplicInterface ApplicationInterface Interface

List of all members.

Public Member Functions

 ParallelDirectApplicInterface (const Dakota::ProblemDescDB &problem_db, const MPI_Comm &analysis_comm)
 constructor
 ~ParallelDirectApplicInterface ()
 destructor

Protected Member Functions

int derived_map_ac (const Dakota::String &ac_name)
 execute an analysis code portion of a direct evaluation invocation
void derived_map_asynch (const Dakota::ParamResponsePair &pair)
 no-op hides base error; job batching occurs within wait_local_evaluations()
void wait_local_evaluations (Dakota::PRPQueue &prp_queue)
 evaluate the batch of jobs contained in prp_queue
void test_local_evaluations (Dakota::PRPQueue &prp_queue)
 invokes wait_local_evaluations() (no special nowait support)
void set_communicators_checks (int max_eval_concurrency)
 no-op hides default run-time error checks at DirectApplicInterface level

Private Member Functions

int text_book (const Dakota::RealVector &c_vars, const Dakota::ShortArray &asv, Dakota::RealVector &fn_vals, Dakota::RealMatrix &fn_grads, Dakota::RealSymMatrixArray &fn_hessians)
 demo evaluator function for parallel plug-ins

Detailed Description

Sample derived interface class for testing parallel simulator plug-ins using assign_rep().

The plug-in ParallelDirectApplicInterface resides in namespace SIM and uses a copy of textbook() to perform parallel parameter to response mappings. It is used to demonstrate plugging in a parallel direct analysis driver into Dakota in library mode. Test input files can then use an analysis_driver of "plugin_textbook".


Member Function Documentation

void test_local_evaluations ( Dakota::PRPQueue &  prp_queue) [inline, protected]

invokes wait_local_evaluations() (no special nowait support)

For use by ApplicationInterface::serve_evaluations_asynch(), which can provide a batch processing capability within message passing schedulers (called using chain ApplicationInterface::serve_evaluations() from Model::serve() from IteratorScheduler::run_iterator()).

References ParallelDirectApplicInterface::wait_local_evaluations().


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