Модельное время и таймер модельного времени



В моделирующей программе для фиксации моментов вре­мени, в которые происходят события, используется специаль­ная переменная, называемая таймером времени. При этом моделирование изменения времени, в котором функционирует моделируемая система, состоит в изменении значения пере­менной «таймер времени». Все действия при данном значении таймера моделируют события, происходящие именно в тот момент времени, который задается значением таймера. Бла­годаря такому подходу моделирующая программа, требуя для себя, множество процессорных операций, выполнение ко­торых занимает какое-то астрономическое время, позволяет последовательно на одном процессоре моделировать множе­ство всех событий, свершающихся мгновенно в один и тот же момент времени. Понятно, что при этом значение таймера не может задавать реальное астрономическое время. Оно задает модельное время, т.е. таймер является таймером модельного времени. Все события в модели системы планируются и про­исходят в модельном времени.

Для управления модельным временем может использоваться одна из двух стратегий:

- стратегия переменного приращения значений таймера:

- стратегия приращения значений таймера с постоянным шагом.

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

В моделях используются только целочисленные значения мо­дельного времени. Однако это не мешает разработчику модели точно задавать системные величины, измеряемые до­лями единиц времени. Для этого достаточно правильно вы­брать масштаб модельного времени (ММВ), показывающий, сколько единиц реального времени и каких приходится на единицу модельного времени. После этого все системные вре­мена следует выразить в единицах модельного времени, учи­тывая выбранный масштаб. Можно принять, что единице модельного времени соответствует, например, 1с или Зс, или 1,3 мин, или 1 ч, или 15 мкс, или любая другая величина ре­ального времени. Обычно выбранный ММВ никак не отражается программой моделирования. О нем знает только разработчик модели. Например, необходимо задать в модели времена, рав­ные 3с, 1,1 мин, 5,2с и 15 мин. В качестве ММВ следует взять такой, чтобы все перечисленные времена с учетом масштаба можно было выразить в целых числах. Выберем, например, ММВ = 0,1 с. Тогда перечисленные времена будут задаваться соответственно как 30, 660, 52 и 9000. Если же ММВ = 0,2 с, тогда этот ряд будет следующим: 15, 330, 26, 4500. В данном случае выбрать значение ММВ>0,2с не уда­ется, т.к. числа 15 и 26 взаимно простые. В рассматривае­мом примере можно назначить множество других масштабов (например, ММВ = 10 мс), но следует выбирать по возмож­ности большее значение ММВ. При выборе очень маленько­го значения ММВ может не хватить разрядной сетки, выде­ленной для представления значений таймера.

 

 


6. Алгоритмы умножения и деления
чисел с фиксированным положением
позиционной точки


Дата добавления: 2016-01-04; просмотров: 16; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!