Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МГУПБ. Лаб. практ.мод. сист. в печать конечная...doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.54 Mб
Скачать

Вопросы для самопроверки

1. Из каких разделов состоит описание базисных компонентов объектно-ориентированной модели?

2. Язык описания моделей Simplex-MDL. Описание базисных компонентов и моделей. Выбор параметров модели (константы, независимые, зависимые, случайные и др. переменные). Динамика поведения.

3. Чем отличается описание динамики в компонентах непрерывных и дискретных моделей?

4. Определить понятие «трофическая цепь» и привести примеры такого типа взаимодействия, наблюдаемые в природе.

5. Опишите модель двувидового взаимодействия типа «хищники и жертвы».

6. Назовите все виды возможного взаимодействия в четыреxвидовой биологической системе, описываемой квадратной матрицей коэффициентов межвидового влияния. Поясните, какой биологический смысл имеют диагональные, недиагональные и нулевые коэффициенты матрицы.

7. Каким образом в обобщенной модели Лотки - Вольтерра можно учесть динамику изменения внешних факторов ?

8. В чем различие описания моделей для различных форм взаимодействия видов?

9. При каких условиях процесс взаимодействия видов будет иметь колебательный характер?

Требования к отчету

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

Литература

1. Ивашкин Ю.А. Мультиагентное имитационное моделирование больших систем : учебное пособие / Ю.А. Ивашкин. – М. : МГУПБ, 2008. – 238 с.

2. Шмидт Б. Искусство моделирования и имитации. Введение в универсальную имитационную систему Simplex3 / Б. Шмидт; перевод с немецкого под редакцией Ю.А. Ивашкина и В.Л. Конюха. – Ghent, Belgium, 2003. – 550 с.

3. Дерканосова Н.М. Математическое моделирование динамики биологических систем : учебное пособие / Н.М. Дерканосова, В.И. Корчагин, Ю.С. Сербулов. ­– Воронеж : Изд-во «Кварта», 2003. – 150 с.

Лабораторная работа № 7 многомерные массивы в моделировании параметрических полей

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

Теоретическое введение

В объектно-ориентированном языке описания моделей Simplex3-MDL возможно описание и использование многомерных массивов до трех измерений. Количество элементов массива отсчитывается от 1 до конечного элемента и объявляется в разделе описания переменных, как:

STATE VARIABLES

DISCRETE (CONTINUOUS)

ARRAY[3] X (INTEGER) := 0, # Объявление одномерного массива

ARRAY[3] [5] Y (INTEGER) := 1 # Объявление двумерного массива

Выбираемый элемент массива задается индексом или списком индексов массива:

DYNAMIC BEHAVIOUR

WHENEVER x[1] >= 0

DO

X[1]^ := 2;

Y[1][2]^ := 2;

END

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

WHENEVER X[1] >= 0

DO

X {1..3}^ := 1; # Присвоение 1 первым трем элементам массива

Y {1..2} {3..5}^ := 3; # Списки индексов в двумерном массиве

END

Как видно из примера, отдельный индекс заключается в квадратные скобки, а набор индексов – в фигурные. При этом индекс массива выражается числовым значением типа INTEGER. Для индексов массива возможно ввести идентификатор, который будет использован для организации цикла внутри структуры массива.

DIFFERENTIAL EQUATIONS

X {i OF 1..2}' := 3 * i;

Y {k OF 3..5} {i OF 4..5}' := Y[k+1] [i] ;

END

Множество индексов может быть задано ключевым словом ALL, обозначающим все возможные значения идентификатора индекса в соответствии с количеством элементов в массиве. Например:

WHENEVER X[1] >= 0

DO

X {ALL}^ := 1; # Всему массиву присваивается значение 1

END

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

DIFFERENTIAL EQUATIONS

X {ALL j}' := j * X [j];

Y {k} {ALL k}' := k * X[k];

END

Список индексов описывает непрерывный интервал целых чисел, который может быть ограничен условием, следующим после вертикального штриха ‘ | ’.

WHENEVER X[1] = 0

DO

X {ALL i | Y[i] [1] > 0}^ := 1;

X {ALL i | i > 2}^ := 1;

END

Простое выражение для расчета индекса должно иметь значение типа INTEGER. Выход за границы массива ведет к появлению ошибки выполнения программы.

В качестве примера использования массивов рассмотрим имитационное моделирование температурного поля, изменяющегося в процессе нагрева в прямоугольном теле, одна из сторон которого значительно больше двух других, описываемого уравнением теплопроводности:

для и , (1)

где u – температура нагреваемого тела, °C;

а – коэффициент температуропроводности, м2/c;

x, y – прямоугольные координаты, м;

t – время, с,

при начальном условии или в частном случае .

Граничные условия, определяющие теплообмен между поверхностью нагреваемого тела и окружающей средой, задаются в виде уравнений теплоотдачи:

; (2)

; (3)

; (4)

; (5)

где uc – температура греющей среды, °C ;

коэффициент теплоотдачи, Вт/(м²·K);

λ – коэффициент теплопроводности, Вт/(м²·K).

Решение уравнения теплопроводности (1) при заданных ограничениях (2)-(5) осуществляется методом конечных разностей, при котором поперечное сечение банки разбивается плоскостями, параллельными координатным, с шагом h, и задача сводится к нахождению температуры uij в пространственных узлах сетки ; в дискретные моменты времени tk с временным шагом ..

В конечных разностях при = h2/(4a) с учётом симметрии нагрева дискретное распределение температуры в узлах сетки одной четверти поперечного сечения тела рассчитывается по формулам:

для k= 0 : ; или ; (6)

для (7)

(8)

(9)

(10)

(11)

(12)

где uki,j – температура в точке нагреваемого тела с координатами i,j в k

момент времени;

hτ = h2/ (4·a) – шаг по времени, с;

h – шаг пространственной сетки, м.

Алгоритм решения сводится к последовательному заполнению массива uki,j для k-го момента времени (рис. 7.1) в узловых точках сетки поперечного сечения прямоугольного тела i = 0,n; j = 0,m. При этом сначала по формулам (7) и (8) определяются значения параметра в узловых точках на внешних границах тела, затем – по осям симметрии (9) и в углах выделенного квадранта (10) и (11) и далее в узлах сетки i = 2,n-1; j = 2, m – 1 внутри тела.

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

Описания массивов (7)-(9) и (12) в Simplex-MDL, соответственно, будут иметь вид:

u [15]{j OF 2..24}^:=(Alfa *h/Lyambda*Uc+u[14][j])/(1+Alfa*h/Lyambda);

u {i OF 2..14}[25]^:=(Alfa *h/Lyambda*Uc+u[i][24])/(1+Alfa*h/Lyambda);

u [1]{j OF 2..25}^:=u[2][j];

u {i OF 2..15}[1]^:=u[i][2];

u {i OF 2..14}{j OF 2..24}^:=1/4*(u[i-1][j]+u[i+1][j]+u[i][j+1]+u[i][j-1]);