Математическое моделирование
Не ломай железяки - отработай на программных стендах!
Cостав курса ММ-II
Весна-лето 2023-2024 гг. Очно, пока И.А. Самыловский один :(
Беседуем о проекте "виртуальная планета", конкретно о моделях атмосферы, статических и динамических, хороших и разных
Беседуем о проекте "рой динамических объектов"

Начинаем разговор про сложное движение динамических объектов формулируем задачи по посадке на планету, по управлению объектом с двумя двигателями, которые потенциально могут объект закрутить, и рисуем набуанский истребитель, чтобы было веселее
Занятие 5
Продолжаем разговор о сложном движении динамического объекта и рассказываем про процесс движения подводной лодки или дирижабля в среде с сопротивлением.
"Виртуальная планета" -- моделирование изменения плотности атмосферы под действием солнечной радиации. Атмосферный горб и прочее
"Рои динамических объектов" -- моделирование движения объектов с учетом "инерционной", "когнитивной" и "социальной" компонент.
"Стабилизация динамического объекта" -- фактически игрушка, в которой нужно или посадить модуль на Луну, или успокоить вращение объекта с двумя двигателями. Всё вращается только вокруг одной оси, иначе слишком сложно.
"Сложное движение объекта в среде с сопротивлением" -- тот самый дирижабль или подводная лодка.
Поимка и убегание -- пытаемся сделать игру про дифференциальную игру
Cостав курса ММ-I
Осень-зима 2023-2024 гг. Очно, И.А. Самыловский и И.О. Ершова + А.Ю. Комаровский на зачете!
Говорим о том, что такое математическое моделирование, проводим классификацию моделей и упоминаем такую важную вещь как "универсальность моделей" на примере механики и биологии
Говорим о примерах из механики, хим.кинетики и динамики популяций: двойной интегратор и его модификации, модель Лотки-Вольтерра и ее модификации, пытаемся делать обобщения.
Приводим примеры автокаталитических реакций: Белоусова-Жаботинского, брюсселатор, орегонатор... И создаем на QT/C++ триаду Самарского для брюсселятора - без смс и регистрации!
Делимся на команды и пытаемся модернизировать имеющийся набросок ПО моделирования, а именно: дать возможность для ЛЮБОЙ модели на основе ОДУ запустить ЛЮБОЙ из реализованных методов решения систем ОДУ, а в качестве теста использовать метод Эйлера на брюсселяторе.
По следам первой лабораторной работы рассматриваем варианты численных методов решения систем ОДУ для реализации - 8 явных и 3 неявных!
Продолжаем модификацию программ - на этот раз строим фазовые портреты (на примере брюсселятора и двойного интегратора, мы пока для простоты работаем в фазовой плоскости)
Готовимся к Хэллоуину и строим фазовый портрет в математической модели зомби-апокалипсиса! Используются нелинейные системы размерности 2 и 3 как минимум, параметры модели из приложенной статьи, методы построения фазового портрета на плоскости и учет "физических" ограничений (у нас фактически модель динамики популяций, поэтому переменные не должны принимать отрицательные значения). Срок - 12:00 Мск 27.10.2023
Продолжаем работать с фазовым портретом и пытаемся закрыть оставшиеся вопросы по запуску любого из реализованных методов для любой реализованной модели. Результаты складываем в папку по ссылке
Добиваем наследование моделей и методов, пытаемся объединить модель химической кинетики и модель движения материальной точки для... да, правильно, для получения модели движения материальной точки, оснащенной химическим двиагателем.
Проводим качественный анализ математической модели - и выписываем правильные формулы для движения нашего гипотетического объекта с двигателем в гравитационном поле двух тел!
Продолжаем ликбез по Qt на примере создания элементов GUI + проясняем вопросы по интегрированию систем "брюсселятор", "орегонатор" и т.д.
Проводим мастер-класс по добавлению в приложение на Qt самописных виджетов с параметрами моделей и изменению "вида" с виджетами в зависимости от выбранного элемента QComboBox. На самом деле еще обнаруживаем, что в Qt можно создать диаграмму Model, а значит, он еще лучше подходит для матмода, чем мы думали.
Говорим о различных способах проверки "адекватности" наших матмоделей. Наш основной объект испытаний - модель космического аппарата, которую нам нужно насыщать реальными данными. Сегодня говорим о задаче двух тел, доходим до кеплеровых элементов, рассказываем о наборах элементов двустрочных и пытаемся разобраться, как с их помощью проверять адекватность различных моделей возмущающих факторов космического полёта.
Работаем с потоками в Qt и говорим о том, как построить фазовый портрет, не "подвешивая" программу. Предлагается использовать для двух вариантов построения фазового портрета: 1) В потоке рассчитываем очередную траекторию портрета и передаем для отрисовки; 2) В потоке для каждой траектории по мере расчета точек передаем очередную точку для пополнения фазового портрета.
Отвечаем на накопившиеся вопросы, разбираем лабораторные работы и то, как из них в итоге собрать наш вычислительный эксперимент