.. _PhysiCell_java_Cell: Cell ==== .. role:: raw-html(raw) :format: html .. raw:: html Класс Cell используется для работы с отдельными агентами, т.е. клетками. Для импорта данного класса используйте: .. code-block:: text import ru.biosoft.physicell.core.Cell В этом классе можно выделить 4 отдельных класса, каждый из которых используется для работы с определенной характеристикой клетки. .. list-table:: Классы Cell :header-rows: 1 * - Класс - Описание * - CellFunctions functions - | Используется для описания основных функций жизнедеятельности клетки. | | Все члены данного класса представлены в :ref:`таблице 1.1 `. * - CellParameters parameters - | Используется для описания дополнительных встроенных параметров клетки. | | Все члены данного класса представлены в :ref:`таблице 1.2 `. * - CellState state - | Используется для описания текущего состояния клетки. | | Все члены данного класса представлены в :ref:`таблице 1.3 `. * - CustomCellData customData - | Используется для описания пользовательских переменных и параметров клетки. | | Все члены данного класса представлены в :ref:`таблице 1.4 `. Остальные члены класса Cell представлены в :ref:`таблице 1.5 `. .. _Physicell_java_Cell_Tbl.1.1: .. list-table:: Таблица 1.1. Члены класса CellFunctions :header-rows: 1 * - Член класса - Описание * - Instantiator instantiator - Содержит объект класса Instantiator, описывающий то, что происходит при создании новой клетки. * - VolumeUpdate updateVolume - | Содержит объект класса VolumeUpdate, описывающий, как изменяется объем клетки во время ее жизнедеятельности. | | Практически всегда используется StandardVolumeUpdate. * - UpdateMigrationBias updateMigration - | Содержит объект класса UpdateMigrationBias, описывающий целенаправленное движение клетки (например, на основе хемотаксиса). | | Примеры: Chemotaxis, Advanced Chemotaxis. | | :ref:`Пример ` использования. * - CustomCellRule customCellRule - | Содержит объект класса CustomCellRule, описывающий дополнительное правило для жизнедеятельности клетки (например, избегать границ решетки). | | :ref:`Пример ` использования. * - UpdatePhenotype updatePhenotype - | Содержит объект класса UpdatePhenotype, описывающий, как изменяются основные внутренние параметры клетки. | | Например, "Default O2-based Phenotype" - на основе концентрации кислорода в среде. | | :ref:`Пример ` использования. * - 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 не установлен (-). .. _Physicell_java_Cell_Tbl.1.2: .. list-table:: Таблица 1.2. Члены класса CellParameters :header-rows: 1 * - Член класса - Описание * - double o2_proliferation_saturation - | Содержит количество кислорода, при котором он перестает усиливать пролиферацию клетки. | | Используется для клеток с :ref:`фенотипом ` «Default O2-based phenotype». | | :ref:`Пример ` использования. * - double o2_reference - | Содержит референсное значение кислорода. | | :ref:`Пример ` использования. .. _Physicell_java_Cell_Tbl.1.3: .. list-table:: Таблица 1.3. Члены класса CellState :header-rows: 1 * - Член класса - Описание * - List attachedCells - | Содержит список клеток, соединенных с данной клеткой. | | :ref:`Пример ` использования. * - double damage - | Содержит текущее количество повреждений, нанесенных клетке. | | :ref:`Пример ` использования. * - double simplePressure - | Содержит значение давления, оказываемого на клетку извне. | | :ref:`Пример ` использования. * - List neighbors - | Содержит массив клеток, являющихся соседями данной клетки. | | :ref:`Пример ` использования. * - | int attachedCells.size() | | или | | int numberAttachedCells() - | Возвращают количество клеток, соединенных с данной клеткой. | | :ref:`Пример ` использования. .. _Physicell_java_Cell_Tbl.1.4: .. list-table:: Таблица 1.4. Члены класса CustomCellData :header-rows: 1 * - Член класса - Описание * - int findVariableIndex(String variable) - | variable - название переменной. | | Возвращает индекс переменной variable в списке всех переменных типа клетки. | | :ref:`Пример ` использования. * - double get(int index) - | index - индекс переменной. | | Возвращает значение переменной с индексом index для данной клетки. | | :ref:`Пример ` использования. * - void set(String name, double value) - | name - название параметра. | value - значение. | | Устанавливает значение value пользовательскому параметру name. | | :ref:`Пример ` использования. .. _Physicell_java_Cell_Tbl.1.5: .. list-table:: Таблица 1.5. Остальные члены класса Cell :header-rows: 1 * - Член класса - Описание * - Cell cell = new Cell(CellDefinition cd, Model model) - | cd - тип клеток. | model - модель. | | Конструктор, создает новую клетку cell типа cd в модели model. | | :ref:`Пример ` использования. * - double[] position - | Содержит трехмерный вектор - координаты клетки. | | :ref:`Пример ` использования. * - double[] velocity - | Содержит трехмерный вектор - скорость клетки. | | :ref:`Пример ` использования. * - int type - | Содержит числовой код типа данной клетки. | | :ref:`Пример ` использования. * - int ID - | Содержит автоматически сгенерированный идентификатор клетки. | | :ref:`Пример ` использования. * - String typeName - | Содержит название типа клеток, к которому относится данная клетка. | | :ref:`Пример ` использования. * - static void detachCells(Cell cell1, Cell cell2) - | cell1 - клетка. | cell2 - клетка. | | Расцепляет клетки cell1 и cell2. | | :ref:`Пример ` использования. * - static void attachcCells(Cell cell1, Cell cell2) - | cell1 - клетка. | cell2 - клетка. | | Сцепляет клетки cell1 и cell2. | | :ref:`Пример ` использования. * - static void createCell(CellDefinition cd, Model model, double[] position) - | cd - тип клеток. | model - модель. | position - координаты клетки. | | Создает клетку типа cd в модели model в точке position. | | :ref:`Пример ` использования. * - Microenvironment getMicroenvironment() - | Возвращает среду, в которой сущетсвует клетка. | | :ref:`Пример ` использования. * - double nearest_gradient(int index) - | index - индекс субстрата. | | Возвращает значение градиента плотности субстрата с индексом index в ближайшей к клетке ячейке решетки. | | :ref:`Пример ` использования. * - void startDeath(int index) - | index - индекс типа клеточной смерти. | | Запускает клеточную смерть с индексом index. | | :ref:`Пример ` использования. * - List cells_in_my_container() - | Возвращает список клеток в ячейке данной клетки. | | :ref:`Пример ` использования. * - void removeAllAttachedCells() - | Отсоединяет все клетки, прикрепленные к данной клетке. | | :ref:`Пример ` использования. * - Model getModel() - | Возвращает модель, в которой находится данная клетка. | | :ref:`Пример ` использования. * - double[] nearest_density_vector() - | Возвращает массив плотностей всех субстратов в ячейке решетки, где находится данная клетка. | | :ref:`Пример ` использования. * - void ingestCell(Cell cell) - | cell - клетка. | | Клетка, к которой был применен данный метод, поглощает клетку cell. | | :ref:`Пример ` использования. * - double nearestGradient(String substrate) - | substrate - название субстрата. | | Возвращает градиент субстрата substrate в ячейке решетки, в которой находится данная клетка. | | :ref:`Пример ` использования. * - void lyseCell() - | Активирует лизис данной клетки. | | :ref:`Пример ` использования. * - int get_current_mechanics_voxel_index() - | Возвращает номер ячейки, в которой находится данная клетка. | | :ref:`Пример ` использования. * - CellContainer get_container() - | Возвращает объект, обрабатывающий положение данной клетки в решетке. | | :ref:`Пример ` использования. * - static boolean isNeighborVoxel(Cell cell, double[] coordinates, double[] center, int index) - | cell - клетка. | coordinates - координаты клетки. | center - центр ячейки среды. | index - индекс ячейки среды. | | Возвращает true, если ячейка среды с индексом index с центром в точке center является соседней* с клеткой cell, находящейся в точке coordinates. | | \*Под соседством подразумевается, что клетка может взаимодействовать с клетками в этих ячейках. | | :ref:`Пример ` использования. * - List nearby_interacting_cells() - | Возвращает массив клеток, являющихся соседями и находящихся достаточно близко для взаимодействия с данной клеткой. | | :ref:`Пример ` использования.