Virginia Tech/toolkit
From 2007.igem.org
|
Using a hybrid simulator...In order to model the growth and infection of E. coli, we used a hybrid stochastic/ODE simulator that was developed by the PERFORM Laboratory at the University of Illinois. The simulator reads in reaction equations from a text file and spits out trajectory points into an output text file. The simulations can be run as pure stochastic using the Gillespie algorithm (simulations run slower), pure ODE (simulations run faster), or a combination of both. When simulations are run as stochastic, the simulator incorporates randomness into the trajectories and creates a high level of variability for a single set of parameters. When the simulations are run as ODE, the trajectories are calculated very quickly; however, there is no variability. The trajectories are identical for multiple runs on the same set of parameters. A compromise between the simulation speed and variability can be reached with the hybrid simulator. Both stochastic and ODE process are used dynamically to create highly variable trajectories quickly.
The hybrid simulator does an excellent job calculating trajectories; however, it is not user-friendly and the outputted trajectories are not graphed. We worked to correct this by developing a Matlab interface that accesses the hybrid simulator. The interface can automatically run several simulations consecutively, create useful graphs, and meaningful visuals. The interface has various functions to interpret the data from hybrid simulator. It has a save feature that allows the user to create and save different simulation profiles. The profiles are saved as M-files that can be easily retrieved and altered to interface with the hybrid simulator. The program can run simulations for a single well to show the interaction between species. When single well simulations are run, the Matlab interface provides time plots showing the concentration of each species vs. time. Histograms are available to show the frequency of occurrences for any given concentration, which is useful when multiple stochastic simulations are run on the same set of parameters. The 3-D histogram shows a three dimensional view of the trajectories, with time and concentration on the x and y axis respectively. The height shows the points where the stochastic trajectories converge. The color image histogram shows the same data on a 2D image with color intensity showing the convergence of trajectories. The program can organize a batch of stochastic trajectories by showing the variance of the data with error bars and averages.
The Matlab interface can also perform multiple simulations. This is useful when a matrix consisting of wells are to be simulated to show simple diffusion or represent air traffic between populations. When multiple simulations are run, the interface shows a 2-D matrix of all the wells displaying the concentrations of each species per well via a color scale. The user can create movies to watch how the migration patterns affect a chosen species over time. It collects the 2-D matrices that show the concentrations in all the wells at a single time, converts them to frames, and plays them for the given time duration. Time plots can be created to show how the species interact in any specific well, multiple stochastic simulations can be run to show how the data varies over time, and the contents of the wells can be mixed using various patterns. The default pattern is simple diffusion; however, the program has a function to read in an Excel file used by an automated liquid handling system and simulate that mixing algorithm.
|