Задача за числово решение с компютърна симулация. Решението на проблема за перколацията включва намирането на критична вероятност, р



Дата25.06.2017
Размер91.45 Kb.
#24400
ТипЗадача



ЛЕКЦИЯ 12. Перколация. Въведение към перколациите

Изучаването на перколационни системи започва през 1957г. когато Броудбенд и Хамърсли изучават мокренето на вътрешноста на скали. Те се заинтересували каква е вероятноста да се намокри дадена точка във вътрешността на камъка когато е потопен във вода. В двумерния случай този проблем прилича на прост лабиринт. Порите на камъка образуват лабиринт, който водата трябва да премине за да достигне дадена точка.

Общият проблем при перколацията е да се определи вероятноста за образуване на свързана пътека между две области чрез случайни стъпки в една решетка разделяща двете области. Тази вероятност се разглежда като функция на броя на случайно разпределените стъпки в решетката. Ако двете области, които искаме да свържем са двата края на голяма решетка, тогава вероятноста за свързана пътека между двата края е приблизително същата както вероятноста да имаме безкрайно дълга свързваща пътека в безкрайно голяма решетка. Този факт прави проблема за перколацията удобен за изследване на много проблеми. Например каква е плътноста на хора, при която дадено инфекциозно заболяване ще се разпространи без затихване или каква е плътноста на дърветата в една гора, при която горския пожар ще погълне всички дървета без да угасне по естествен начин. Въпреки че някои прости случаи са решени аналитично проблема за перколацията се счита задача за числово решение с компютърна симулация.

Решението на проблема за перколацията включва намирането на критична вероятност, рс(нарича се още праг на перколация). Тази стойност е свързана с концентрацията на проходими елементи в решетката, при която ще има 50% вероятност за възникване на перколирана система т.е. свързана от единия край до другия. Намирането на критичната вероятност става като се тестват множество системи с различна концентрация докато се намери тази перколационна вероятност. Обикновено говорим за критична вероятност, а не за критична концентрация поради случайния характер по който се формират проходимите елементи в решетката.





фиг.1 Прост пример за перколираща поредица. Черните квадрати представляват елементи на поредицата, които са проходими. Има свързваща пътечка (синята линия), която свързва област I и област II от двете страни на решетката.


Нека разгледаме следния пример. Елементите на празна решетка се запълват със случайни числа между 0 и 1. След това се избира прагова вероятност р между 0 и 1. Всички елементи, чиято стойност е по-малка или равна на р се считат за проходими, а останалите са непроходими. Вижда се че р е както мярка за концентрацията на проходимите елементи така и вероятност че даден елемент е проходим.


Ф
иг.2 Пример за процес на случайно запълване на елементите на решетката (а) със случайни числа между 0 и 1 (b). Избира се гранична вероятност (в случая р=0.6). Всички елементи със стойност 0.6 или по-малко се приемат за проходими (с)

Искаме да проверим кога възниква перколация като провеждаме множество опити с различна стойност на р. Ако нанесем резултатите на графика ще можем да видим това р за което вероятноста за перколация е 50%. Това р ни дава стойноста на критичната вероятност рс. Нека си представим, че стартираме нашата симулация за 100 опита при фиксирано р, като р е равно на (0.01)*n, където n е цяло число вариращо от 1 до 100. Тогава нашата графика може да изглежда като тази на фиг.3.



Фиг.3 На ординатната ос е нанесен броя на успешните перколации за всяка стойност на граничната вероятност. На тази примерна графика критичната вероятност е около 0.22
Критичната вероятност рс може да бъде функция на размерноста на решетката, на вида на решетката(проста кубична, медена пита, триъгълна и т.н.), на вида на елемента за стъпване (площ, точка, център и т.н.) както и на областа между две стъпки (най-близки съседи или и по-далечни).

Нека си представим поредица от квадрати толкова голяма,че всякакви ефекти от границите са пренебрежими. Ще наричаме такава поредица квадратна решетка фиг.4а. Известна част от квадратите са запълнени с точки в центъра докато други са оставени празни фиг.4(б).

Сега дефинираме кластър като група от съседни квадрати, които имат една обща страна. Ако два квадрата имат само общ връх те не принадлежат на един кластър(вж.фиг.4в). Ще наричаме съседните квадрати с обща стена най-близки съседи, а тези с общ връх втори близки съседи. И така кластъра е съставен от непрекъсната верига от заети най-близки съседи. Теорията на перколациите се занимава с броя и свойствата на кластерите.





















