Имитационное моделирование.

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

Такой метод исследования систем называется имитационным моделированием. Имитационное моделирование применяют в тех случаях, когда нужно учесть возможно большее разнообразие исходных данных, изучить протекание процессов в различных условиях.

Рассмотрим пример имитационного моделирование на примере вычисления числа . (метод Монте - Карло) = 3,1415922653... .

Теоретическая основа метода была известна давно. Однако до появления ЭВМ этот метод не мог найти сколько-нибудь широкого применения, ибо моделировать случайные величины вручную - очень трудоемкая работа.

1) Постановка задачи вычисления числа  методом Монте-Карло

       
   
 
 

 

 


 

Геометрически очевидно, что , отсюда , т. е. , т. к. Sкруга=получаем 

Формула (1) дает оценку числа . Чем больше N, тем больше точность этой оценки. Следует заметить, что данный метод вычисления площади будет справедлив только тогда , когда случайные точки будут не "просто случайными", а еще и "равномерно разбросанными" по всему квадрату.

 

4. Программа PROGRAM MONTE_KARLO; VAR I,N,N1:LONGINT; X,Y,PI:REAL; BEGIN RANDOMIZE; WRITE('Введите количество точек N='); READLN(N); FOR I:=1 TO N DO BEGIN X:=2*RANDOM; Y:=2*RANDOM; IF SQR(X-1)+SQR(Y-1)<=1 THEN N1:=N1+1; END; PI:=4*N1/N; WRITELN('PI=',PI:15:11); END. 5. Вычислительный эксперимент и анализ результатов Выполнить практическую работу на ЭВМ, оформить результаты в виде таблицы и сделать соответствующие выводы.
N p
50  
50  
50  
600  
600  
600  
2500  
2500  
2500  
5000  
5000  
5000  
10000  
10000  
10000  
1000000  

 

Суть компьютерного эксперимента заключается в обращении к функции RANDOM для получения координат точки x и у N раз. При этом определяется попадет ли точка с координатами (х, у) в круг единичного радиуса. В случае попадания увеличивается на 1 значение величины Nкруга

3. Алгоритм

 

 

 

Домашнее задание:

1) Привести примеры вероятностных моделей.

2) Повторить основные понятия и определения

 

Тема 5 “Моделирование физических процессов”.

Задача №1

Тело движется прямолинейно с ускорением а м/с2 и начальной скоростью v м/с. Требуется определить, какой путь пройдет тело за T секунд

1. Описание постановки задачи. Построение математической модели.

Вы знаете ответ к этой задаче: S = v×T + aT2 /2 (1)

Исходными являются начальная скорость v, ускорение a, время движения Tглавные факторы, результатом - перемещение S. Наша цель — получить математическое соотношение, связывающее исходные данные и результат. Оно будет зависеть от того, на сколько частей мы разобьем интервал времени.

Разобьем интервал времени от 0 до T секунд на N равных частей. Величина каждой части составляет r = T/N секунд. По нашему предположению скорость тела в течение каждого из этих промежутков времени считается постоянной. В течение первых r секунд тело движется с начальной скоростью v1 = v м/с. На следующем отрезке (от r секунд до секунд) — со скоростью v2 = v1 + a×r м/с. В течение третьего промежутка времени скорость будет равна v3 = v2 + a×r м/с- Как видите, последовательность v1, v2, v3 … является арифметической прогрессией с первым чле­ном v и разностью d = a×r. Найдем путь, пройденный телом:

Воспользуемся формулой для суммы N членов арифметической прогрессии:

S=((2v+d (N- 1)) N/2) r=((2v+ar (N - 1)) N/2) r. Раскрывая скобки и подставляя T/N вместо г, получим:Эта формула и является математическим соотношением, свя­зывающим исходные данные и результат.

 

A B С D
6 Расчет      
8 Количество разбиений интервала Время Движения Начальная скорость Дальность полета
9 5 15 60 =C9*B9+5*B9*B9/2-5*B9*B9/(2*$A$9)
10 =A9 + $B$5 Заполнить вниз Заполнить вниз Заполнить вниз
11 Заполнить вниз      

 

2. Компьютерный эксперимент.

  A B
1 Задача о прямолинейном движении тела
2 Исходные данные
3 Начальная скорость 60
4 Время движения 15
5 Шаг увеличения количество разбиений интервала времени 5
       

Задача №2

Требуется построить математическую модель физического процесса: движения тела, брошенного под углом горизонту.

Цель: Выяснить зависимость расстояния и времени полета тела от угла броска и начальной скорости. Угол броска и начальная скорость являются главными факторами процесса моделирования.