-
Notifications
You must be signed in to change notification settings - Fork 37
Running a Simulation
The iDynoMiCS package provided has all files located in the directory iDynoMiCS and its subdirectories. For those just exploring the use iDynoMiCS, this structure is perfectly adequate; however, we recommend that users who run many iDynoMiCS simulations store their protocol files in an entirely separate directory as simulations will produce GB of data so it is better to separate the code from the simulation output. For example, if you store data on drive “D:”, you could make a directory “D:\eclipse\iDynoMiCS” to keep the source code (within the Eclipse workspace if you are editing the source code with eclipse), and another directory “D:\runs” to put your protocol files so all simulation output will end up in subdirectories of “D:\runs”.
At the end of each simulation the state of the random number generator (described in more detail in the Supporting Information of Lardon et al. 2011) is output as a “random.state” file in the same directory as the protocol file. Whenever a simulation starts, iDynoMiCS will look first for a random.state file in the same directory as the protocol file used to start iDynoMiCS, and will use it as the random seed if it is present; this is to allow multiple replicates of a simulation (with identical settings in the protocol file) to run with non-overlapping random numbers, being drawn from consecutive regions of the cyclic random number stream. Care should be taken that random.state files are not read in when the user does not desire them to be read in: a simple step is to store protocols in separate subdirectories.
There are two (main) ways to run iDynoMiCS simulations, depending on whether you want to use the Eclipse environment or not. We will show how to run iDynoMiCS using both methods:
Multiple simulations are used either to produce replicate simulations (so using the same protocol file but a different random number seed) or to produce a set of different simulations started with different protocol files, e.g. in order to sweep parameters. In this case it can be useful to specify several simulations to run one after another. To do this, merely collect all the relevant protocol files into one directory, and when choosing a protocol file in the file browser select that directory of interest rather than a particular file. Then all simulations inside this directory will be run one after the other. Remember the advice given at the beginning of this section about random.state files: simulations run in sequence will be started with a different random number state, rather than the same random number state that the simulations would be started with if they were started independently.