Team:BCCS-Bristol/Modeling
From 2009.igem.org
BCCS-Bristol
iGEM 2009
iGEM 2009
Contents |
Workflow
- Study Team:BCCS-Bristol/Modeling/Ideas to understand high level development goals (you can add stuff to that page!)
- Decide the specifics of what needs to be done and add items to your to-do list. Ideally the items added should read like commit messages
- Commit to the [http://code.google.com/p/bsim-bccs/ subversion repository] and
strike outthe item on your to-do list, adding a reference to the commit number if possible e.g:-
Rename BSimObject to BSimParticler19
-
Todo list
Steve
- Meet Sean Davies re: beads - try to bring some polystyrene beads
- Contact Paris team re:video
- Decide whether we are talking at the synbio conference, if so, who is talking
- Identify what batch simulations we wish to carry out asap. See [1].
- Study whether 3D implementation of newPosition in BSimBacteriaCreate is reasonable r28
- Refactor to use Vector and Matrix types from vecmath
- tumbleSpeed looks a bit suspect
- 3D diffusion for BSimChemicalField r29
- Remove author, date from headers?
- Further refactoring to achieve clear and consistent class-package naming: make toolbar a nested class of app?
- Are PART_PART, PART_BACT, PART_BEAD really neccesary?
- Add paper references to parameter values in the code using page from last year
-
3D tumbling in BSimBacteriar65 -
Improve knowledge of rigid body collisions[http://chrishecker.com/images/e/e7/Gdmphys3.pdf] [http://www.cs.lth.se/EDA046/lectures/L3.pdf]
- If our paradigm is particle dynamics, interactions with solid boundaries (that have a shape) are making things more complicated than neccesary.. traer physics is proving a big inspiration, it's beautifully simple - following its lead I believe we could decrease the complexity of the bsim physics engine
- HOWEVER.. We are going to have to implement collision detection for vesicles - once it's in, perhaps we should use it for bact-bact and bact-bound too.. we probably only need _real_ physics for bact-bead? In any case there seems to be a redundancy with both definition of potential functions and raw 'size' parameters
Mattia
- Last Year Bug Fixing:
New solution for reading gammaVals.txt (Old Problem: In Windows Vista semeed to be some reading problems)Mathematic corrections in calcDistFromBoundary(Wrong Mathematics)
- BSim 3D:
- Update Class BSimParticle r28 r51
Class parametersConstructorsetPositionsetCentrePossetDirectionnormalise3DVector
- Update Class BSimChemicalField r29 r35
Class parametersConstructorsetAsLinearredrawupdateField- Update Class BSimChemicalFieldThread
Class parametersConstructorrun
addChemicalgetConcentrationgetField
- Update Class BSImBacterium r30 r50 r55
iterateBacterium- iterateTumble
startNewPhasedoRun
- Update Class BSImBacteriaCreate r31 r48
createBacteriaSetcreateBacterium
- Update Class BSimDeadBacterium r32
runLogic
- Update Class BSimBeadsCreate r33
createBeadSetcreateBead
- Update Class BSimChemicalFieldCreate r36
createChemicalField
- Update Class BSimCollisionPhysics r37 r39 r46
Class parametersupdateProperties- Update Class BSimCollisionPhysicsThread
rundistBetweenPointsresolveExternalForceslinearMotionforce2Velocity3D
- Update Class BSimParameters r38 r41 r42 r58
- Update Class BSimScene r40 r56
resetScenerunAllUpdates
New Class BSimPlaneBoundaryCreater43 r 54New Class BSimSolidPlaneBoundaryr44 r49 r53- Update Class BSimParametersLoader r47 r57
processLine
New Class BSimWrapPlaneBoundaryr52
- Update Class BSimParticle r28 r51
- BSim Population Dynamics:
Emily
-
Issue with bacteria 'escaping' the boundariesr61- When the bacteria have a large enough force and the time step is not small enough the bacteris are able to 'escape' the boundary.
- Fix this by checking the distance and direction of all the bacteria close to the boundary. This will catch those that have crossed the boundary in one time step.
- THIS COULD BE IMPROVED FURTHER - it allows for far greater forces however does not fix this problem in all cases.
-
Understand how bacteria "tumble" under magnetic force- It is believed that the magnetic force causes the bacteria to orientate in line with the field and so the tumble phase will not occur.
- Implement directed bateria (bacteria under constant magnetic field)
- Control only the direction of the bacteria - not the force.
- Finish coding the magnetic force for variable magnetic force
-
Code the magnetic force as an additional force on the bacteria along with the internal and external forces.r82 - Find realistic values for the magnetic force acting on the bacteria.
-
- Code half-coated bead
- Apply two different potentials to each half of the bead - one side has a potential well (the bacteria attach here) and the other side has no well (the bacteria will interact normally here).
- Control which objects are affected by the magnetic force
- Magnetotactic bacteria in a constant magnetic field
- Magnetotactic bacteria in a variable magnetic field
- E. coli attaching to a magnetic bead under a variable magnetic field
Antos
BSim Documentation ?
I'm sure we can all agree that BSim is damn complex so I think it would be reasonable to have some kind of brief summary of various main classes, inheritances, methods etc, for example javadoc (it seems many comments are in the right form already) or just some wiki notes. I'm spending a lot of time flicking around Eclipse, and will probably need to note down these sort of things anyway. Tom's report is helpful, but some documentation would be ace especially if other teams/organisations ever want to use BSim in the future.
Well, I'm open for discussion here :) if anyone would find this sort of thing useful? Just a thought...
Work
- GRNs and vesicles
- Read more about the mechanics of different GRNs (specifically switches).
- Find out how they interact with the external environment.
- Investigate the possiblity of using a different time-step to the fixed one in BSim.
- Investigate the effect of different time steps (GRNs operate on a time scale relatively long compared to that of BSim).
- Investigate the mechanics of our GRNs with respect to vesicle budding and communication.
- Investigate methods for numerically solving stochastic ODEs.
- BSim GRNs
-
Java implementation of Runge-Kutta 4th order solver.r70- Refactor ODEs from an interface to an abstract class if necessary.
-
[Team:BCCS-Bristol/Modeling/Antos#ODE_Solvers_and_Libraries_already_in_existence Investigate other options in terms of external libraries (eg odeToJava - good but seems overcomplicated for current purposes; hundreds of lines of code for one solver routine)] - Implement the solvers into BSim.
-
Implement other solvers (more efficient).r70- The ability to choose between them (in BSim).
- Investigate possibility of using javax/vecmath and matrix ops to maybe make the larger routines more efficient.
- Extend to Stochastic ODEs.
- Interface BSim with external parameters (maybe similar to current parameter files) used to define an ODE system.
- Investigate the feasibility of SBML parameters or a similar XML based format.
- Similarly investigate the format used by XPP (may be more succinct, also is specifically for ODEs).
- Investigate and implement GRN (ODE) and chemical field interaction.
- Study implementation of 3D diffusion in BSim.
- Implement diffusion in/out terms for membrane diffusion.
- GRN interaction with vesicle budding and chemical transport (on the surface of the vesicle and inside it).
- Incorporate a method for seeing the effects of GRN activity (eg colour changes, pop-out time series).
-