OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
Abstract class every simulation has to implement to be able to work with the optimization pilot. More...
#include <Simulation.h>
Public Member Functions | |
Simulation (CmdArguments_t args) | |
~Simulation () | |
CmdArguments_t | getArgs () |
virtual void | run ()=0 |
virtual void | collectResults ()=0 |
virtual reqVarContainer_t | getResults ()=0 |
Private Attributes | |
CmdArguments_t | args_ |
Abstract class every simulation has to implement to be able to work with the optimization pilot.
To be supported the simulation code has to be called as a library taking as an argument an MPI communicator specifying on which processors the simulation runs.
TODO:
Definition at line 20 of file Simulation.h.
|
inline |
Definition at line 24 of file Simulation.h.
|
inline |
Definition at line 28 of file Simulation.h.
|
pure virtual |
Collect all results from after the simulation has been executed. Make sure that data is available before returning from function.
Implemented in OpalSimulation.
|
inline |
Definition at line 31 of file Simulation.h.
References args_.
Referenced by OpalSimulation::copyH5_m(), OpalSimulation::run(), and OpalSimulation::setupSimulation().
|
pure virtual |
Get all requested information.
Implemented in OpalSimulation.
|
pure virtual |
Run the simulation (different for every simulation we specify). This method can block or return immediately, the worker is calling collectResults() to get the results. This means that the implementation of the Simulation class has to make sure that collectResults() waits until the data is available.
Implemented in OpalSimulation.
|
private |
Definition at line 56 of file Simulation.h.
Referenced by getArgs().