(а) (б) (в)

фиг.4 Кластъри
Може да се зададе въпроса как са разположени кръгчетата в заетите квадратчета. Дали при тяхното подреждане те се привличат или се отблъскват или се пренебрегват един друг? Най-простото допускане е последното т.е населеноста на квадратчетата е случайна. Така всяко квадратче е заето или празно независимо от състоянието на неговите съседи. Нека да означаваме с р вероятността едно квадратче да бъде населено. Така ако имаме N квадратчета и N е е много голямо число, тогава броя на населените квадратчета е p.N , а останалите (1-р)N от квадратчетата са празни. Ще се концентрираме на този вид случайни перколации.

Очевидно с увеличаване на р размерът на кластерите расте. Възниква въпроса при каква стойност на р кластерът ще пробие през системата т.е ще премине от единия край на решетката до другия, така както водата преминава през филтъра на кафе машината. Най-интересните явления на перколация се наблюдават при така наречената критична перколация рс, при която за пръв път възниква пробиващ кластър (перколация означава пробиване, просмукване). Тези явления се наричат критични явления, а теорията която се опитва да ги описва се нарича теория на скалирането.

Теоретичното изследване на перколациите започва през втората световна война когато Флори и Стокмайер изучават как малки разклоняващи се молекули нарастват чрез образуване на все повече нови химически връзки. Този процес на полимеризация може да доведе до желиране т.е. образуването на мрежа от химически връзки които пронизват цялата система. Така първоначалните малки молекули съответстват на нашите квадратчета, макромолекулите на кластърите а мрежата на пробиващия кластър. Пример за желиране т.е. перколация е сваряването на яйцето. Флори и Стокмайер разработват теория която се нарича теория на перколацията за решетка на Бете.

Ще разгледаме някой примери на перколация, които са частни случаи но лесно могат да се симулират на компютър.

Горски пожари

Примерният модел, който сега ще разгледаме не допринася за по-лесно гасене на пожари, но помага да се разберат някои идеи за праг на перколацията, за остри преходи при сходящо време и др. Очевидно по-правилно е да се симулират пожари на компютър отколкото да се експериментира с реални пожари. За тази цел моделираме гората с квадратна решетка, в която всеки квадрат или е засаден с дърво (ще го наричаме «зелен» или е празен, ще го наричаме «бял»). Вероятността за зелен квадрат е р, а за бял е (1-р). Ако р=1 ще имаме овощна градина , но не естествена гора за която р<1. Този факт допринася за безпорядък в структурата на гората. Нека имаме някакво начално разпределение на зелените и бели квадрати.

Нека сега някои дървета да горят, а съответните квадрати ще наричаме «червени». Най-простият избор за начало на пожара е да запалим всички дървета на първия ред на решетката, а всички останали дървета на останалите редове на една (LxL) решетка да останат зелени. Въпросът е дали този пожар може да проникне до другия край на решетката. За да отговорим трябва да знаем как едно горящо дърво може да запали другите дървета. За да упростим симулацията нека да обходим решетката равномерно, като първо сканираме първата линия отляво на дясно и проверяваме кои съседи са запалени, след това втората линия по същия начин и т.н. до последния ред на решетката. През цялата симулация приемаме че едно зелено дърво се запалва и става червено, ако е съсед на някое червено дърво, което в момента още гори. Така току що запалено дърво запалва своя дясен или долен съсед при сканиране на решетката от ляво надясно както приехме.

След като сканираме цялата решетка започваме отначало. Сега ако сканираме обратно, отдясно наляво и отдолу-нагоре, при следващото сканиране на решетката ще се запалват левите и горни съседи на горящите дървета. Всяко сканиране през решетката (една Монте Карло стъпка за позиция) представлява една единица за време в симулацията. Приемаме че се запалва само най-близкия съсед на едно горящо дърво. Освен това дърво което е изгоряло за една временна единица се счита изгоряло («черно») и не може да запалва други дървета. Считаме горския пожар за приключил ако е достигнал последния ред или ако не са останали горящи дървета. В последния случай зелени дървета заобиколени от изгорели (черни) дървета или бели полета образуват острови на безопасност от запалване. Времето на живот на горския пожар се определя от броя на сканиранията през решетката до достигане на края на пожара. Този брой се усреднява върху много различни разпределения на дърветата при една и съща решетка и една и съща вероятност р.

фиг.5 Време на живот на горски пожари, симулирани на квадратна

решетка.

