Cell

Класс Cell используется для работы с отдельными агентами, т.е. клетками.

Для импорта данного класса используйте:

import ru.biosoft.physicell.core.Cell

В этом классе можно выделить 4 отдельных класса, каждый из которых используется для работы с определенной характеристикой клетки.

Классы Cell

Класс

Описание

CellFunctions functions

Используется для описания основных функций жизнедеятельности клетки.

Все члены данного класса представлены в таблице 1.1.

CellParameters parameters

Используется для описания дополнительных встроенных параметров клетки.

Все члены данного класса представлены в таблице 1.2.

CellState state

Используется для описания текущего состояния клетки.

Все члены данного класса представлены в таблице 1.3.

CustomCellData customData

Используется для описания пользовательских переменных и параметров клетки.

Все члены данного класса представлены в таблице 1.4.

Остальные члены класса Cell представлены в таблице 1.5.

Таблица 1.1. Члены класса CellFunctions

Член класса

Описание

Instantiator instantiator

Содержит объект класса Instantiator, описывающий то, что происходит при создании новой клетки.

VolumeUpdate updateVolume

Содержит объект класса VolumeUpdate, описывающий, как изменяется объем клетки во время ее жизнедеятельности.

Практически всегда используется StandardVolumeUpdate.

UpdateMigrationBias updateMigration

Содержит объект класса UpdateMigrationBias, описывающий целенаправленное движение клетки (например, на основе хемотаксиса).

Примеры: Chemotaxis, Advanced Chemotaxis.

Пример использования.

CustomCellRule customCellRule

Содержит объект класса CustomCellRule, описывающий дополнительное правило для жизнедеятельности клетки (например, избегать границ решетки).

Пример использования.

UpdatePhenotype updatePhenotype

Содержит объект класса UpdatePhenotype, описывающий, как изменяются основные внутренние параметры клетки.

Например, «Default O2-based Phenotype» - на основе концентрации кислорода в среде.

Пример использования.

pre_update_intracellular pre_update_intracellular

Содержит объект класса pre_update_intracellular.

Вызывается до шага вычислений внутриклеточной ОДУ/FBA модели.

post_update_intracellular post_update_intracellular

Содержит объект класса post_update_intracellular.

Вызывается после шага вычислений внутриклеточной ОДУ/FBA модели.

UpdateVelocity updateVelocity

Содержит объект класса UpdateVelocity, описывающий движение клетки в целом, учитывая целенаправленное и случайное движение, а также притяжение и отталкивание другими клетками.

Практически всегда используется StandardUpdateVelocity.

MembraneInteractions membraneInteraction

Содержит объект класса MembraneInteractions, описывающий взаимодействие клетки с базальной мембраной.

Пример, DomainEdgeAvoidance - устанавливает избегание базальной мембраны клетками.

DistanceCalculator membraneDistanceCalculator

Содержит объект класса DistanceCalculator, описывающий расчет расстояния от клетки до базальной мембраны.

Например, DomainEdgeDistance - рассчитывает расстояние до базальной мембраны как расстояние до ближайшей границы решетки.

set_orientation set_orientation

Содержит объект класса set_orientation, описывающий, как устанавливается ориентация клетки в пространстве после деления.

Например, UpOrientation - устанавливает ориентацию по оси Z.

Contact contact

Содержит объект класса Contact, описывающий взаимодействие между сцепленными клетками.

Например, StandardElasticContact -эластичное взаимодействие.

CellDivision cellDivision

Содержит объект класса CellDivision, описывающий, как происходит клеточное деление.

Например, StandardAsymmetricDivision - асимметричное деление.

Стандартное деление используется, если cellDivision не установлен (-).
Таблица 1.2. Члены класса CellParameters

Член класса

Описание

double o2_proliferation_saturation

Содержит количество кислорода, при котором он перестает усиливать пролиферацию клетки.

Используется для клеток с фенотипом «Default O2-based phenotype».

Пример использования.

double o2_reference

Содержит референсное значение кислорода.

Пример использования.
Таблица 1.3. Члены класса CellState

Член класса

Описание

List<Cell> attachedCells

Содержит список клеток, соединенных с данной клеткой.

Пример использования.

double damage

