Download presentation
Presentation is loading. Please wait.
Published byClyde Mosley Modified over 9 years ago
1
Modeling morphogenesis at the cell level – tools and techniques Outline: 1.What is CompuCell3D? 2.Motivation 1.Why CompuCell3D and why now? 2.Collaboration 3.Extended Potts Model – an overview 4.Building CompuCell3D 5.Visualization package and scripting languages 6.Example simulations 7.CompuCell 3D – roadmap
2
Frequently Asked Questions: Q: What is CompuCell3D? A: CompuCell3D is an open source software for modeling morphogenesis using extended Potts Model Q: How do I use it? A: You need to create XML configuration file which describes your simulation. We are working on graphical front-end to make this process as easy as possible Q: How do I visualize the results of my simulation? A: CompuCell3D will come with CompuCellPlayer – an intuitive visualization tool Q: What do I do if a given feature needed in my simulation is not supported by CompuCell3D? A: You can either implement this feature as a CompuCell3D plugin (will be documented in the developers manual), or implement it using scripting languages such as Python (under construction) or BIOLOGO. BTW, we welcome collaborators and contributors. Q: Is there a parallel version of CompuCell3D? A: Not yet, but we are working on it.
3
First application written in Fortran Tom ports to C Adds command line parameters, makefile Jenny ports to F90 Extends model Brad ports to C++ Models system using objects Maria implements simulation in Java for the Grid Implements original model F77 C C++ F90 Java Why CompuCell3D and why now? Typical Evolution of Research Software (in collaboration with Chris Mueller) Sounds familiar? Keep listening…
4
C1C1 C2C2 C3C3 F77 1 F77 2 F90 1 F90 2 F90 3 F90 4 C++ 1 C++ 2 C++Java Version used for paper There were 6 major versions –13 actual implementations –5 Languages 2 major versions advanced the science 4 major versions were simply software projects All versions re-implemented basic features The implementations used for the papers were not always used for the next major version Versions that advanced science A Closer Look
5
Problem: Research software applications are difficult to develop and are costing researchers time and money. Solution: Separate Research and Development and use a development model derived from industrial software development. Software Quality is improved –Applications are not single-user prototypes –Features are available to all researchers and are peer-reviewed Research Process is improved –Researchers can focus on research –Development is not a bottleneck –Reproducibility and Traceability Reproduce old experiments, trace the data/process that led to a result –Easier to integrate new/visiting researchers High-end software becomes possible –Parallel and high-performance implementations –Well designed user interfaces, visualization, databases, web applications and services Benefits
6
CompuCell3D collaboration University of Notre Dame, Indiana University People: Mark Alber, Ariel Balter, Rajiv Chaturvedi,Nan Chen, Trevor Cickovski, Jeff Coffland, Michael Crocker, Gabor Forgacs, James Glazier, Tilmann Glimm, George Hentschel, Chengbang Huang, Jesus Izaguirre, Chris Mueller, Stuart Newman, Nikodem Poplawski, Maciej Swat, Gilberto Thomas Funding agencies and institutions: NSF, ICSB Notre Dame, The Biocomplexity Institute Indiana University, NIH Users – most important part of the collaboration. Website: http://sourceforge.net/projects/compucell/ Google keyword: CompuCell3D
7
The Potts Model Energy minimization formalism - extended by Graner and Glazier, 1992 DAH: Contact energy depending on cell types (differentiated cells) Metropolis algorithm: probability of configuration change x 20
8
CompuCell3D architecture Kernel Runs Metropolis Algorithm Plugins Calculate change in energy PDE Solvers Interpreter Code Generator Visualization, Steering, User Interface Lattice monitoring Object oriented implementation in C++ and Python
9
XML Basics XML stands for eXtensible markup language. It is not a programming language. Its main purpose is to standarize information exchange between different applications. XML Example: It is too early to be in class TimesNewRoman 12
10
Describing the simulation All simulation parameters are controlled by the config file. The config file allows you to only add those features needed for your current simulation, enabling better use of system resources. 10 2 Cell 0.8 10 field.dat Lattice and Chemical Fields The main Potts lattice holds the cells and controls the Monte Carlo loop. Plugins can be used to overlay additional fields, such as chemical concentrations on the lattice. Volume volume volumeEnergy(cell) 64 0.05 Surface area surfaceEnergy(cell) 77 0.05 Contact contactEnergy( cell1, cell2) 0 0.1 0.5 3.0 0.5 Cell Parameter and Hamiltonian Plugins Plugins can define new cell parameters and their associated energy functions. <Dimensions x="71" y="36" z="211"/> 10 2 2 0.8 10 field.dat...
11
10 2 0.8 10 field.dat... CompuCell related example
12
Running the simulation Steering bar allows users to start or pause the simulation, zoom in, zoom out, to switch between 2D and 3D visualization, change view modes (cell field, pressure field, chemical concentration field, velocity field etc..) Player can output multiple views during single simulation run – Add Screenshot function Information bar
13
Scripting languages – extending capabilities of CompuCell3D BIOLOGO - high level, XML based language for describing parts of the simulation. BIOLOGO is translated to C++ and compiled as a CompuCell3D plugin to deliver optimal performance. It is straightforward to use Python: We will embed Python in CompuCell3D to give users similar level of flexibility as Matlab or Mathematica. Most of the low level functions will be implemented in C++ but callable from Python level. Example: Creating a PDE solver is reduced to writing several statements in BIOLOGO. <Term exp="Kronecker(x,y,z)*alpha - epsilon*C*(1-Kronecker(x,y,z)) + DiffConst*Laplacian(C)" condition="true" /> Kernel Plugin C++ BIOLOGO
14
Example simulations using CompuCell3D Dictyostelium discoideum
15
The model is based on oscilatory Fitzhugh-Nagumo type of equations (Savill Hogeweg, 1997): c – denotes cAMP concentration - activator r-refractoriness - inhibitor f(c) – piecewise linear function b=0 for excitable cells, b != 0 for autocycling cells This system of equations will produce waves of cAMP passing through the lattice. Cells respond to cAMP gradient by biasing their movement towards higher level of cAMP. We assume that cells chemotact “periodically” and only when cAMP concentration is high enough
16
Autocycling amoebae initiate waves of cAMP cAMP wave passes through amoebae and a substrate Amoebae move up the cAMP concentration gradient - chemotaxis Mound is formed with autocycling cells at the top cAMP wave propagates down the mound Dictyostelium Discoideum – early stages of aggregation
17
Cell sorting Cell sorting is a rearrangement of cells driven by local physical properties of cells (cell-cell adhesion). Different parameters lead to different final patterns: Initial configuration of condensing (red) and non-condensing (green) cells immersed in medium (blue) Checkerboard pattern arises when adhesion between red and green cells is stronger than adhesion between cells of the same type Complete sorting – adhesion between red cells is stronger then between green cells and between red and green Partial sorting – very similar to complete sorting except that the adhesion between red and green cells is higher than adhesion between green cells
18
Gastrulation Ariel Balter All higher animals undergo a process called gastrulation at the earliest stages of development. During gastrulation the embryo takes the first steps from a more-or-less uniform ball of cells towards a differentiated organism with individual organs. One of the key process that begins gastrulation is the onset of large-scale motion of cells which first deform the symmetric blastoderm (the stage preceding gastrulation). It has been hypothesized that cell motion in response to chemical attractors and repellors plays an important role in this process. Here we test a highly simplistic model of chemo-attraction/repulsion in the chick embryo. This model does capture certain features of overall cell redistribution as well as the resulting remodeling of the embryo as a whole. However it does not reproduce vortex motion observed in work done under James Glazier. Area Opaca Chemo-attractant source Chemo-repellant sourceCharacteristic bulging due to pressure from aggregating cells Area Pellucida
19
Fibronectin driven condensation as a function of cell density Nikodem Poplawski We are able to study how fibronectin-cell interaction and initial cell density affects cell condensation patterns. Fibronectin limits the size of forming clusters. High cell density results in stripes of cell condensate Medium cell density produces a mixture of condensate stripes and spots Low cell density leads to condensate spots
20
Roadmap CompuCell3D needs further development in order to become a universal framework for modeling morphogenesis: 1st quarter 2006 -Full support for scripting languages -Isolate users from XML - graphical configuration tools -Provide full diagnostics of the simulation in CompuCell Player – for example right- click should provide information about given cell 2nd-3rd quarter 2006 -Movies, scientific plots and all lattice information will be available through the Player -Parallel version 2006/2007 -Steering and parameters sweeps -Serializing simulation – users will be able to stop the simulaiton and resume it later -Project management
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.