Week 2- Journal/Code Club- PKD Paper


14
views
0
6 days ago by
Week 2-
Paper: Virtual-Tissue Computer Simulations Define the Roles of Cell Adhesion and Proliferation in the Onset of Kidney Cystic Disease
Code-  http://www.compucell3d.org/Models

Discussion on Code/Basics-Focusing on Tubule code
The code from the paper is split into 3 folders: IsoCyst, Measure, and tubule.
  • Tubule- creates a kidney tubule with domains and sub cellular parts
    • PKD.py- This imports models and is where you change and input parameters that feed to the Steppables
      • Continuing from Line 42
      • def configureSimulation(sim,Lx,Ly,Lz,Temp,Time,NOrder,CNOrder,CINOrder,debugFreq):
        • This defines the class configureSimulation. This class is used to import XML type info and parameters for the model. It is called called later in the same script on line 169, see below:
          • configureSimulation(sim,Lx,Ly,Lz,Temp,Time,NOrder,CNOrder,CINOrder,debugFreq))
      • Lines 44-45
        •  import CompuCellSetup
              from XMLUtils import ElementCC3D
        • This imports the utilities so the XML import can work
      • Line 47
        • CompuCell3DElement=ElementCC3D("CompuCell3D",{"Version":"3.7.3"})
        • This creates a CC3D element or a CC3D kernel, which is the way you do XML import. Specifically, it creates a top level element, or a root element, using the function Elementcc3d() from XMLUtils. See chapter 17 of the 3.7.6 version of Python Scripting manual
      • Lines 49-55
        • #POTTS CONDITIONS
              potts=CompuCell3DElement.ElementCC3D("Potts")
              potts.ElementCC3D("Dimensions",{"x":Lx,"y":Ly,"z":Lz})
              potts.ElementCC3D("Temperature",{},Temp)
              potts.ElementCC3D("Steps",{},Time)
              potts.ElementCC3D("NeighborOrder",{},NOrder)
              potts.ElementCC3D("DebugOutputFrequency",{},debugFreq)
            #Setting periodic boundary conditions to all directions
              potts.ElementCC3D("Boundary_x",{},"Periodic")
              potts.ElementCC3D("Boundary_y",{},"Periodic")
              potts.ElementCC3D("Boundary_z",{},"Periodic")
        • These lines import XML to the CC3D kernel created before. Specifically, Line 47 created a high level element, and now we are attaching child elements to it (here it is the Potts child element).  Potts itself has child elements, so we attach child elements to Potts element
      • Lines 62-70
        • #CELL TYPES -> Lumen, Cyto, Apical, Basal, Lateral1, Lumen and Lateral2
              cellType=CompuCell3DElement.ElementCC3D("Plugin",{"Name":"CellType"})
              cellType.ElementCC3D("CellType",{"TypeName":"Medium","TypeId":0})
              cellType.ElementCC3D("CellType",{"TypeName":"Cyto","TypeId":1})
              cellType.ElementCC3D("CellType",{"TypeName":"Apical","TypeId":2})
              cellType.ElementCC3D("CellType",{"TypeName":"Basal","TypeId":3})
              cellType.ElementCC3D("CellType",{"TypeName":"Lateral","TypeId":4})
              cellType.ElementCC3D("CellType",{"TypeName":"Lumen","TypeId":5})
              cellType.ElementCC3D("CellType",{"TypeName":"Lateral2","TypeId":6})
        • We are importing more XML. Here it is the Celltype plugin. I am trying to figure out what the two Lateral cell types are for.
Community: CompuCell3D

Similar posts:
Search »