Средната крива отговаря на описания най-прост случай на запалване на дърветата. Лявата крива съответства на случай когато пожара се предава както на най-близките съседи така и на вторите близки съседи. Най-дясната крива съответства на условието че едно дърво се запалва само ако има два горящи съседа между най-близките или вторите близки съседи.

Фиг.5 показва времето на живот на горски пожар като функция на вероятността р в един квадрат да има дърво. Тези прости компютърни симулации показват че съществува остър преход, в дадения случай при р=0.5928, където времето на живот клони към безкрайност. Разбира се при симулацията на крайни решетки не могат да се очакват безкрайни стойности.

Защо съществува специална критична стойност на р, ще я наричаме също праг на перколацията, при която времето на живот нараства? При р близко до 1-ца всеки ред веднага запалва дърветата в следващия ред и така след едно сканиране на решетката пожара вече е достигнал последния ред. При р близко до нула, повечето горящи дървета изобщо нямат съседи и пожарът свършва след изгаряне на горящите дървета т.е. след няколко стъпки няма какво да гори. Ако увеличаваме р от малки към големи стойности тогава при р=рс се появява непрекъсната пътека от съседни дървета, която за първи път свързва първия с последния ред, т.е. виждаме перколиращ кластер. Най късата пътека, при р малко над рс, която свързва горния с долния ред се нарича минимална или химическа пътека.

Тя обикновенно е много различна от права линия.(фиг.6).



Задача 9.1 Използвайки описания по-горе алгоритъм напишете програма и симулирайте горски пожар.

Задача 9.2: Симулирайте горския пожар за една и съща критична стойност на р=0.5928, но за различни размери на решетката и покажете че времето на живот нараства при увеличаване размера на гората.

Поради упростяващите допускания направени при конструиране на модела, пожарът се разпространява предимно от горе надолу и от ляво надясно и му трябва доста по-дълго време за да се придвижи обратно от дясно наляво или от долу нагоре. Например за четири последователни стъпки напред (горе-долу; ляво-дясно) е необходима само една единица време (едно сканиране през решетката), докато за четири стъпки назад (долу-горе;дясно-ляво) са необходими четири единици време(четири сканирания). В това човек може да се убеди от фиг.6 като проследи алгоритъма на сканиране. Поради отсечката в която пожарът се движи назад за р>рс е необходимо повече време за перколацията т.е. времето на живот нараства. Ако р намалее до стойност малко под рс тогава някои дървета, например като това отбелязано с кръстче на фиг.6 ще липсват и пожарът ще ползва повече време да открие че не може да пробие гората и така времето на живот нараства. Така е видно че времето на живот става много голямо когато р наближава рс отгоре или отдолу.

Някои може да не са доволни че пожарът в нашия модел се разпространява с предимство надясно и надолу. Това се прави за спестяване на компютърно време, но този факт добре моделира примерно присъствието на вятър, който улеснява разпространението на пожара в дадено направление.

Може да се спомене, че прага на перколацията определя положението на фазов преход, при които системата качествено променя поведението си за определена стойност на един плавно променящ се параметър. В разгледания случай с перколация ако р се променя плавно от 0 до 1, при р<рс нямаме нито един перколиращ кластър и поне един перколиращ кластър при р>рс . Така при р=рс и само там се случва нещо особено: За първи път пътека от съседни зелени дървета свързва върха с дъното. Също разходимоста на характеристични времена (в нашия случай времето на живот на пожара) в критичната точка има аналогия с други фазови преходи, където това се нарича критично забавяне «critical slow down”. Например, при температура само малко под критичната температура на преминаване течност-газ, флуидът не е съвсем сигурен дали иска да е газ или течност и това отнема доста време за да се направи избор. Аналогично, времената на релаксация близо до магнитната точка на Кюри стават много големи.




фиг.6 Минимална пътека при p малко над праговата стойност
Каталог: ~tank -> NumericalMethods
NumericalMethods -> Лекция генератори на случайни числа. Поредица от случайни числа със
~tank -> Основи на езика fortran
~tank -> Програма От командната линия, след като сме влезли в директорията където е файла с фортран-код
~tank -> Програма за изчисляване на средна стойност
NumericalMethods -> Лекция Компютърно моделиране във физиката роля
NumericalMethods -> Лекция числово интегриране
NumericalMethods -> Лекция 10. Видове случайни разходки. Просто обхождане. Необратимо


Сподели с приятели:




©obuch.info 2024
отнасят до администрацията

    Начална страница