A user can interact with a non-batch Repast simulation through the gui. The gui allows the user to start, stop, pause, setup, and exit a simulation through the toolbar. The table below lists the toolbar buttons and their functions.
| Start Multi-Run | Start | Step | Initialize | Stop | Pause | Setup | Load Model | View Settings | Exit |
|
|
|
|
|
|
|
|
|
|
To run a simulation you would click either the start, step or initialize buttons. If you click the initialize button, you would then click step or start. When you want to stop the simulation and then run it again, you click stop and then the setup button.
In addition, if the model has followed the get/set method pattern (see How to Build a Model and How to use Parameters and Parameter Files) the user will also be able to see and set the initial parameters of a simulation. The initial parameters will appear in the settings window on the tab entitled "Parameters" into which the user can see the default starting parameters and enter new ones.
Also in the settings window are the Custom Actions tab and the Repast Actions tab. The Custom Actions tab will contain any sliders, buttons, or checkboxes that the simulation author has defined. You can interact with the model while it is running through these sliders, buttons, and checkboxes.
The Repast Actions tab looks like:
A user may also probe objects in the simulation provided those objects implement the get/set method pattern and whose displays are added to the DisplaySurface as probeables (see How to Create Displays). To probe an object, pause the simulation, and left click on the object in the display. The probeable state of all the objects underneath the cursor should appear in windows similar to the "Parameters" tab in the settings window, and their properties can be set in the same way (i.e. changing the property and pressing enter).
Displaying a simulation can be one of the slowest parts of a simulation. Repast will not update the display if the display window is minimized, allowing for dynamic display updates. (Of course, these kind of updates can be set explicitly through a Schedule.) When the window is displayed again it will update in the usual manner.