Пользовательский код для модели
Примечание
Данный раздел предназначен для продвинутых пользователей и является необязательным - создавать модели можно и без использования кода.
Поведение клеток, а также другие аспекты модели могут быть заданы java-кодом, описывающим подходящий java-класс.
В частности, с помощью java-кода можно настроить:
Различные функции клеток (изменение внутреннего состояния, подвижность, клеточный контакт и др.).
Цвета отрисовки клеток в различных условиях.
Начальное расположение клеток.
Вывод отчета и логов при симуляции модели.
События модели.
Правила создания новых клеток.
и др.
Java-код хранится в виде отдельных файлов в репозитории BioUML. Каждый файл описывает один java-класс.
Для создания java-файла (java-класса) нужно:
Нажать ПКМ на папку в репозитории, в которой вы хотите создать java-класс.
В раскрывающемся списке нажать ЛКМ на
New Java code.В появившемся окошке вписать название файла с расширением .java.
Нажать ЛКМ кнопку Ok.
После этого в указанной папке у вас появится java-файл (обозначается значком
), который можно открыть, нажав на него 2 раза ЛКМ или нажав на него ПКМ и в раскрывающемся списке нажав ЛКМ на
Open.
В открывшемся файле можно прописывать необходимый код.
Список основных java-классов пакета ru.biosoft.Physicell, используемых для задания пользовательского поведения клеток, и их краткое описание представлены ниже.
Класс |
Описание |
|---|---|
Работа с векторами |
|
Работа с отдельными агентами, т.е. клетками |
|
Работа с различными свойствами клеток |
|
Работа с типами клеток |
|
Работа с мультиклеточной моделью для численных расчетов |
|
Работа со средой модели, в которой находятся клетки и вещества |
|
Генерация случайных величин в модели |
|
Работа с константными численными значениями модели |
|
Работа со стандартными моделями клеточного цикла и клеточной смерти |
|
Управление передачи сигналов и поведения клеток |
|
Получение информации о расположении клеток в решетке модели |
|
Работа с декартовой системой координат, в которой располагаются клетки и субстраты |
|
Чтение модели из текстового файла |
|
Расчет эффекта выходного сигнала согласно многомерному закону Хилла на основе множественных входящих сигналов-эффектов |
|
Работа с методами, которые рассчитывают значение выходного сигнала на основе одного входящего сигнала |
|
Дополнительные методы работы с моделью |
|
AgentColorer |
Интерфейс, используемый для определения того, каким цветом отрисовывать клетку (ее границу, внутреннюю часть, границу ядра и само ядро) |
InitialCellsArranger |
Абстрактный класс, определяющий изначальную расстановку клеток в модели. Может использоваться в подвкладке Initial Condition вкладки Microenvironment. |
O2based |
Подкласс UpdatePhenotype. Описывает стандартную жизнедеятельность клетки в зависимости от концентрации кислорода. |
Visualizer |
Отрисовывает результат расчетов модели. |
ReportGenerator |
Создает табличный отчет во время расчетов с отдельной строкой для каждой клетки в модели. Может использоваться в подвкладке Model Report вкладки Microenvironment. |
CustomCellData |
Содержит пользовательские параметры конкретного типа клеток. Заполняется пользователем в подвкладке Custom Data вкладки Cell Types. |
AgentColorerDefault |
Стандартная реализация класса AgentColorer. Раскрашивает агент в зависимости от его типа и того, жив ли он. |
FalseCellCytometryVisualizer |
Подкласс AgentColorerDefault. Раскрашивает клетки, имеющие жизненный цикл типа Flow Cytometry model в зависимости от текущей фазы клеточного цикла. |
StandardElasticContact |
Стандартная реализация класса Contact. Описывает эластичное взаимодействие клетки с другими клетками. |
Chemotaxis |
Стандартная реализация класса UpdateMigrationBias. Описывает движение клетки по градиенту одного субстрата. |