CompuCell3D: A Morphogenesis simulation package - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

CompuCell3D: A Morphogenesis simulation package

Description:

Morphogenesis simulation package based on Cellular Potts Model (CPM) ... CellChangeWat*cher(cell) Automatons.Update(cell) Steppers.step() Steppabless.step ... – PowerPoint PPT presentation

Number of Views:197
Avg rating:3.0/5.0
Slides: 36
Provided by: nd2
Category:

less

Transcript and Presenter's Notes

Title: CompuCell3D: A Morphogenesis simulation package


1
CompuCell3D A Morphogenesis simulation package
  • Nan Chen and Mark Alber
  • 2/20/2006

2
Topics
  • Introduction to CompuCell3D
  • Cellular Potts Model
  • Framework of CompuCell3D
  • Usage of CompuCell3D
  • Future Plans

3
Introduction to CompuCell3D
4
CompuCell3D overview
  • Morphogenesis simulation package based on
    Cellular Potts Model (CPM)
  • Capable of modeling cell clustering as well as
    growth, division, death, intracellular adhesion,
    and volume and surface area constraints
  • Partial differential equation models for external
    chemical fields which can model
    reaction-diffusion
  • Cell type automata provides a method for
    categorizing cells by behavior into types and
    algorithms for changing cell type
  • Chemotaxis and haptotaxis

5
CompuCell3D overview
  • Framework design allow scientists to focus on
    simulation development
  • Visualization tool (CompCell Player)
  • Standard input (XML) make the package easy to
    use
  • Minimize the amount of coding required
  • Flexible simulation framework
  • Software design Pattern and Plug in feature
  • Easy to extend and add new features

6
CompuCell3D Applications
  • Cell sorting
  • Limb bud growth
  • Amoeba migration
  • Dictyostelium discoideum
  • Somites formation

7
Cell Sorting
8
Limb bud growth
9
Cellular Potts Model
10
Cellular Potts Model
Cell structure is discretized into a cell map,
each number in the above cell map corresponds to
one cell.
11
Cellular Potts Model
  • System Hamiltonian consists of adhesion energy,
    volume energy and chemical energy
  • Transition probability, W, is determined by the
    change of free energy due to orientation
    alteration. DG, according to above equation.

12
Cellular Potts Model
  • Energy minimization formalism
  • extended by Graner and Glazier, 1992
  • DAH Contact energy depending on cell types
    (differentiated cells)
  • Extensions
  • J_cell_cell is type dependent
  • Other terms Cell volume, Chemotaxis/Haptotaxis
  • Metropolis algorithm probability of
    configuration change

13
Framework of CompuCell3D
14
Information flow chart for CompuCell3D
CompuCellPlayer
XML input
User
CompuCell3D Kernal
15
CompuCellPlayer
  • Visualization tool
  • Using QT Lib
  • 3D Visualization
  • 2D Cross-section
  • Zooming, rotating, translating
  • Picture Generation
  • pause a simulation

16
CompuCell3D - XML input
ltPottsgt ltDimensions x51" y51" z"21"/gt
ltStepsgt10lt/Stepsgt ltTemperaturegt2lt/Temperaturegt
ltFlip2DimRatiogt1lt/Flip2DimRatiogt lt/Pottsgt
Potts Model Defination
ltPlugin Name"Volume"gt ltTargetVolumegt64lt/Targe
tVolumegt ltLambdaVolumegt0.05lt/LambdaVolumegt
lt/Plugingt
Volume volume volumeEnergy(cell)
ltPlugin Name"Surface"gt ltTargetSurfacegt77lt/Tar
getSurfacegt ltLambdaSurfacegt0.05lt/LambdaSurfacegt
lt/Plugingt
Surface area surfaceEnergy(cell)
ltPlugin Name"Contact"gt ltEnergy
Type1"Medium" Type2"Medium"gt0lt/Energygt
ltEnergy Type1"Light" Type2"Medium"gt0lt/Energygt
ltEnergy Type1"Dark" Type2"Medium"gt0.1lt/Energygt
ltEnergy Type1"Light" Type2"Light"gt0.5lt/Energy
gt ltEnergy Type1"Dark" Type2"Dark"gt3.0lt/Energy
gt ltEnergy Type1"Light" Type2"Dark"gt0.5lt/Energ
ygt lt/Plugingt
Contact contactEnergy( cell1, cell2)
17
CompuCell3D Structure
Steppables are executed once per Monte Carlo step
and once before and after the main loop. They
are the main hooks for initialization and
rendering.
Plugins are loaded at runtime. They are the main
way of adding new features to CompuCell. They
can be Steppables, Steppers, CellChangeWatchers,
or Automatons.
CellChangeWatchers are executed once per each
successful spin flip. They are useful for
adjusting values that depend on the number of
lattice points in a cell.
Automatons enable cell state to change their
state as the simulation evolves.
Steppers are executed once per spin flip attempt.
They are the main hooks for energy functions.
18
Quickstart Guide of CompuCell3D
19
Installation
  • For testing purpose, you could directly install
    binary package
  • Easy to install
  • For development purpose, you could download
    source code and compile it
  • Your computer needs to have automake,
    autoconfigure, autohead, libtool package
  • You could find this package from simtk.org

