skip to Main Content

Математическое моделирование для школьников

В. Н. Дубровский, В. В. Усатюк, К. К. Авилов,
В. А. Булычев, Н. А. Лебедева,Т. А. Чернецкая.

Электронное приложение к книге

Здесь собраны электронные материалы к учебному пособию:

Веб-модели Математического конструктора (запускаются непосредственно в браузере)

Таблицы Microsoft Excel

Программы на языке программирования Python

Для запуска программ на языке Python рекомендуется использовать последние версии Python 3 (гарантируется работоспособность программ в среде Python 3.4 и выше), которые можно скачать с официального сайта разработчиков. Программы, использующие только консольный интерфейс, также совместимы с онлайновыми интерпретаторами Python: например, Online Python или OnlineGDB.

Программы на языке программирования С++

Для запуска программ на языке С++ рекомендуется использовать последнюю версию среды Code::Blocks. Программы с консольным интерфейсом реализованы в виде единственного CPP-файла, который можно сразу скомпилировать и запустить на исполнение, или добавить в проект в любой среде программирования для языка C++.

Документы в формате PDF

Математическое моделирование и математические модели

Бросок камня (регрессия)

Пример настройки модели на данные: бросок камня. Подбор начальных параметров броска по набору положений камня во время движения методом наименьших квадратов

1. Штурманский план

Определение курса судна, приводящего в заданный пункт при заданной скорости течения

2. Как доехать быстрее?

Определение оптимального маршрута между двумя пунктами

Иллюстрация использования инструментов измерения и вычисления. Пример скрипта

Парадокс Браеса

Использование графиков для исследования зависимости среднего времени проезда при разных вариантах организации трафика

3. Баскетбол

Бросок мяча в корзину

Модель полета баскетбольного мяча, построенная по уравнениям движения; начальные данные задаются численно. На второй вкладке по заданному углу броска автоматически подбирается такая величина начальной скорости, при которой мяч попадает в корзину

4. Висячие мосты

Построение троса

В модели иллюстрируются два способа построения дискретной модели троса висячего моста: с помощью сложения векторов и с помощью прямоугольной решетки

Построение параболы по вершине и точке

Задание с ответом на построение «пробной» параболы с заданной вершиной, проходящей через данную точку

Построение параболы по трём точкам

Построение параболы, проходящей через три данные точки, с помощью интерполяционной формулы Лагранжа. Фото висячего моста для проверки теории

5. Ослик и морковка

Гибкий трос висячего моста

Рисование модели троса висячего моста по дифференциальному уравнению «методом ослика и морковки»

Ослик рисует траекторию мяча

Рисование траектории брошенного тела по начальной точке и вектору начальной скорости «методом ослика и морковки». (Численное решение задачи Коши с помощью ломаной Эйлера.)

Цепная линия

Рисование цепной линии «методом ослика и морковки»

6. По закону отражения

Спутниковая тарелка

Рисование поля направлений из условия фокусировки падающих вертикально лучей в точку-фокус и касающейся этих направлений кривой

Антенна-тарелка и геометрическое определение параболы

«Открываем» геометрическое определение параболы с помощью «ослика и морковки»

Эллиптический отражатель

Рисование эллипса на основе оптического свойства. Окружность-директриса

7. Точка обзора и линии уровня

Графическое исследование и геометрическое решение задачи о точке обзора

В модели показан график угла обзора и проиллюстрирована идея геометрического решения

Карты линий уровня

Рисование карты линий уровня функции «угол обзора». Шаблон для рисования линий уровня произвольной функции

8. От иглы до «лапши» Бюффона

Игла Бюффона

Нахождение приближенного значения числа Пи с помощью вероятностного опыта Бюффона. Случаи короткой и длинной иглы, ломаной, многоугольника

Лапша Бюффона

Опыт Бюффона для искривлённой иглы. Теорема Барбье. Кривые постоянной ширины

9. Оптимизационные задачи

Линейное программирование

Задача о рационе

Составляется рацион минимальной стоимости на основе двух продуктов, содержащих три необходимых витамина, так, чтобы обеспечить потребность в этих витаминах.

Решение задачи о рационе на Excel

Решение задачи о рационе на Python

«Большая» задача о диете

Решение задачи о диете на Excel

Целевые функции как часть модели и равновесие по Нэшу

Оптимальное поведение водителей. Парадокс Браеса

Задача о путешествии зоопарка

