Team:BCCS-Bristol/Modeling-To Do List
From 2008.igem.org
Modelling To Do List
Wiki
General tasks that must be done to keep the wiki up to date.
- Modelling Approach - Section needs completing to include a discussion of the different models.
- GRN Model Section - Section needs to be completed.
- Stochastic Agent Based Simulation Section - Section needs to be completed.
- Hybrid Model Section - Section needs to be completed.
GRN Modelling
Switching Delay Estimation
Differential Equation Model
BSim Framework
Graphics
There are many graphical visualisation techniques we want to use to allow the video output to be as informative as possible.
- BSimVisualAid [Done] - Create a new interface to allow for visual effects to be defined and added to a simulation scene.
- Convert Existing Visual Aids - We already have a mean bacteria and particle movement tracer implemented, these need to be re-coded to use the new interface defined above.
- BSimSceneClock - A new visual aid that allows for the time of a scene to be seen (in seconds). Will make it easier to reference parts of a simulation.
- BSimScene Parameters - We need to update the parameters that BSimScene currently used for the size and zoom factors such that they are not dependant on the GUI. This is necessary to allow for scripts to alter the view of the simulation without the need for interacting with GUI code.
Multi-threading Optimisations
Update the main computational classes to split up work into separate threads. Should improve performance when running on a single computer, or cluster node, with the appropriate resources.
- BSimChemicalField [Done] - Update class to use worker threads when calculating the new diffusion field.
- BSimCollisionPhysics [Done] - Update class to use worker threads when calculating the force matrix.
- BSimCollisionPhysics - Update class to use multithread the call to the runLogic method on each bacterium.
Batch Processing
We need to be able to run batch runs of simulations to get enough results for statistical analysis.
- Parameter File Definition - We need a simple text file defined that allows for all the parameters in the simulation and sets of bacteria, particles and boundaries defined. It should look something like the example below with each line either giving a parameter definition or BSimObject creation details.
Viscosity: 0.0001 Dt: 0.01 CreateBacterium: 10, 10, 3.7, 50 CreateRandomBacteriaSet: 0, 0, 500, 600, 3.7, 50 ...
- BSimBatch - Class to read the parameter files and run a set number of simulations, outputting videos and a data file of particle movement.
- Blue Crystal Accounts - Contact university about getting accounts to run some larger scale simulations
- Output Filters - Create new classes that can be attached to a simulation scene, allowing for information about the scene be output, e.g. in the form of text based or movie files. This ties in with the parameters that need to be monitored for the statistical analysis.
BSim Simulations
Once the framework is in a working state we will need to have in place an approach for using it to understand the sensitivity of each of the parameters, test the viability and compare different methods. It is expected that the list of simulations to run will evolve as the design becomes refined in the wet lab.
- Define Simulation Process - Ensure that the full end-to-end simulation setup and execution process is understood. Define the inputs, parameters that can be altered, and output required to calculate useful statistics for comparison. As many simulations will be run we want to make sure that problems will not arise during the runs. This should be placed on the wiki under the stochastic agent based model section.
- Specify Simulations - We need a list of all important simulations that need to be run to understand the effect various parameters have on the designs stability and viability. A list should be developed on the wiki giving a short description of the run, the parameter ranges, statistical analysis to be performed, hypothesis, actual outcome after the run and data files/example video.
- Run the simulations - Work through the previous list running the simulation sets.