
- •Введение
- •Содержание дисциплины лекции
- •Раздел 1. Основы моделирования
- •Раздел 2. Математическое моделирование
- •Раздел 3. Имитационное моделирование.
- •Раздел 4. Системы массового обслуживания и модели прогнозирования
- •Практические занятия
- •Самостоятельная работа
- •Рекомендуемый библиографический список
- •Саратовский государственный социально-экономический университет кафедра теоретических основ информатики и информационных технологий
- •Рабочая программа
- •Федеральное агентство по образованию
- •Саратовский государственный социально-экономический университет
- •Кафедра теоретических основ информатики
- •И информационных технологий
- •Рабочая программа
- •Учебно-методическая карта дисциплины Форма 1
- •3. Содержание учебной дисциплины
- •Раздел 1. Основы моделирования
- •Раздел 2. Математическое моделирование
- •Раздел 3. Имитационное моделирование.
- •Раздел 4. Системы массового обслуживания и модели прогнозирования
- •Практические занятия
- •Самостоятельная работа
- •1. Компьютерное моделирование как метод научного познания
- •Раздел 1. Основы моделирования
- •Этапы компьютерного моделирования
- •Модели. Разновидности моделирования.
- •Раздел 2. Математическое моделирование
- •Компьютерное математическое моделирование
- •Различные классификации математических моделей
- •1.Программирование математической модели.
- •2.Испытание модели
- •3.Исследование свойств имитационной модели.
- •4.Эксплуатация имитационной модели
- •5.Анализ результатов моделирования
- •1. Детерминированные модели
- •2. Моделирование свободного падения тела
- •3. Модель движения тела, брошенного под углом к горизонту
- •4. Уравнения матфизики
- •5. Классификация уравнений матфизики
- •6. Моделирование процесса теплопроводности
- •Экологические модели
- •Компьютерное моделирование в экологии
- •Модели внутривидовой конкуренции
- •Динамика численности популяций хищника и жертвы
- •Раздел 3. Имитационное моделирование
- •Имитационное моделирование
- •Игра "Жизнь"
- •Динамические модели популяций
- •1. Понятие случайных событий
- •2. Вычисление площадей методом Монте-Карло
- •3. Задача Бюффона
- •4. Модели случайных и хаотических блужданий
- •Раздел 4. Системы массового обслуживания и модели прогнозирования
- •Модели потоков
- •Модели потоков
- •6. Классификация потоков.
- •Марковские системы массового обслуживания
- •Сети систем массового обслуживания
- •1. Моделирование в системах массового обслуживания
- •2. Очередь к одному "продавцу"
- •Прочие методологии
- •Практические занятия
- •Тема 1. Этапы и цели компьютерного математического моделирования
- •Некоторые приемы программирования, используемые при моделировании
- •Основные этапы построения математических моделей. Типовые прикладные результаты решения задач математического моделирования Модель движения системы материальных точек
- •Математические системы. Реализация алгоритма для математических систем Методы численного интегрирования и дифференцирования
- •Динамические системы. Реализация алгоритма для механических систем Модель явлений переноса (теплопроводность, диффузия)
- •Тема 6,7. Динамические системы. Реализация алгоритма для экологических систем
- •Тема 8. Модели физических процессов. Модели радиоактивного распада и цепной реакции ядерного взрыва Моделирование систем с одной степенью свободы
- •Модель двумерного движения материальной точки
- •Модели биологических систем. Модель распространения эпидемий Моделирование автоволновых процессов
- •Моделирование распространения волны
- •Тема 10, Тема 11. Модели биологических систем. Динамики развития популяций Моделирование колебаний связанных осцилляторов
- •Метод Монте-Карло
- •Нахождение площадей методом Монте-Карло
- •6.1.Вычисление кратных интегралов методом Монте – Карло
- •Самостоятельная работа
- •Примеры решения задач
- •Решение задачи 8 методом Монте-Карло
- •И их натуральных логарифмов
- •Задания для самостоятельного решения к теме № 3
- •Задания для самостоятельного решения к теме № 4
- •Задания для самостоятельной работы к теме 5
- •Задания для самостоятельного решения к теме 7
- •Задания для самостоятельного решения к теме 8
- •Задания для самостоятельного решения
- •Задания для самостоятельной работы к теме 9
- •Задания для самостоятельного решения к теме 10-11
- •Компьютерное моделирование в экологии. Общие рекомендации
- •Задания к самостоятельной работе
- •Задание для самостоятельного решения к теме смо
- •Вопросы к зачету
Тема 6,7. Динамические системы. Реализация алгоритма для экологических систем
Тема 8. Модели физических процессов. Модели радиоактивного распада и цепной реакции ядерного взрыва Моделирование систем с одной степенью свободы
1. Задача. Имеется физическая система с одной степенью свободы, состоящая из инерционного элемента массой m, упругого элемента жесткостью k и диссипативного элемента с коэффициентом сопротивления r. Определить отклик системы x(t), а также ее первую и вторую производные v(t), a(t), на внешнее воздействие Fx = Fx (t), если известны начальные условия x(0), v(0).
2. Теория. Из второго закона Ньютона следует линейное неоднородное дифференциальное уравнение второго порядка:
Процессы, происходящие в последовательном колебательном контуре, состоящем из последовательно соединенных резистора R, конденсатора C и катушки индуктивности L, на который подано напряжение U(t), описываются уравнением:
где q -- заряд, проходящий по цепи, i = dq/dt -- сила тока. При этом реализуется электромеханическая аналогия "сила - напряжение".
Итак, неоднородное диффуравнение второго порядка описывает широкий класс задач, изучаемых в школьном и вузовском курсе физики: движение связанного с пружиной тела в вязкой среде под действием произвольной силы Fx (t), протекание тока через последовательно соединенные резистор, конденсатор и катушку индуктивности, подключенные к источнику ЭДС e(t) или источнику тока i(t).
Характер движения механической системы зависит от действующей на нее внешней силы. При этом могут быть рассмотрены следующие ситуации:
внешняя сила отсутствует;
внешняя сила постоянна;
внешняя сила изменяется по гармоническому закону;
внешняя сила изменяется по произвольному периодическому закону;
внешняя сила изменяется по произвольному непериодическому закону.
Кроме того, физические явления, возникающие в системе, зависят от ее параметров m, r, k и начальных условий, к которым относятся координата x(0) и скорость vx (0) в начальный момент времени.
3. Алгоритм. Дифференциальное уравнение второго порядка может быть решено методом конечных разностей Эйлера. Он состоит в том, что бесконечно малые приращения функции x(t) и ее первых двух производных vx , ax заменяются конечными разностями, а бесконечно малые приращения dt -- малыми, но конечными приращениями Δ t. Сначала, исходя из параметров системы m, r, k, ее координаты x и скорости vx в момент времени t, расчитывается ее координата и скорость в следующий момент t + Δ t:
ax (t + Δ t) = (Fx (t) - r vx (t) - kx(t))/m,
vx (t + Δ t) = vx (t) + ax (t + Δ t)Δ t.
x(t + Δ t) = x(t) + vx (t + Δ t)Δ t.
Затем это состояние рассматривается как исходное и процедура расчета повторяется для момента времени t + 2Δ t и так далее. Одновременно с вычислениями строятся графики x = x(t), vx = vx (t), ax = ax (t).
Рассмотрим алгоритм численного решения уравнения.
1. Задают параметры физической системы m, k, r, зависимость внешнего воздействия от времени Fx (t), а также начальные условия x(0), vx (0) и шаг по времени Δ t.
2. Начало цикла по t. Дают приращение по времени: переменной t присваивают значение t + Δ t.
3. Определяют ускорение, скорость и координату тела в момент t + Δ t:
ax (t + Δ t) = (Fx (t) - r vx (t) - kx(t))/m,
vx (t + Δ t) = vx (t) + ax (t + Δ t)Δ t,
x(t + Δ t) = x(t) + vx (t + Δ t)Δ t.
4. Результаты вычислений x(t + Δ t), vx (t + Δ t), ax (t + Δ t) выводят на экран в числовом виде либо строят соответствующие точки на координатной плоскости.
5. Возвращение к операции 2. Если цикл по t закончился, -- выход из цикла.
4. Компьютерная программа. При запуске программа рисует графики зависимостей координаты x = x(t), проекции скорости vx = vx (t) и проекции ускорения ax = ax (t).
Некоторые строчки программы заключены в скобки "(*" и "*)". Убрав скобки и активизировав соответствующие операторы, можно промоделировать различные явления.
program PROGRAMMA2;
uses dos, crt, graph;
Const Fm=10;w=5;m=2;r=0;k=0;
Mx=20; Mv=40; Ma=8; Mf=2; Mt=100;
dt=0.00006;
Var x,v,a,F,t : Real;
j,xx,vv,aa,FF,tt,Gd,Gm : Integer;
BEGIN
Gd:= Detect;
InitGraph(Gd, Gm, 'c:\bp\bgi');
if GraphResult<>grOk then Halt(1);
t:=0; v:=0; x:=-3;
line(30,300,650,300);
line(31,500,31,10);
OutTextXY(50,20,'X, V, A');
Repeat
begin {Задание функции F=F(t)}
t:=t+dt; (* F:=Fm*sin(w*t); *)
(*If sin(w*t)<0 then F:=0;
If sin(w*t)>0 then F:=Fm;*)
F:=0; If t<1 then F:= Fm;
If t>3 then F:=-Fm;
a:=(F-r*v-k*x)/m; x:=x+v*dt; v:=v+a*dt; tt:=round(t*Mt);
xx:=round(x*Mx); vv:=round(v*Mv); aa:=round(a*Ma); FF:=round(F*Mf);
circle(30+tt,300-xx,1); circle(30+tt,300-vv,1); circle(30+tt,300-aa,2);
end;
until KeyPressed;
CloseGraph;
END.