Моделирование динамических
систем
Моделирование динамических систем
по сути является прародителем системно-динамического
подхода моделирования. Моделирование с помощью данного подхода
используется
в мехатронике, электрической, химической и других инженерных
областях в качестве стандартного этапа процесса разработки. С
математической точки зрения динамическая система представляет собой
набор переменных состояния и алгебраических дифференциальных уравнений
различного вида, заданных для этих переменных и описывающих их
изменение с течением времени. В отличие от системной
динамики, переменные здесь несут некоторый "физический" смысл:
координаты местоположения, скорость, ускорение, сила, концентрация
и.т.д., они, как это следует из их смысла, непрерывны и не являются
агрегированными величинами, отражающими, например, общее количество
или среднее значение нескольких сущностей.
Так же как и в случае с системной динамикой, дискретно-событийным
(процессным) и агентным
моделированием, AnyLogic предоставляет удобные инструменты и для тех,
кто моделирует динамические системы:
Накопитель
- для дифференциальных уравнений.
Динамическая переменная
- для формул.
- AnyLogic поддерживает несколько численных методов для
решения дифференциальных, алгебраических и смешанных систем уравнений. Численный метод автоматически
выбирается исполняющим модулем AnyLogic в соответствии с
поведением моделируемой системы. При решении
дифференциальных уравнений первого порядка вначале используется метод Рунге-Кутта с фиксированным
шагом. В
случае систем алгебраических и
смешанных уравнений AnyLogic использует метод Ньютона, варьирующий
шаг интеграции для достижения необходимой точности.
- AnyLogic поддерживает моделирование физических систем с помощью Метода конечных элементов
(описание этого метода Вы можете найти здесь: http://ru.wikipedia.org/wiki/Метод_конечных_элементов).
В этом случае обычно используются массивы
и размерности типа диапазон
и Вы можете ссылаться в уравнениях на следующий и предыдущий
элемент . Вы можете изучить реализацию этого подхода на примере
модели "Vibrating String".
- Более того, AnyLogic является единственным инструментом, язык
моделирования которого не задает исключительно непрерывное или
дискретное поведения, а может задавать модели с гибридным.поведением.
Вы можете сделать Вашу модель гибридной, добавив дискретные события,
которые будут влиять на непрерывное поведение моделируемой системы,
например, Вы можете добавить событие, отслеживающее значение непрерывно
изменяющихся переменных и выполняющее некоторые действия при достижении
значением переменной какого-то определенного порога; или событие,
которое изменяет параметр уравнения и тем самым влияет на моделируемую
динамическую систему.
- Вы можете вынести переменные на интерфейс активного объекта и связать их с
интерфейсными переменными других активных объектов.
Связанные переменные будут всегда иметь одинаковые значения, тем самым
обеспечивая непрерывное взаимодействие объектов. Этот механизм
позволяет Вам создавать объекты, аналогичные блокам, обычно
используемым в блочных диаграммах - стандартном графическом языке
моделирования, используемом инженерами.