ПЕРЕЛІК ДИСЦИПЛІН:
 
Бесплатные рефераты
 

 

 

 

 

 

     
 
Клітинні автомати та комп'ютерна екологія
     

 

Наука і техніка

Клітинні автомати та комп'ютерна екологія

А. Колесников

Третій Ангол, і впала з неба велика зірка, палаючи, як смолоскип, і впала на третину річок та на водні джерела. Назва Цього зірку полин, і стала третина води, як полин, і багато людей померли від вод, тому що вони стали гіркі.

Об'явлення Святого Іоанна Богослова, гл. 8, ст. 10,11

Хтось точно помітив, що розмова про погоду стає цікавим лише за перших ознак кінця світу. Сьогодні вчені та політики обговорюють проблеми погоди на глобальних форумах, та й прості люди починають потихеньку цікавитися погодою, причому не тільки на найближчі вихідні, а й взагалі ... Атмосфера - величезна, складна, розподілена, динамічна система. Передбачати її поведінка надзвичайно важко, часто просто неможливо. Дивлячись на що висять в небесній блакиті хитромудрі хмарні структури, ми не завжди замислюємося про те, наскільки масштабні і драматичні процеси відбуваються там, у височині. Зовсім інше враження залишає прискорена зйомка хмарного неба. Картинка еволюції роящіхся хмарних мас мимоволі наводить на роздуми про природу часу і сенс земного існування. Схожі, але більш тривожні думки навівають кадри, що зображують розповзання смогу над великими мегаполісами або, гірше того, поступової дифузії ядерного гриба ... Всі ми пам'ятаємо старі чорно-білі навчальні фільми, оповідають про формування зон зараження після атомного вибуху. Вони класифікуються за ступенем небезпеки. Поблизу епіцентру розташовується "мертва" зона суцільного інтенсивного зараження. Далі, в залежності від напрямку вітру, зони розподіляються у вигляді вкладених один в одного еліпсоїдів розсіювання. У принципі, схожою буде картина розповсюдження і будь-якого іншого забруднювача від точкового джерела, наприклад, від димить, труби, вибухнув реактора або апокаліптичною зірки з біблійного пророцтва. Процес поширення забруднювача в атмосфері - це процес розсіювання і змішування його часток з частинками повітря. На хід цього процесу істотне вплив мають власні руху повітряних мас, тобто вітру. В одній і тій же місцевості вони дмуть в різних напрямках з певною частотою. Дані про частоти вітрів наносяться на особливу діаграму, що має романтичне назву, оспіване у безлічі бардівських пісень, - троянда вітрів. Частинки забруднювача потрапляють від первісного джерела в сусідні області. Потім з областей, що безпосередньо прилягають до джерела, поширюються вже в їх околицях, і так далі. Сам характер цього процесу вказує на те, що для моделювання розсіювання забруднювача в атмосфері можна використовувати підхід, заснований на ідеології клітинних автоматів. У цьому випадку досліджуваний ділянку представляється у вигляді клітинного поля. На полі позначаються клітини, в яких знаходяться епіцентри поширення забруднення або зараження. Потім концентрацію забруднювача в кожній клітині поля можна, наприклад, наближено оцінювати за формулою:

(1)

де ak - це масив з дев'яти елементів, що містить імовірності вітрів відповідних восьми напрямків і ймовірність штилю. Само собою зрозуміло, що дев'ять ймовірностей вітрів різних напрямків, включаючи вірогідність штилю, повинні в сумі давати одиницю. C * k - Це вектор з дев'яти елементів, що містить концентрації забруднювача в сусідніх з даною восьми клітинах і в ній самій. Крок за кроком для всіх клітин поля обчислюється сума добутків концентрацій у сусідніх восьми осередках на відповідні ймовірності вітрів. До суми додається ще й твір ймовірності штилю на концентрацію забруднювача в самій поточній клітинці. Для нормальної роботи програми необхідно мати дві копії клітинного поля. В одній з копій слід зберігати попереднє покоління, а в іншій - подальше. При зміні поколінь вміст наступного покоління стає попереднім. З розрахунків виключаються крайні ряди комірок. Це робиться для того, щоб уникнути "прикордонних" проблем при застосуванні формули (1). Повторюючи розрахунки багато разів, ми можемо спостерігати динаміку формування еліпсоїдів розсіювання в часі. При разовому "впорскуванні" забруднювача в яку-небудь клітинку він швидко розсмоктується по клітинному масиву. Для отримання більш виразною картини розсіювання в пропонованому на врізки фрагменті програмного коду "впорскування" забруднювача у відповідні поля здійснюється в початку розрахунку кожного чергового покоління. Значення концентрацій викидів вводяться в комірки в якихось довільних одиницях.