Содержит текущее количество повреждений, нанесенных клетке.

Пример использования.

double simplePressure

Содержит значение давления, оказываемого на клетку извне.

Пример использования.

List<Cell> neighbors

Содержит массив клеток, являющихся соседями данной клетки.

Пример использования.
int attachedCells.size()

или

int numberAttachedCells()
Возвращают количество клеток, соединенных с данной клеткой.

Пример использования.
Таблица 1.4. Члены класса CustomCellData

Член класса

Описание

int findVariableIndex(String variable)

variable - название переменной.

Возвращает индекс переменной variable в списке всех переменных типа клетки.

Пример использования.

double get(int index)

index - индекс переменной.

Возвращает значение переменной с индексом index для данной клетки.

Пример использования.

void set(String name, double value)

name - название параметра.
value - значение.

Устанавливает значение value пользовательскому параметру name.

Пример использования.
Таблица 1.5. Остальные члены класса Cell

Член класса

Описание

Cell cell = new Cell(CellDefinition cd, Model model)

cd - тип клеток.
model - модель.

Конструктор, создает новую клетку cell типа cd в модели model.

Пример использования.

double[] position

Содержит трехмерный вектор - координаты клетки.

Пример использования.

double[] velocity

Содержит трехмерный вектор - скорость клетки.

Пример использования.

int type

Содержит числовой код типа данной клетки.

Пример использования.

int ID

Содержит автоматически сгенерированный идентификатор клетки.

Пример использования.

String typeName

Содержит название типа клеток, к которому относится данная клетка.

Пример использования.

static void detachCells(Cell cell1, Cell cell2)

cell1 - клетка.
cell2 - клетка.

Расцепляет клетки cell1 и cell2.

Пример использования.

static void attachcCells(Cell cell1, Cell cell2)

cell1 - клетка.
cell2 - клетка.

Сцепляет клетки cell1 и cell2.

Пример использования.

static void createCell(CellDefinition cd, Model model, double[] position)

cd - тип клеток.
model - модель.
position - координаты клетки.

Создает клетку типа cd в модели model в точке position.

Пример использования.

Microenvironment getMicroenvironment()

Возвращает среду, в которой сущетсвует клетка.

Пример использования.

double nearest_gradient(int index)

index - индекс субстрата.

Возвращает значение градиента плотности субстрата с индексом index в ближайшей к клетке ячейке решетки.

Пример использования.

void startDeath(int index)

index - индекс типа клеточной смерти.

Запускает клеточную смерть с индексом index.

Пример использования.

List<Cell> cells_in_my_container()

Возвращает список клеток в ячейке данной клетки.

Пример использования.

void removeAllAttachedCells()

Отсоединяет все клетки, прикрепленные к данной клетке.

Пример использования.

Model getModel()

Возвращает модель, в которой находится данная клетка.

Пример использования.

double[] nearest_density_vector()

Возвращает массив плотностей всех субстратов в ячейке решетки, где находится данная клетка.

Пример использования.

void ingestCell(Cell cell)

cell - клетка.

Клетка, к которой был применен данный метод, поглощает клетку cell.

Пример использования.

double nearestGradient(String substrate)

substrate - название субстрата.

Возвращает градиент субстрата substrate в ячейке решетки, в которой находится данная клетка.

Пример использования.

void lyseCell()

Активирует лизис данной клетки.

Пример использования.

int get_current_mechanics_voxel_index()

Возвращает номер ячейки, в которой находится данная клетка.

Пример использования.

CellContainer get_container()

Возвращает объект, обрабатывающий положение данной клетки в решетке.

Пример использования.

static boolean isNeighborVoxel(Cell cell, double[] coordinates, double[] center, int index)

cell - клетка.
coordinates - координаты клетки.
center - центр ячейки среды.
index - индекс ячейки среды.

Возвращает true, если ячейка среды с индексом index с центром в точке center является соседней* с клеткой cell, находящейся в точке coordinates.

*Под соседством подразумевается, что клетка может взаимодействовать с клетками в этих ячейках.

Пример использования.

List<Cell> nearby_interacting_cells()

Возвращает массив клеток, являющихся соседями и находящихся достаточно близко для взаимодействия с данной клеткой.

Пример использования.