Динамическое моделирование
Динамическое моделирование (или моделирование динамической системы) — это использование компьютерной программы для моделирования изменяющегося во времени поведения динамической системы . Системы обычно описываются обыкновенными дифференциальными уравнениями или уравнениями в частных производных . В ходе моделирования решается система уравнений состояния, чтобы определить поведение переменных состояния в течение определенного периода времени. Уравнение решается с помощью методов численного интегрирования для получения переходного поведения переменных состояния. Моделирование динамических систем прогнозирует значения переменных состояния модельной системы, поскольку они определяются прошлыми значениями состояния. Эта связь обнаруживается путем создания модели системы. [1]
Обзор
[ редактировать ]Имитационные модели обычно получаются из аппроксимаций математических моделей непрерывного времени в дискретном времени. [2] Поскольку математические модели включают ограничения реального мира, такие как люфт шестерни и отскок от жесткой остановки, уравнения становятся нелинейными. Это требует численных методов решения уравнений. [3]
Численное моделирование выполняется путем прохождения временного интервала и вычисления интеграла производных посредством численного интегрирования . Некоторые методы используют фиксированный шаг интервала, а другие используют адаптивный шаг, который может автоматически уменьшаться или увеличиваться для поддержания приемлемой устойчивости к ошибкам. Некоторые методы могут использовать разные временные шаги в разных частях имитационной модели.
Существует два типа системных моделей, подлежащих моделированию: модели разностных уравнений и модели дифференциальных уравнений. Классическая физика обычно основана на моделях дифференциальных уравнений. Вот почему большинство старых программ моделирования являются просто решателями дифференциальных уравнений и делегируют решение разностных уравнений «процедурным сегментам программы». Некоторые динамические системы моделируются с помощью дифференциальных уравнений, которые могут быть представлены только в неявной форме. Эти системы дифференциально-алгебраических уравнений требуют специальных математических методов моделирования. [2]
Поведение некоторых сложных систем может быть весьма чувствительным к начальным условиям, что может привести к большим ошибкам относительно правильных значений. Чтобы избежать этих возможных ошибок, можно применить строгий подход, при котором находится алгоритм, который может вычислить значение с любой желаемой точностью. Например, константа e является вычислимым числом, поскольку существует алгоритм, способный вычислить константу с любой заданной точностью. [4]
Приложения
[ редактировать ]Первые применения компьютерного моделирования динамических систем были в аэрокосмической промышленности. [5] Коммерческое использование динамического моделирования многочисленно и варьируется от атомной энергетики, паровых турбин, моделирования транспортных средств с 6 степенями свободы, электродвигателей, эконометрических моделей, биологических систем, роботизированных манипуляторов, систем масс-пружин-демпферов, гидравлических систем и миграции доз лекарств через человеческое тело, и это лишь некоторые из них. Эти модели часто можно запускать в реальном времени , чтобы получить виртуальный ответ, близкий к реальной системе. Это полезно в системах управления процессами и мехатронных системах для настройки систем автоматического управления до их подключения к реальной системе или для обучения людей до того, как они начнут управлять реальной системой.Моделирование также используется в компьютерных играх и анимации и может быть ускорено с помощью физического движка — технологии, используемой во многих мощных графики компьютерной программах , таких как 3ds Max , Maya , Lightwave и многих других, для моделирования физических характеристик. В компьютерной анимации такие вещи, как волосы , ткань , жидкость , огонь и частицы можно легко смоделировать , в то время как аниматор- человек анимирует более простые объекты. Компьютерная динамическая анимация на очень простом уровне впервые была использована в 1989 году. Pixar Короткометражный фильм «Безделка» о перемещении искусственного снега в снежном шаре и гальки в аквариуме.
Пример динамического моделирования
[ редактировать ]
Эта анимация была сделана с помощью программного обеспечения системы динамики с помощью средства 3D-моделирования. Рассчитанные значения связаны с параметрами стержня и кривошипа. В данном примере кривошип приводится в движение, мы изменяем как скорость вращения, его радиус, так и длину штока, за ним следует поршень.
См. также
[ редактировать ]- Сравнение программного обеспечения системной динамики — включает пакеты, не перечисленные ниже.
- Simulink — среда графического программирования на базе MATLAB для моделирования, моделирования и анализа динамических систем.
- MSC Adams — программное обеспечение для моделирования динамики многотельных тел.
- SimulationX — Программное обеспечение для моделирования многодоменных динамических систем.
- AMESim — Программное обеспечение для моделирования многодоменных динамических систем.
- AGX Multiphysical — физический движок для моделирования многодоменных динамических систем.
- Dymola — Программное обеспечение для моделирования многодоменных динамических систем с использованием языка Modelica.
- EcosimPro — инструмент моделирования непрерывно-дискретных систем.
- Hopsan — Программное обеспечение для моделирования многодоменных динамических систем
- MapleSim — Программное обеспечение для моделирования многодоменных динамических систем.
- Modelica — непатентованный объектно-ориентированный язык для динамического моделирования, основанный на уравнениях.
- Физический движок
- VisSim — визуальный язык для нелинейного динамического моделирования.
- PottersWheel — набор инструментов Matlab для калибровки параметров динамических систем.
- Simcad Pro — динамическое и интерактивное программное обеспечение для моделирования дискретных событий.
Примечания
[ редактировать ]- ^ Корн (2007) , стр. 2.
- ^ Jump up to: а б Клее и Аллен (2016) , с. 3.
- ^ Клее и Аллен (2016) , с. 93.
- ^ Галатоло, Хойруп и Рохас (2011) .
- ^ Клее и Аллен (2016) , с. xiii.
Ссылки
[ редактировать ]- Галатоло, Стефано; Хойруп, Матье; Рохас, Кристобаль (2011), Динамические системы, моделирование, абстрактные вычисления. , arXiv : 1101.0833
- Корн, Гранино А. (2007), Расширенное моделирование динамических систем: методы репликации моделей и моделирование Монте-Карло , John Wiley & Sons
- Клее, Гарольд; Аллен, Рэндал (2016), Моделирование динамических систем с помощью MATLAB и Simulink , Crc Press