Для сприйняття результатів моделювання важлива розмальовка клітин. У наведеному програмному фрагменті використаний алгоритм, переводить значення концентрацій забруднювача в різні градації яскравості кольорів - від темно-червоного до темно-зеленого. При цьому високі значення концентрацій зображуються відтінками червоного, який, у міру зниження Z, переходить у жовтий, а потім поступово згасає до темно-зеленого кольору.

Звичайно, для по-справжньому точних моделей процесів розсіювання атмосферних забруднювачів слід звертатися до набагато прецизійним методиками, ніж та, про яку йшла мова. Але все ж таки в даному випадку вам немає необхідності вирішувати головоломних систему запаморочливих диференціальних рівнянь в приватних похідних на суперкомп'ютері астрономічної вартості. За допомогою цієї нескладної програмки ви можете виконати якесь невелике цікаве мініісследованіе з комп'ютерного моделювання екологічної ситуації у вашому районі, місті або області в межах часових рамок однієї лабораторної роботи.

DefByte I-K

DefInt L-N

Dim G As Byte

Dim a (1 To 9) As Single

Dim b (1 To 200, 1 To 200) As Single

Dim c (1 To 200, 1 To 200) As Single

Dim Color As Long

Dim Zmin As Single

Dim Zmax As Single

Dim R As Single

Dim R4 As Single

Dim Z14 As Single

Dim Z24 As Single

Dim Z34 As Single

Private Sub Form_Click ()

a (1) = 0.05

a (2) = 0.05

a (3) = 0.1

a (4) = 0.1

a (5) = 0.1

a (6) = 0.1

a (7) = 0.1

a (8) = 0.15

a (9) = 0.25

z = 7

Zmin = 0

Zmax = 2

R = Zmax - Zmin

R4 = R/4

Z14 = Zmin + R4

Z24 = Z14 + R4

Z34 = Z24 + R4

n = 50

G = 50

For f = 1 To G

b (35, 35) = z

b (45, 15) = z/2

For i = 2 To n - 1

For j = 2 To n - 1

c (i, j) = 0

k = 0

For l = -1 To 1

For m = -1 To 1

k = k + 1

c (i, j) = c (i, j) + a (k) * b (i + l, j + m)

Next m

Next l

Next j

Next i

For i = 1 To n

For j = 1 To n

Color = SetColor (c (i, j))

Line (6 * (i - 1), 6 * (j - 1)) - (6 * i - 1, 6 * j - 1), Color, BF

b (i, j) = c (i, j)

Next j

Next i

Next f

End Sub

Public Function SetColor (z As Single) As Long

Dim t As Byte

Select Case z

Case Is

SetColor = RGB (0, 63, 0)

Case Zmin To Z14

t = 63 + 192 * (z - Zmin)/R4

SetColor = RGB (0, t, 0)

Case Z14 To Z24

t = 255 * (z - Z14)/R4

SetColor = RGB (t, 255, 0)

Case Z24 To Z34

t = 255 * (1 - (z - Z24)/R4)

SetColor = RGB (255, t, 0)

Case Z34 To Zmax

t = 63 + 192 * (1 - (z - Z34)/R4)

SetColor = RGB (t, 0, 0)

Case Is> Zmax

SetColor = RGB (63, 0, 0)

End Select

End Function

Список літератури

Для підготовки даної роботи були використані матеріали з сайту http://www.xaoc.ru/

     
 
     
Українські реферати
 
Рефераты
 
Учбовий матеріал
Українські реферати refs.co.ua - це проект, на якому розташовано багато рефератів, контрольних робіт, курсових та дипломних проектів, які доступні для завантаження. Наші реферати - це учбовий матеріал для школярів і студентів. На ньому містяться матеріали, які дозволять Вам дізнатись більше про навколишнє середовище та конкретні науки які викладають у навчальних закладах усіх рівнів.
8.5 of 10 on the basis of 1486 Review.
 

 

 

 

 

 

 

 
 
 
  Українські реферати | Учбовий матеріал | Все права защищены. DMCA.com Protection Status