OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Types | Public Member Functions | Protected Member Functions | List of all members
Optimizer Class Referenceabstract

An abstract class defining the interface for all optimizer components. More...

#include <Optimizer.h>

Inheritance diagram for Optimizer:
Inheritance graph
[legend]
Collaboration diagram for Optimizer:
Collaboration graph
[legend]

Public Types

typedef std::vector< std::pair
< double, double > > 
bounds_t
 type of bounds for design variables More...
 

Public Member Functions

 Optimizer (MPI_Comm comm)
 
virtual ~Optimizer ()
 
virtual void initialize ()=0
 entry point for optimizer More...
 

Protected Member Functions

virtual void setupPoll ()=0
 executed before starting polling loop More...
 
virtual void prePoll ()=0
 executed before checking for new request More...
 
virtual void postPoll ()=0
 executed after handling (if any) new request More...
 
virtual void onStop ()=0
 enable implementation to react to STOP tag More...
 
virtual bool onMessage (MPI_Status status, size_t length)=0
 
- Protected Member Functions inherited from Poller
virtual void run ()
 
 Poller (MPI_Comm comm, double delay=0.1)
 
virtual ~Poller ()
 

Additional Inherited Members

- Protected Attributes inherited from Poller
MPI_Comm comm_m
 communicator the poller listens to requests More...
 
bool is_running_
 
double last_polled_
 time of last MPI_Test More...
 
double poll_delay_
 delay in seconds between polls More...
 

Detailed Description

An abstract class defining the interface for all optimizer components.

Definition at line 14 of file Optimizer.h.

Member Typedef Documentation

typedef std::vector< std::pair<double, double> > Optimizer::bounds_t

type of bounds for design variables

Definition at line 22 of file Optimizer.h.

Constructor & Destructor Documentation

Optimizer::Optimizer ( MPI_Comm  comm)
inline

Definition at line 18 of file Optimizer.h.

virtual Optimizer::~Optimizer ( )
inlinevirtual

Definition at line 19 of file Optimizer.h.

Member Function Documentation

virtual void Optimizer::initialize ( )
pure virtual

entry point for optimizer

Implemented in Sampler, and FixedPisaNsga2< CrossoverOperator, MutationOperator >.

virtual bool Optimizer::onMessage ( MPI_Status  status,
size_t  recv_value 
)
protectedpure virtual

User specific behavior on receiving a message.

Returns
boolean indicating if Irecv has to be re-posted

Implements Poller.

Implemented in FixedPisaNsga2< CrossoverOperator, MutationOperator >, and Sampler.

virtual void Optimizer::onStop ( )
protectedpure virtual

enable implementation to react to STOP tag

Implements Poller.

Implemented in FixedPisaNsga2< CrossoverOperator, MutationOperator >, and Sampler.

virtual void Optimizer::postPoll ( )
protectedpure virtual

executed after handling (if any) new request

Implements Poller.

Implemented in FixedPisaNsga2< CrossoverOperator, MutationOperator >, and Sampler.

virtual void Optimizer::prePoll ( )
protectedpure virtual

executed before checking for new request

Implements Poller.

Implemented in FixedPisaNsga2< CrossoverOperator, MutationOperator >, and Sampler.

virtual void Optimizer::setupPoll ( )
protectedpure virtual

executed before starting polling loop

Implements Poller.

Implemented in FixedPisaNsga2< CrossoverOperator, MutationOperator >, and Sampler.


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