Симуляция модели

SimBiology позволяет вам симулировать динамическое поведение модели. Прежде и в процессе моделирования, SimBiology выполняет серию шагов включая преобразование реакций модели и правил скоростей в набор обыкновенных дифференциальных уравнений (ОДУ), которые математически описывают динамику модели.

А именно, прежде чем симуляция начинается, SimBiology:

  1. Проверяет модель. Для получения дополнительной информации смотрите Model Verification.

  2. Определяет начальные условия, то есть, значения количества в начале моделирования. В частности, SimBiology сначала инициализирует значения количества на основе значений, заданных в модели. Во-вторых, это обновляет значения, заменяя их на соответствующие альтернативные значения от вариантов если таковые имеются. Затем это обновляет значения на основе начальных присвоений и повторенных присвоений. SimBiology оценивает начальные присвоения и повторенные присвоения как набор одновременных ограничений, и их порядок не влияет на итоговые значения количества. Для получения дополнительной информации смотрите Порядок Оценки Правил.

  3. Создает ОДУ на основе реакций модели и правил скоростей. А именно, левая сторона (LHS) каждого ОДУ представляет производную времени количества модели. Правая сторона (RHS) задана с помощью потоков реакции, которые выведены из скоростей реакции. Для получения дополнительной информации смотрите ОДУ Получения от Реакций.

  4. Преобразует дозы в изменения состояния, которые происходят в определенных временах симуляции.

  5. Преобразует функции события в изменения состояния, которые зависят от условий, заданных, в конечном счете инициировал.

Когда симуляция начинается, то есть, во времени симуляции = 0, SimBiology:

  1. Значения обновлений на основе начальных присвоений и повторенных присвоений.

  2. Применяет любые изменения состояния из-за дозирования заданного во времени симуляции = 0.

  3. Регистрирует обновленные значения количества.

Примечание

События не могут вызвать переходы во время = 0, поскольку события только применяются, когда триггер изменяется от лжи до истины. Если триггер верен во времени симуляции = 0, то никакой переход не произошел, и событие не инициировано.

Во время симуляции SimBiology использует решатель, чтобы вычислить решения для ОДУ в разное время. А именно, решатель решает, что подходящее время продвигается и выполняет следующее на каждом шаге.

  1. Значения обновлений для любых повторных присвоений.

  2. Проверки триггерное условие каждого события. Если это переключается от лжи до истины на этом временном шаге, то это применяет изменения состояния согласно функциям события и обновляет значения для любых повторных присвоений.

  3. Регистрирует обновленные значения количества.

Чтобы видеть систему ОДУ модели, используйте getequations в командной строке или следуйте инструкциям в уравнениях Модели Show и Начальных условиях для приложения SimBiology Model Builder.

Примечание

Если модель имеет алгебраические уравнения, необходимо задать один из следующих решателей дифференциального алгебраического уравнения (DAE): солнечные часы, ode15s, ode23t. SimBiology преобразует алгебраические уравнения в алгебраические ограничения и решает их наряду с остальной частью ОДУ. Для получения дополнительной информации о доступных решателях, смотрите Выбор Simulation Solver.

Смотрите также

Связанные примеры

Больше о

Для просмотра документации необходимо авторизоваться на сайте