20
Your first example-Foam simulation
Mcs 0
Mcs 50
Mcs 100
21
Your first example
ltCompuCell3Dgt ltPottsgt ltDimensions
x"101" y"101" z"1"/gt ltAnnealgt0lt/Annealgt
ltStepsgt100lt/Stepsgt ltTemperaturegt5lt/Temp
eraturegt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltBoundary_ygtPeriodiclt/Boundary_ygt
ltBoundary_xgtPeriodiclt/Boundary_xgt
ltFlipNeighborMaxDistancegt1.75lt/FlipNeighborMaxDist
ancegt lt/Pottsgt ltPlugin
Name"CellType"gt ltCellType
TypeName"Medium" TypeId"0"/gt
ltCellType TypeName"Foam" TypeId"1"/gt
lt/Plugingt ltPlugin Name"Contact"gt
ltEnergy Type1"Foam" Type2"Foam"gt20lt/Energygt
ltEnergy Type1"Medium" Type2"Medium"gt100lt/E
nergygt ltEnergy Type1"Medium"
Type2"Foam"gt100lt/Energygt
ltDepthgt1.5lt/Depthgt lt/Plugingt
ltSteppable Type"PIFInitializer"gt
ltPIFNamegtFoam_1.piflt/PIFNamegt lt/Steppablegt
lt/CompuCell3Dgt
1
2
3
4
22
Setting for Potts Model
ltPottsgt ltDimensions x"101" y"101"
z"1"/gt ltAnnealgt0lt/Annealgt
ltStepsgt100lt/Stepsgt ltTemperaturegt5lt/Temperatu
regt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltBoundary_ygtPeriodiclt/Boundary_ygt
ltBoundary_xgtPeriodiclt/Boundary_xgt
ltFlipNeighborMaxDistancegt1.75lt/FlipNeighborMaxDist
ancegt lt/Pottsgt
23
Setting for Cell type and Contact energy
ltPlugin Name"CellType"gt ltCellType
TypeName"Medium" TypeId"0"/gt
ltCellType TypeName"Foam" TypeId"1"/gt
lt/Plugingt ltPlugin Name"Contact"gt
ltEnergy Type1"Foam" Type2"Foam"gt20lt/Energygt
ltEnergy Type1"Medium" Type2"Medium"gt100lt/E
nergygt ltEnergy Type1"Medium"
Type2"Foam"gt100lt/Energygt
ltDepthgt1.5lt/Depthgt lt/Plugingt
24
PIF File
ltSteppable Type"PIFInitializer"gt
ltPIFNamegtFoam_1.piflt/PIFNamegt lt/Steppablegt
1 Foam 1 5 1 5 0 0 2 Foam 1 5 6 10 0 0 3 Foam 1 5
11 15 0 0 4 Foam 1 5 16 20 0 0 5 Foam 1 5 21 25 0
0 6 Foam 1 5 26 30 0 0 7 Foam 1 5 31 35 0 0 8
Foam 1 5 36 40 0 0 9 Foam 1 5 41 45 0 0
25
PIF Generator
./FoamInit.pl -r5 -i60 -ofoaminit1.pif -z2
-m10 Lattice dimension x_max301 y_max301
z_max1
ltDimensions x"301" y"301" z"1"/gt
26
Change temperature
5
500
ltPottsgt ltDimensions x"101" y"101"
z"1"/gt ltAnnealgt0lt/Annealgt
ltStepsgt1000lt/Stepsgt ltTemperaturegt500lt/Temper
aturegt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltBoundary_ygtPeriodiclt/Boundary_ygt
27
Change Contact energy
Mcs 100
Mcs 50
Mcs 0
ltPlugin Name"Contact"gt ltEnergy
Type1"Foam" Type2"Foam"gt200lt/Energygt
ltEnergy Type1"Medium" Type2"Medium"gt1lt/Energygt
ltEnergy Type1"Medium" Type2"Foam"gt1lt/Energ
ygt ltDepthgt1.5lt/Depthgt
lt/Plugingt
28
Order of Neighbor
ltPottsgt ltDimensions x"101" y"101"
z"1"/gt ltAnnealgt0lt/Annealgt
ltStepsgt100lt/Stepsgt ltTemperaturegt5lt/Temperatu
regt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltBoundary_ygtPeriodiclt/Boundary_ygt
ltBoundary_xgtPeriodiclt/Boundary_xgt
ltFlipNeighborMaxDistancegt1.75lt/FlipNeighborMaxDist
ancegt lt/Pottsgt ltPlugin
Name"Contact"gt ltEnergy Type1"Foam"
Type2"Foam"gt20lt/Energygt ltEnergy
Type1"Medium" Type2"Medium"gt100lt/Energygt
ltEnergy Type1"Medium" Type2"Foam"gt100lt/Energygt
ltDepthgt1.5lt/Depthgt
lt/Plugingt
29
Order of Neighbor
1.5
2.7
1.1
ltPlugin Name"Contact"gt ltEnergy
Type1"Foam" Type2"Foam"gt20lt/Energygt
ltEnergy Type1"Medium" Type2"Medium"gt200lt/Energygt
ltEnergy Type1"Medium" Type2"Foam"gt200lt/E
nergygt
ltDepthgt1.1lt/Depthgt lt/Plugingt
30
Temperature effect on Low Order of Neighbor
ltDepthgt1.1lt/Depthgt
Temperature 5
Temperature 20
ltPottsgt ltDimensions x"101" y"101"
z"1"/gt ltAnnealgt0lt/Annealgt
ltStepsgt100lt/Stepsgt ltTemperaturegt5lt/Temperatu
regt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltBoundary_ygtPeriodiclt/Boundary_ygt
ltBoundary_xgtPeriodiclt/Boundary_xgt
ltFlipNeighborMaxDistancegt1.1lt/FlipNeighborMaxDista
ncegt lt/Pottsgt
31
Cell Sorting
Initial
32
XML file for Cell Sorting
ltCompuCell3Dgt ltPottsgt ltDimensions x"70"
y"70" z"1"/gt ltAnnealgt10lt/Annealgt
ltStepsgt10000lt/Stepsgt ltTemperaturegt5lt/Temperatur
egt ltFlip2DimRatiogt1lt/Flip2DimRatiogt
ltFlipNeighborMaxDistancegt1.75lt/FlipNeighborMaxDist
ancegt lt/Pottsgt ltPlugin Name"Volume"gt
ltTargetVolumegt9lt/TargetVolumegt
ltLambdaVolumegt3.0lt/LambdaVolumegt lt/Plugingt
ltPlugin Name"Surface"gt ltTargetSurfacegt16lt/Targ
etSurfacegt ltLambdaSurfacegt0.5lt/LambdaSurfacegt
lt/Plugingt ltPlugin Name"CellType"gt ltCellType
TypeName"Medium" TypeId"0"/gt ltCellType
TypeName"Condensing" TypeId"1"/gt ltCellType
TypeName"NonCondensing" TypeId"2"/gt lt/Plugingt
ltPlugin Name"Contact"gt ltEnergy Type1"Medium"
Type2"Medium"gt0lt/Energygt ltEnergy
Type1"NonCondensing" Type2"NonCondensing"gt14lt/En
ergygt ltEnergy Type1"Condensing"
Type2"Condensing"gt2lt/Energygt ltEnergy
Type1"NonCondensing" Type2"Condensing"gt11lt/Energ
ygt ltEnergy Type1"NonCondensing"
Type2"Medium"gt16lt/Energygt ltEnergy
Type1"Condensing" Type2"Medium"gt16lt/Energygt
ltDepthgt1.75lt/Depthgt lt/Plugingt ltPlugin
Name"CenterOfMass"/gt ltSteppable
Type"OutputData"/gt ltSteppable
Type"BlobInitializer"gt ltGapgt0lt/Gapgt
ltWidthgt2lt/Widthgt ltCellSortInitgtyeslt/CellSortIni
tgt ltRadiusgt20-lt/Radiusgt lt/Steppablegt lt/Comp
uCell3Dgt
1
2
3
4
33
Energy setting
ltPlugin Name"Volume"gt ltTargetVolumegt9lt/TargetV
olumegt ltLambdaVolumegt3.0lt/LambdaVolumegt
lt/Plugingt ltPlugin Name"Surface"gt
ltTargetSurfacegt16lt/TargetSurfacegt
ltLambdaSurfacegt0.5lt/LambdaSurfacegt
lt/Plugingt ltPlugin Name"CellType"gt ltCellType
TypeName"Medium" TypeId"0"/gt ltCellType
TypeName"Condensing" TypeId"1"/gt ltCellType
TypeName"NonCondensing" TypeId"2"/gt lt/Plugingt
ltPlugin Name"Contact"gt ltEnergy Type1"Medium"
Type2"Medium"gt0lt/Energygt ltEnergy
Type1"NonCondensing" Type2"NonCondensing"gt14lt/En
ergygt ltEnergy Type1"Condensing"
Type2"Condensing"gt2lt/Energygt ltEnergy
Type1"NonCondensing" Type2"Condensing"gt11lt/Energ
ygt ltEnergy Type1"NonCondensing"
Type2"Medium"gt16lt/Energygt ltEnergy
Type1"Condensing" Type2"Medium"gt16lt/Energygt
ltDepthgt1.75lt/Depthgt lt/Plugingt
34
Initial structure setting
ltSteppable Type"BlobInitializer"gt
ltGapgt0lt/Gapgt ltWidthgt2lt/Widthgt
ltCellSortInitgtyeslt/CellSortInitgt
ltRadiusgt20-lt/Radiusgt lt/Steppablegt
35
Future Plans
  • We want to hear from you
  • Shell language interface
  • As matlab, FemLab
  • Parallelizing
Write a Comment
User Comments (0)
About PowerShow.com