.. _PhysiCell_cell_properties_Functions:
Функции, описывающие поведение клетки (Functions)
=================================================
.. role:: raw-html(raw)
:format: html
.. |icon_option| image:: /images/icons/option.png
После нажатия на вкладку **Functions** на панели свойств справа у вас появится меню, в котором можно редактировать функции, описывающие поведение клетки.
.. figure:: /images/Physicell/Physicell_cell_properties/Functions_menu.png
:width: 100%
:alt: Functions_menu
:align: center
:raw-html:`
`
Всего можно редактировать 11 функций, каждая из которых описывает отдельный аспект жизни клетки.
.. figure:: /images/Physicell/Physicell_cell_properties/Functions_all.png
:width: 100%
:alt: Functions_all
:align: center
:raw-html:`
`
Для каждой из этих функций доступно на выбор несколько сценариев поведения. Выбрать тот или иной сценарий можно, нажав ЛКМ справа от соответствующей функции и выбрав в раскрывающемся списке нужный сценарий.
.. figure:: /images/Physicell/Physicell_cell_properties/Many_scenario.png
:width: 100%
:alt: Many_scenario
:align: center
:raw-html:`
`
Ниже представлен список всех функций и доступных сценариев для каждой из них:
- **Phenotype update**: общее описание поведения клетки, изменения ее поведения в зависимости от внешних и внутренних сигналов.
- *Default O2-based phenotype* - описывает жизнедеятельность клетки в зависимости от концентрации кислорода в среде.
- **Volume update**: описывает изменение всех объемных свойств клетки (количество жидкости, объем ядра и т.д.), включая и сам общий объем клетки.
- *Standard volume update* - задает зависимость свойств от объема по умолчанию.
- **Custom rule**: дополнительная функция поведения клетки.
- *Avoid microenvironment boundaries* - клетка избегает границ внешней среды,
- *Wrap microenvironment boundaries* - клетка проходит сквозь границу на другой край внешней среды.
- **Velocity update**: описывает изменение скорости передвижения клетки.
- *Standard Velocity* - скорость клетки меняется по правилам по умолчанию в зависимости от заданных свойств хемотаксисов, степеней адгезии и отклонения и присутствия других клеток вокруг.
- **Migration update**: описывает передвижения клетки.
- *Chemotaxis* - хемотаксис по градиенту одного вещества,
- *Advanced chemotaxis (weighted combination of gradients)* - хемотаксис по градиентам нескольких веществ с соответствующими чувствительностями,
- *Advanced normalize chemotaxis (weighted combination of normalized gradients)* - хемотаксис по нормализованным градиентам нескольких веществ с соответствующими чувствительностями.
- **Membrane interaction**: описывает взаимодействие клетки с базальной мембраной (сама базальная мембрана не моделируется, предполагается, что вся система расположена на ней).
- *Avoid domain edge* - клетка избегает границы мембраны.
- **Membrane distance calculator**: описывает расчет клеткой расстояния до базальной мембраны.
- *Domain edge distance* - рассчитывает расстояние до края мембраны.
- **Orientation**: описывает изменение ориентации клетки в пространстве.
- *Up orientation* - ориентация параллельно оси Z.
- **Contact**: описывает контакт клетки с другими клетками.
- *Standard Elastic Contact* - эластичная адгезия/отталкивание от других типов клеток.
- **Cell creation**: описывает процесс создания новой клетки во время деления или при начальной инициализации.
- **Cell division**: описывает процесс деления клетки.
- *Standard asymmetric division* - клетка делится асимметрично.
Также для каждой функции можно выбрать сценарий «**Custom...**». При таком выборе ниже функции, для которой был выбран данный сценарий, появится дополнительная вкладка |icon_option| «**Custom [название функции]**», в которой нужно указать путь до Java-кода, который будет описывать поведение клетки в рамках соответствующей функции.
.. figure:: /images/Physicell/Physicell_cell_properties/Custom_scenario.png
:width: 100%
:alt: Custom_scenario
:align: center
:raw-html:`
`