Finally, a model of a multi-cellular system with cell types represented by the SP-systems, SP1, ..., SPn and spatial distribution captured in a finite point lattice Lat is specified as a Lattice Population P-system which distributes many clones of the different cell types over the corresponding lattice points.
The polygon associated with each point is used to represent the shape of the correspoding cell. The neighbours associated with each point is used when a rule of the form below moving objects to the outside of a compartment is applied in the outermost membrane of a SP-system. In this case one the SP-system located in the neighbour points is chosen randomly and the corresponding objects are placed in its outermost compartment.
An LPP-system enumerates the SP-systems representing the different individual cell types, the finite point lattice describing the geometry of the multi-cellular system and a position function that assigns a SP-system with each point of the lattice.
The model of a multi-cellular system as a LPP-system must be specified in a text file with the extension, .lpp. The different components of the model are specified according to the following format:
LPPsystem modelName SPsystems ... endSPsystems lattice latticeName from latticeFile spatialDistribution ... endSpatialDistribution endLPPsystem
The model of the multi-cellular system is identified with modelName. In the block SPsystems ... endSPsystems the models of the individual cell types as SP-systems must be enumerated stating the file where they are defined. An individual cell type modelled as a SP-system identified with cellTypeName in file fileName.sps is declared as:
SPsystem cellTypeName from fileName.sps
Recall that the individual cell types can also be specified in SBML format. In this case the declaration of a cell type is exactly as above except that the extension of the file containing the model must have the extension .sbml.
The finite point lattice capturing the geometry of the multi-cellular system is introduced by specifying an identifier latticeName and the file where it is defined using the key word from.
Finally, the spatial distribution of the different clones of cell types over the lattice points is specified within the block spatialDistribution ... endSpatialDistribution. Each SP-system identified with SPsystemName is associated with a set of positions occupied by cells of the corresponding type. This is specified using the block positions for SPsystemName ... endPositions:
positions for boundaryCell parameters ... endParameters coordinates ... endCoordinates endPositions
Here the coordinates of the lattice points are declared in the block:
coordinates x = coordinate1 y = coordinate2 endCoordinates
The values coordinate1 and coordinate2 can be specified as mathematical formulas using parameters. These parameters can be defined as taking values within a given range [ lowerBound ... upperBound ] with a specified step within the block parameters ... endParameters as parameter parameterName = lowerBound : step : upperBound:
parameters parameter parameterName = lowerBound:step:upperBound ... endParameters
LPPsystem pulsePropagation SPsystems SPsystem senderCell from senderCell.sps SPsystem pulsingCell from pulsingCell.sps SPsystem boundaryCell from pulsingCell.sps endSPsystems lattice rectangular from lattice.lat spatialDistribution positions for boundaryCell parameters parameter i = 0:1:51 parameter j = 0:11:11 endParameters coordinates x = i y = j endCoordinates endPositions positions for boundaryCell parameters parameter i = 0:51:51 parameter j = 0:1:10 endParameters coordinates x = i y = j endCoordinates endPositions positions for senderCell parameters parameter i = 1:1:5 parameter j = 1:1:10 endParameters coordinates x=i y=j endCoordinates endPositions positions for pulsingCell parameters parameter i=6:1:50 parameter j=1:1:10 endParameters coordinates x=i y=j endCoordinates endPositions endSpatialDistribution endLPPsystem