cbmos package¶
Subpackages¶
Submodules¶
cbmos.cell module¶
The average cell cycle duration for a typical rapidly proliferating human cell is 24 hours (https://bionumbers.hms.harvard.edu/bionumber.aspx?id=112260).
As a default, we assume a normal distribution of cell cycle durations with mean=24h and sigma=1.0h.
- class cbmos.cell.Cell(ID, position)¶
Bases:
object
- Parameters:
ID (int) – Unique number used to identify the cell
position (numpy array) – The position of this cell (1, 2, or 3d)
- class cbmos.cell.ProliferatingCell(ID, position, birthtime=0.0, proliferating=True, division_time_generator=<function ProliferatingCell.<lambda>>, division_time=None, parent_ID=None)¶
Bases:
Cell
- Parameters:
ID (int) – Unique number used to identify the cell
position (numpy array) – The position of this cell (1, 2, or 3d)
birthtime (float) – Cell’s birthtime (0 by default). The first division time will be computed from that value.
proliferating (bool) – Whether or not the cell will proliferate
division_time_generator (float -> float) – function that takes the current time to generate the absolute next division time.
division_time (float) – first time at which the cell will divide next. If None, the division time generator will be use to set that time.
parent_ID (int) – ID of the parent cell, can be used to reconstruct cell lineages.
Note
One should always use the constructor to access member variables, in order to ensure correct behavior. Eg. it is not possible to set the proliferating flag outside of the constructor because the division time would not be updated in that case.
cbmos.events module¶
- class cbmos.events.CellDivisionEvent(target_cell)¶
Bases:
Event
Divide target_cell into parent cell and child cell, placed separation cell diameters apart.
- class cbmos.events.Event(*args, **kwargs)¶
Bases:
object
Abstract class for implementing events (e.g. cell division, cell death).