Первый вариант задачи — задача о комфортном маршруте: выбор порядка посещения 12 городов, оптимизирующего сумму среднемесячных температур в городах. В программных решениях перебираются все возможные перестановки для 12 городов (так называемый метод brute force — полный перебор вариантов).

Программа на С++

Программа на С++, использующая библиотечную функцию

Для перечисления перестановок написаны две программы, реализующие алгоритм Нарайяны.

Решение задачи о комфортном маршруте на Excel

Решение в Excel трёх вариантов задачи: задачи о комфортном маршруте, задачи коммивояжёра и их комбинации.

Три варианта задачи о путешествии зоопарка

10. Задача о бросании камешка: аналитическое решение

Бросок камешка в цель

Модель броска с начальными условиями, задаваемыми геометрически — выбором вектора скорости. Автоматическое прицеливание

Зона безопасности

Два вывода и два построения «параболы безопасности»: с помощью уравнения движения и с помощью геометрического определения параболы

11. Задача о бросании камешка: численное решение

Расчёт и построение траектории полёта камешка в невязкой среде (в вакууме).

Моделирование на Excel

Моделирование на Python

Для вычисления траектории (интегрирования уравнений движения) используется метод Эйлера 1-го порядка.

Поиск наилучшего угла броска при заданной начальной скорости камня разными методами.

Моделирование на Excel

Моделирование на Python с помощью тернарного поиска

Моделирование на Python методами пакета SciPy

Моделирование на Python методами пакета SciPy (новые версии)

Расчёт и построение траектории полёта камешка в вязкой среде (в воздухе).

Моделирование на Excel

Моделирование на Python

Пример обратной задачи математического моделирования: расчет коэффициентов вязкости воздуха по результатам экспериментов.

Настройка Excel-модели по экспериментальным данным

12. Модели эпидемий

SIR-модель эпидемии с настройкой на данные (Excel)

Применение простейшей модели распространения эпидемий к COVID-19 в Москве

SIRS-модели эпидемии (Excel)

Моделирование распространения эпидемии при возможности утраты иммунитета. Рассматриваются различные подмодели наступления событий выздоровления и потери иммунитета

Агентная модель эпидемии (код на Python)

Кроме самого кода, в папке находится инструкция по работе и используемый текстовый файл, задающий карту области распространения эпидемии

Данные из разных источников по пандемии COVID-19 (папка с документами, архивами)

13. Метод Монте-Карло

Шесть задач на вычисления методом Монте-Карло программными средствами. Приводятся программы на разных языках (Python, C++), а также реализующие разные алгоритмы вычисления. Подробные описания и инструкции по работе с программами находятся в папках с материалами к каждой.

Разные методы численного интегрирования (Python)

Вычисление интегралов методами левых и средних прямоугольников и методом Монте-Карло в двух версиях и сравнение точности результатов

Множество Мандельброта

Папка с программами на Python для рисования множеств Мандельброта и Жюлиа

Площадь случайного треугольника

Папка с программами на Python и С++ для нахождения методом Монте-Карло среднего значения площади треугольника с вершинами в единичном квадрате. В программе на C++ вершины треугольников равномерно распределены в квадрате, в программе на Python – случайно выбираются на регулярной сетке.

Площадь круга

Программы на Python, вычисляющие площадь единичного круга (т.е. числа π) методом Монте-Карло и подсчетом точек регулярной сетки и сравнивающие точность результатов. Подробнее см. Описание в этой папке.

Объем 10-мерного шара

Программы на Python, вычисляющие объем 10-мерного шара методом Монте-Карло и подсчетом точек регулярной сетки и сравнивающие точность результатов.

Подробнее см. Описание в этой папке.

Нахождение площади произвольной фигуры

Программа, демонстрирующая вычисление площади произвольной данной фигуры двумя методами

14. Избранные задачи конкурсов по мат. моделированию

Условия большинства приведённых в главе 14 задач включают численные данные для обработки. Ниже приводятся ссылки на папки с этими данные в форматах электронных таблиц Excel, а также в универсальном текстовом формате представления данных csv.

Новая линия метро

Калибровка акселерометров

Банковские риски

Классификация ящериц

Космическая одиссея 2201

15. Задача о влиянии «джетлага» и разбор её решения

В данной главе приводится разбор решения одной из задач IMMC.

С самим разбираемым решением можно познакомиться здесь:

Пример решения задачи «Джетлаг»

Перейти к содержимому