Множина Мандельброта: відмінності між версіями

[неперевірена версія][перевірена версія]
Вилучено вміст Додано вміст
InternetArchiveBot (обговорення | внесок)
Виправлено джерел: 7; позначено як недійсні: 0.) #IABot (v2.0.8.6
 
(Не показано 33 проміжні версії 27 користувачів)
Рядок 1:
[[ImageФайл:Mandelbrot set20210411 with coloured environment007.png|thumb|250px|
'''Множина Мандельброта'''.<br />
Колір відповідає швидкості зростання Z<sub>n</sub>]]
[[Файл:Mandelbrot sequence new.gif|thumb|Детальне збільшення множини Мандельброта]]
'''Множина мандельброта''' - обмежена та зв'язна множина на комплексній площині, межа якої утворює [[фрактал]]. Названа на честь [[Бенуа Мандельброт]]а, який вивчав і популяризував її.
'''Множина Мандельброта'''&nbsp;— обмежена та зв'язна множина на комплексній площині, межа якої утворює [[фрактал]]. Множина Мандельброта це [[множина]] [[Комплексне число|комплексних чисел]] <math>c</math>, для яких функція <math>f_c(z)=z^2+c</math> не [[Теорія стійкості|розходиться]], якщо її [[Ітерація|ітерувати]] від значення <math>z=0</math>, тобто, для якої послідовність <math>f_c(0)</math>, <math>f_c(f_c(0))</math>, і так далі, залишається обмеженою в абсолютному значенні. Названа на честь [[Бенуа Мандельброт]]а, який вивчав і популяризував її.
 
Зображення множини Мандельброта можна створити шляхом вибірки комплексних чисел і тестування, для кожної точки вибірки <math>c</math>, чи послідовність <math>f_c(0), f_c(f_c(0)),\dotsc</math> [[Послідовність|прямує до нескінченності]] (на практиці перевіряють, чи залишає вона деякий визначений окіл 0 після визначеної кількості ітерацій). Якщо інтерпретувати [[Дійсне число|дійсну]] і [[Уявне число|уявну частини]] числа <math>c</math> як [[Система координат|координати зображення]] на [[Комплексна площина|площині комплексних чисел]], то колір пікселя можна визначити відповідно до того, як швидко послідовність <math>|f_c(0)|, |f_c(f_c(0))|,\dotsc</math> перетинає довільно вибране [[Порогування (обробка зображень)|порогове значення]], де спеціальний колір (як правило чорний) використовують для значень <math>c</math> в яких послідовність не перетинає порогове значення після визначеної кількості ітерацій (це необхідно аби чітко розрізняти зображення множини Мандельброта від зображення її доповнення). Якщо <math>c</math> залишатиметься сталим, а замість того змінним буде початкове значення <math>z</math>&nbsp;— що позначається як <math>z_0</math>, буде отримано відповідну [[Множина Жуліа|множину Жуліа]] для кожної точки <math>c</math> в просторі параметрів простої функції.
== Поетично ==
 
Точне значення [[Площа|площі]] множини Мандельброта невідоме. На 2012 рік вона оцінювалася як 1,506 591 884 9 ± 2,8×10<sup>−9</sup>. Точна координата [[Центр інерції|центра мас]] (розташованого на осі абсцис) теж невідома і оцінюється як {{nobr|−0,286 768 420 48 ± 3,35×10{{sup|−9}}}}<ref>[http://www.mrob.com/pub/muency/pixelcounting.html Pixel Counting] {{Webarchive|url=https://web.archive.org/web/20170617212602/http://www.mrob.com/pub/muency/pixelcounting.html |date=17 червня 2017 }}{{ref-en}}.</ref>.
Візьмімо точку, назвем її <math>Z</math>, що лежить на комплексній площині.<br />
 
І нехай <math>Z_1</math> буде <math>Z^2+C</math><br />
== Принцип побудови ==
І <math>Z_2</math> буде <math>Z_1^2+C</math> <br />
Візьмімо точку <math>Z</math>, що лежить на комплексній площині. Нехай
І <math>Z_3</math> буде <math>Z_2^2+C</math> і так далі <br />
 
Якщо послідовність з <math>Z</math> завжди залишається <br />
: <math>Z_1</math> = <math>Z^2+C</math>
Близько до <math>Z</math> і ніколи не відхиляється геть <br />
: <math>Z_2</math> = <math>Z_1^2+C</math>
Тоді точка C належить '''множині Мандельброта'''. <br />
: <math>Z_3</math> = <math>Z_2^2+C</math>
'' Пісня про множину Мандельброта <ref>[http://www.jonathancoulton.com/songdetails/Mandelbrot%20Set Jonathan Coulton Mandelbrot Set] (mp3 теж можна скачати безплатно)</ref>''
: і так далі ….
 
Якщо послідовність з <math>Z</math> завжди залишається близько до <math>Z</math> і ніколи не віддаляється, тоді точка C належить '''множині Мандельброта'''.<ref>За ''Піснею про множину Мандельброта'' [http://www.jonathancoulton.com/songdetails/Mandelbrot%20Set Jonathan Coulton Mandelbrot Set] {{Webarchive|url=https://web.archive.org/web/20070410025808/http://www.jonathancoulton.com/songdetails/Mandelbrot%20Set |date=10 квітня 2007 }} (mp3 теж можна звантажити безплатно)</ref>''
 
== Формально ==
 
Сукупність елементів <math>c</math> [[поле (алгебра)|поля]] [[комплекснікомплексне числачисло|комплексних чисел]], для яких послідовність:<math>\{z_n:n \ge 0\}</math>, що визначена [[ітерація|ітераційно]] за правилом
: <math>z_{n+1}=z_n^2+c</math>, де <math>z_0=0 \,</math>
задовольняє умову
: <math> \sup_{n \in \mathbb N}|z_n|<\infty </math><br />
називають множиною Мандельброта.<br />
 
[[Комплексні числа]] можна трактувати як [[точка|точки]] на [[площина|площині]]. Тоді множину Мандельброта можна побудувати у [[простір|просторі]] <math>\mathbb R^2</math>.
 
== Розширене визначення ==
Вищевказана послідовність може бути розкрита для кожної точки <math>c</math> на комплексній площині таким чином:
 
: <math>\begin{align}
c & = x + i \cdot y, \\
Z_0 &= 0, \\
Z_1 &= Z_0^2 + c = \\
&= x + iy \\
Z_2 &= Z_1^2 + c = \\
&= (x + iy)^2 + x + iy = \\
&= x^2 + 2ixy - y^2 + x + iy = \\
&= x^2 - y^2 + x + (2xy + y)i, \\
Z_3 &= Z_2^2 + c = \ldots
\end{align}</math>
 
і так далі.
 
Якщо переформулювати ці вирази у вигляді ітеративної послідовності значень координат комплексної площини <math>(x, y)</math>, тобто замінивши <math>z_n</math> на <math>x_n + i \cdot y_n</math>, а <math>c</math> на <math>p + i \cdot q</math>, отримаємо:
 
: <math>x_{n+1} = {x_n}^2 - {y_n}^2 + p,</math>
: <math>y_{n+1} = 2{x_n} {y_n} + q.</math>
 
Візуально, всередині множини Мандельброта можна виділити нескінченну кількість елементарних фігур, причому найбільша в центрі являє собою [[Кардіоїда|кардіоїду]]. Також є набір овалів, дотичних до кардіоїди, розмір яких поступово зменшується, прямуючи до нуля. Кожен з цих овалів має свій набір менших овалів, діаметр яких також прямує до нуля і т. д. Цей процес триває нескінченно, утворюючи фрактал. Також важливо, що ці процеси розгалуження фігур не вичерпують повністю множину Мандельброта: якщо розглянути зі збільшенням додаткові «гілки», то в них можна побачити свої кардіоїди та кола, не пов'язані з головною фігурою. Найбільша фігура (видима при розгляданні основної множини) з них знаходиться в області від -1,78 до -1,75 на від'ємній осі дійсних значень.
 
== Історія множини Мандельброта ==
Вперше множину Мандельброта було описано в [[1905|1905 році]] [[П'єр Фату|П'єром Фату]], французьким математиком, який працював в галузі аналітичної динаміки [[Комплексне число|комплексних чисел]]. Фату вивчав [[Рекурсія|рекурсивні]] процеси виду
 
: <math>z \to z^2 + c.</math>
 
Почавши з точки <math>z_0</math> на комплексній площині, можна отримати нові точки, послідовно застосовуючи до них цю формулу. Така послідовність точок називається ''орбітою'' <math>z_0</math> при перетворенні <math>z \to z^2 + c</math>.
 
Фату знайшов, що орбіта <math>z_0 = 0</math> при цьому перетворенні показує досить складну і цікаву поведінку. Існує нескінченна множина таких перетворень&nbsp;— своя для кожного значення <math>c</math>. В ті часи комп'ютерів ще не було, і Фату, звичайно, не міг побудувати орбіти всіх точок площини, йому доводилося робити все вручну. Ґрунтуючись на своїх розрахунках, він довів, що орбіта точки, що лежить на відстані більше 2 від початку координат, завжди йде в нескінченність.
 
Фату ніколи не бачив зображень, які ми зараз знаємо як зображення множини Мандельброта, тому що необхідну кількість обчислень неможливо провести вручну. Професор [[Бенуа Мандельброт]] був першим, хто використав для цього [[комп'ютер]].
 
Фрактали були описані Мандельбротом у [[1975|1975 році]] в його книзі «{{lang-fr2|Les Objets Fractals: Forme, Hasard et Dimension}}» («Фрактальні об'єкти: форма, випадковість і розмірність»). У цій книзі Мандельброт вперше використав термін «фрактал» для позначення математичного феномена, який демонструє настільки непередбачувану і дивну поведінку. Ці феномени народжувалися при використанні рекурсивного алгоритму для отримання якої-небудь кривої або множини. Множина Мандельброта&nbsp;— один із таких феноменів, названий за іменем свого дослідника.
 
== Побудова множини ==
Неважко довести, що як тільки модуль ''z''<sub>''n''</sub> виявиться більшим від 2 (або, у термінах дійсної і уявної частин, ''x''<sub>''n''</sub><sup>2</sup> + ''y''<sub>''n''</sub><sup>2</sup> > 4), послідовність прямуватиме до нескінченності. У разі |''c''| ⩽ 2 це можна довести за допомогою методу [[Математична індукція|математичної індукції]]. При |''c''| > 2 точка ''c'' не належить множині Мандельброта, що також можна вивести методом індукції, використовуючи рівність ''z''<sub>0</sub> = 0. (Хоча в цьому випадку може існувати інше ''z''<sub>0</sub>, для якого відповідна послідовність обмежена за модулем, але для деякого ''n'' виконується нерівність |''z''<sub>''n''</sub>| > 2.)
 
Порівняння |''z''<sub>''n''</sub>| з цим числом (в англомовній літературі його називають «''bail-out''») дозволяє виділяти точки, що не потрапляють всередину множини. Для точок, що лежать всередині множини, послідовність не буде мати тенденції до нескінченності і ніколи не досягне цього числа, тому після певного числа ітерацій розрахунок необхідно примусово завершити. Максимальне число ітерацій, після яких число вважається таким, що потрапило всередину множини, задається в програмі.
 
Зображення, отримане таким способом, є лише наближенням до реальної множини Мандельброта. Більш якісні результати можна отримувати, збільшуючи максимальну кількість ітерацій, однак при цьому пропорційно зростає і час розрахунків.
 
=== Додання кольору ===
[[Файл:Mandel_zoom_11_satellite_double_spiral.jpg|міні|Фрагмент межі множини Мандельброта в кольоровому варіанті]]
Строго математично, зображення множин Мандельброта та [[Множина Жуліа|Жуліа]] повинні бути чорно-білими. Точка або потрапляє у множину, або ні. Незважаючи на це, за допомогою комп'ютера можна побудувати і кольорові зображення. Найпоширенішим способом є розфарбовування точок зовні множини в колір, що відповідає кількості ітерацій, за яку точка йде в «нескінченність» або, з точки зору програми, на певну відстань від нуля.
 
Порядок визначення, потрапляє точка ''z''<sub>0</sub> всередину множини (яка традиційно зафарбовується чорним кольором) чи ні (зафарбовується кольором, залежним від швидкості руху в нескінченність) такий: на кожній ітерації для ''z''<sub>''n''</sub> = ''x''<sub>''n''</sub> + ''y''<sub>''n''</sub>·''i'' обчислюється значення модуля <math>|z_n| = \sqrt{x_n^2 + y_n^2}</math>, який потім порівнюється з «межею нескінченності» (зазвичай береться значення, що дорівнює 2). Тут важливо звернути увагу, що вже на даному етапі можна запровадити певну оптимізацію обчислень, якщо не перевіряти <math>\sqrt{x_n^2 + y_n^2} > 2</math>, а <math>x_n^2 + y_n^2 > 4</math>, що значно знизить час розрахунків.
 
Таким чином, якщо |''z''<sub>''n''</sub>|<sup>2</sup> ⩽ 4 за будь-якого числа ітерацій (на практиці&nbsp;— при всіх обчислених ітераціях), то колір точки чорний, в іншому випадку він залежить від останнього значення ''n'', за якого |''z''<sub>''n''</sub>|<sup>2</sup> ⩽ 4. Значення ''n'', фактично, означає швидкість руху ''z''<sub>''n''</sub> в нескінченність і може бути просто індексом у таблиці кольорів або використовуватись як параметр у більш складному алгоритмі.
 
Даний алгоритм визначає, що якщо точка віддаляється більше ніж на 2 від початку координат, то вона лежить зовні множини Мандельброта. Для того, щоб визначити, що точка лежить всередині множини, є багато способів. Найпростіше рішення — обмежити кількість ітерацій певним максимумом. Якщо точка не вийшла за зазначену межу, можна вважати, що вона знаходиться всередині множини.
 
Точкам біля межі множини потрібно більше ітерацій для виходу в нескінченність. Тому такі області промальовуються помітно довше. Чим далі від кордонів множини, тим вища швидкість відходу в нескінченність. Для таких точок потрібно менше ітерацій.
 
=== Оптимізація ===
Одним зі способів зменшення обсягу обчислень при обчисленні загальної картини множини може служити перевірка, чи потрапляє точка в область головної [[Кардіоїда|кардіоїди]]. Формула кардіоїди в [[Полярна система координат|полярних координатах]] виглядає так:
 
: <math>\rho_c = \frac{1}{2} - \frac{1}{2} \cos \theta.</math>
 
Таким чином, для точки <math>(x, y)</math> необхідно обчислити
 
: <math>\rho = \sqrt{\left(x - \frac{1}{4} \right)^2 + y^2},</math>
: <math>\theta = \operatorname{atn}_2 \left(y, x - \frac{1}{4}\right),</math>
: <math>\rho_c = \frac{1}{2} - \frac{1}{2} \cos \theta.</math>
 
Якщо <math>\rho \leqslant \rho_c</math>, то точка <math>(x, y)</math> потрапляє всередину множини і зафарбовується чорним кольором, а повторне обчислення можна пропустити.
 
На практиці найбільше зменшення обсягу обчислень дає трасування межі: якщо є деяка замкнута крива, що не перетинає вісь абсцис, кожна точка якої йде за межу ({{lang-en|bail-out}}) за однакове число ітерацій або, навпаки, належить множині Мандельброта, то будь-яка точка всередині цієї кривої буде володіти тією ж властивістю, а отже вся область всередині межі зафарбовується однаковим кольором.
 
== Зв'язок з множиною Жюліа ==
[[Файл:Fractal_mandel_part.png|міні|Фрагмент множини Мандельброта, що лежить в районі її межі]]
[[Файл:Fractal_julia.png|міні|Фрактал Жюліа]]
[[Файл:Fractale.gif|міні|Збільшення на межі множини Мандельброта формує зображення, аналогічні множині Жюліа]]
Множина Мандельброта спочатку була побудована як каталог [[Множина Жюліа|множин Жюліа]]: кожній точці на комплексній площині відповідає своя множина Жюліа. Точки, що належать множині Мандельброта, відповідають [[Зв'язаний простір|зв'язним множинам]] Жюліа, а точки, які не належать — [[Зв'язаний простір|незв'язним]].
 
Звідси зрозуміло, що цікаві варіанти множини Жюліа відповідають точкам, що лежать на межі множини Мандельброта. Точки глибоко всередині утворюють прості геометричні фігури, а зовнішні виглядають як пил, що оточує кольорові плями. Деякі програми, наприклад, Fractint, дозволяють користувачеві прямо на екрані вказати точку, для якої необхідно побудувати відповідну множину Жюліа, спрощуючи пошук красивих зображень.
 
Множина Мандельброта й сама містить структури, що нагадують множину Жюліа: для будь-якого <math>c</math> область множини Мандельброта поблизу <math>c</math> нагадує центр множини Жюліа з параметром <math>c</math>. Якщо сильно збільшити множину Мандельброта в граничній точці ''c'' і те ж саме зробити з множиною Жюліа для цього ж значення ''c'' і в цій самій точці, то картини будуть асимптотично прямувати одна до одної при зростанні збільшення.
 
== Варіації множини Мандельброта ==
Найчастіше під назвою «множина Мандельброта» розуміється тільки множина, описана вище. Однак будь-яка функція комплексної змінної має відповідну множину Мандельброта, що також характеризується наявністю або відсутністю зв'язної множини Жюліа. Наприклад, можна покласти ''f''<sub>''c''</sub>(''z'') = ''z''<sup>3</sup> + ''c''. Тоді для кожного значення ''c'' перевіряється зв'язність множини Жюліа функції ''f''<sub>''c''</sub> і за наявності зв'язності вважається, що ''c'' належить множині Мандельброта. В описаному випадку зв'язність можна перевірити тим самим способом, що й для ''f''<sub>''c''</sub>(''z'') = ''z''<sup>2</sup> + ''c''.
 
Ці твердження можна узагальнити і на множини Жюліа, визначувані більше, ніж двома числами. Наприклад, безліч Жюліа, обумовлена трьома дійсними числами, має відповідну тривимірну множину Мандельброта.
 
Розглядаються і багатовимірні варіації множини Мандельброта. Так, тривимірний аналог отримав назву [[лампочка Мандельброта]], хоча класичні аналоги на комплексних числах існують тільки в розмірності, рівній степеню 2.
 
== Застосування множини Мандельброта ==
Безліч Мандельброта знаходить застосування для аналізу виникнення турбулентності у фізиці плазми і термодинаміці, розвитку біфуркацій тощо.<sup class="noprint" style="white-space: nowrap">[''[[Вікіпедія:Посилання на джерела|<span style="" title="не указан источник на утверждение (17 декабря 2018)">джерело не вказано 61 день</span>]]'']</sup>
 
== Застосування множини Мандельброта в мистецтві ==
Пошук гарних зображень множини Мандельброта&nbsp;— цікаве хобі для дуже багатьох людей. Вони збирають колекції таких зображень, причому кожне з них може бути описане невеликою кількістю параметрів, наприклад, просто координатами центра.<gallery mode="packed" heights="170px">
Файл:Mandelbrot Set Image 02 by Aokoroko.jpg|Координати центра: -1.7433419053321, 0.0000907687489, ширина 0.00000000374
Файл:Mandelbrot Set Image 04 by Aokoroko.jpg|Координати центра: -1.88488933694469, 8.1387{{e|−10}}, ширина 2.4{{e|−13}}
Файл:Mandelbrot Set Image 11 by Aokoroko.jpg|Координати центра: -0.777807810193171, 0.131645108003206, ширина 3.2{{e|−15}}
Файл:Mandelbrot Set Image 01 by Aokoroko.jpg|Координати центра: -0.56267837374, 0.65679461735, ширина 0.000000064
</gallery>Є велика кількість програм для малювання фракталів, але, незважаючи на це, багато людей пишуть свої програми для більшої гнучкості при експериментах. Наприклад, ці анімовані зображення були створені таким способом.<gallery mode="packed" heights="160px">
Файл:Mandelbrot Set Color Cycling Animation 400px 2.gif|Координати центра: -0.56267837374, 0.65679461735, ширина 0.000000064
Файл:Mandelbrot Set Color Cycling Animation 400px.gif|Координати центра: -1.96680095, 0.00000478, ширина 0.00000014
Файл:Mandelbrot Set Color Cycling Animation 400px 3.gif|Координати центра: -1.7433419053321, 0.0000907687489, ширина 0.00000000374
</gallery>
 
== Математичні факти про множину Мандельброта ==
Douady і Hubbard довели, що множина Мандельброта є [[Зв'язаний простір|зв'язною]], хоча в це й важко повірити, дивлячись на хитрі системи мостів, що з'єднують різні її частини. Зв'язність множини Мандельброта випливає з того, що вона є перетином вкладених зв'язкних компактних множин.
 
Однак невідомо, чи є вона [[Локально зв'язаний простір|локально зв'язною]]. Ця відома гіпотеза в комплексній динаміці отримала назву MLC ({{lang-en|Mandelbrot locally connected}}). Багато математиків докладають зусиль до її доведення. Jean-Christophe Yoccoz довів, що гіпотеза правильна у всіх точках зі скінченною ренормалізацією, потім багато інших математиків доводили справедливість гіпотези у багатьох окремих точках множини Мандельброта, але загальна гіпотеза залишається недоведеною.
 
Mitsuhiro Shishikura довів, що [[розмірність Гаусдорфа]] межі множини Мандельброта дорівнює 2. Але залишається невідомою відповідь на питання, чи має межа множини Мандельброта додатну [[Міра Лебега|міру Лебега]] на площині.
 
Число [[Метод ітерації (алгоритм)|ітерацій]] для будь-якої точки в побудові множини дуже близьке до логарифма електричного потенціалу, що виникає, якщо зарядити множину Мандельброта. Точніше, границя <math>\ln\big(\ln(|z_n|)/2^n\big) + \text{const}</math> збігається з цим потенціалом.
 
== Як намалювати? ==
Варто зауважити, що якщо <math>Z</math> вийде за межі комплексного кола радіусу <math>2</math>, то вже ніколи не повернеться назад. Дійсно, якщо <math>|c|\le 2</math>, і <math>\left|f_{c}^{(n)}(0)\right|\ge 2</math>, то
 
<math>\left|f_{c}^{(n+1)}(0)\right|=\left|f_{c}^{(n)}(0)^2 + c\right|\ge\left|f_{c}^{(n)}(0)^2\right|-|c|=\left|f_{c}^{(n)}(0)\right|^2-|c|\ge 4-2=2</math> і, за методом математичної індукції, всі наступні ітерації теж поза колом радіуса <math>2</math>. Якщо ж <math>|c|>2</math>, то
{{питання|Як довести цей факт, чи де шукати доведення?}}
 
<math>\left|f_{c}^{(1)}(0)\right|=|c|\ge|c|</math> і <math>\left|f_{c}^{(n+1)}(0)\right|=\left|f_{c}^{(n)}(0)^2+c\right|\ge\left|f_{c}^{(n)}(0)^2\right|-|c|\ge|c|^2-|c|\ge|c|>2</math> (тут верхній індекс позначає номер ітерації).
Тому варто включати в множину Мандельброта лиш ті точки, що не вийшли за межі кола протягом певного числа ітерацій.
 
Тому варто включати в множину Мандельброта лише ті точки, що не вийшли за межі кола протягом певного числа ітерацій.
Функція мовою [[Python]] що за координатами точки дає номер кольору. Вся арифметика комплексна (крім лічильника циклу звісно).
<source lang="python">
def manfunc(x,y):
z=0+0j
c=complex(x,y)
i=0
while abs(z)<2:
z=z*z+c
i+=1
if i>10: break # Константу можна міняти. Чим більша - тим краще, більше кольорів, але довше рахує.
return i
</source>
 
Код мовою [[Python]], що за розмірами генерує зображення множини Мандельброта, на якому колір позначає номер ітерації розбіжності.
Те саме в дійсних числах:
<syntaxhighlight lang="python">
""" @author: Nikita Skybytskyi : Mandelbrot set in 16 lines of code """
import numpy as np
import matplotlib.pyplot as plt
 
def mandelbrot(h, w, max_iter=40):
<source lang="python">
"""Returns an image of the Mandelbrot fractal of size (h,w)."""
def manfunc(x,y):
y, x = np.ogrid[-1.5 : 1.5 : h * 1j, -2 : 1 : w * 1j]
zx=0
c = x + zy=0y * 1j
z = c
i=0
div_time = max_iter + np.zeros(z.shape, dtype=int)
while zx*zx+zy*zy<4:
zx1=zx*zx-zy*zy+x
for iteration in range(max_iter):
zy=2*zx*zy+y
z = z**2 + zx=zx1c
diverge = z * np.conj(z) > 2**2 # орбіти яких точок розходяться
i+=1
div_now = diverge & (div_time == max_iter) # орбіти яких точок починають розходитися на цій ітерації
if i>10: break
div_time[div_now] = iteration # запам'ятовуємо, хто коли починає розходитися
return i
z[diverge] = 2 # уникаємо надто сильної розбіжності (вона може призвести до переповнення)
</source>
return div_time
 
plt.imshow(mandelbrot(800,800))
Як номер кольору можна використовувати число (''i'' mod ''n''), де ''i'' — задана максимальна кількість ітерацій, ''n'' — кількість використаних кольорів.
plt.show()
</syntaxhighlight>
 
== Дивись такожПримітки ==
{{примітки}}
 
== Література ==
* {{книга-ру|заглавие=(Не)послушные рынки: фрактальная революция в финансах|оригинал=The Misbehavior of Markets|автор=[[Бенуа Мандельброт]], Ричард Л. Хадсон|ссылка=|isbn=5-8459-0922-8|страницы=400|год=2005|место=М.|издательство=«Вильямс»}}
 
== Див. також ==
* [[Бенуа Мандельброт]]
* [[Буддаброт]]
* [[Фрактал]]
* [[Лампочка Мандельброта]]
* [[Палаючий корабель]]
 
== ЗноскиПосилання ==
* [http://vimeo.com/1908224 Відео: 10 хвилин запаморочливого занурення у множину Мандельброта] {{Webarchive|url=https://web.archive.org/web/20190218043108/https://vimeo.com/1908224 |date=18 лютого 2019 }}
<references />
* [http://fractalworld.xaoc.ru/Mandelbrot_set_and_Julia_set Множини Мандельброта та Жюліа на сайті FractalWorld] {{Webarchive|url=https://web.archive.org/web/20190707210815/http://fractalworld.xaoc.ru/mandelbrot_set_and_julia_set |date=7 липня 2019 }}
 
* [http://www.ted.com/talks/benoit_mandelbrot_fractals_the_art_of_roughness.html Benoit Mandelbrot: Fractals and the art of roughness] {{Webarchive|url=https://web.archive.org/web/20140217132541/http://www.ted.com/talks/benoit_mandelbrot_fractals_the_art_of_roughness.html |date=17 лютого 2014 }}, запис виступу на конференції TED
* [http://mandelbrot.chat.ru Mandelbrot 4.0] {{Webarchive|url=https://web.archive.org/web/20210713213035/http://mandelbrot.chat.ru/ |date=13 липня 2021 }}&nbsp;— безплатна (під [[GNU General Public License|громадською ліцензією GNU]]) програма для створення множин Мандельброта та Жюліа
* [http://sourceforge.net/projects/quickman/ QuickMAN v.1.10] {{Webarchive|url=https://web.archive.org/web/20190402195511/https://sourceforge.net/projects/quickman/ |date=2 квітня 2019 }} безплатна (під [[GNU General Public License|громадською ліцензією GNU 2]]) програма для створення множини Мандельброта{{ref-en}}
* [http://zhekuskov.ru/mandelbrot/ Інтерактивна JavaScript-візуалізація множини Мандельброта] {{Webarchive|url=https://web.archive.org/web/20190308081019/http://zhekuskov.ru/mandelbrot/ |date=8 березня 2019 }}
{{Фрактали}}
[[Категорія:Фрактали]]
[[Категорія:Статті з прикладами коду мовою Python]]
 
{{Link GA|de}}
{{Link GA|lv}}
 
[[ar:مجموعة ماندلبرو]]
[[ca:Conjunt de Mandelbrot]]
[[cs:Mandelbrotova množina]]
[[da:Mandelbrotmængden]]
[[de:Mandelbrot-Menge]]
[[en:Mandelbrot set]]
[[eo:Aro de Mandelbrot]]
[[es:Conjunto de Mandelbrot]]
[[fa:مجموعه مندلبرو]]
[[fi:Mandelbrotin joukko]]
[[fr:Ensemble de Mandelbrot]]
[[gl:Conxunto de Mandelbrot]]
[[he:קבוצת מנדלברוט]]
[[hr:Mandelbrotov skup]]
[[hu:Mandelbrot-halmaz]]
[[is:Mandelbrot mengið]]
[[it:Insieme di Mandelbrot]]
[[ja:マンデルブロ集合]]
[[ko:만델브로 집합]]
[[lv:Mandelbrota kopa]]
[[nl:Mandelbrotverzameling]]
[[no:Mandelbrotmengden]]
[[pl:Zbiór Mandelbrota]]
[[pt:Conjunto de Mandelbrot]]
[[ro:Mulțimea lui Mandelbrot]]
[[ru:Множество Мандельброта]]
[[sh:Mandelbrotov skup]]
[[simple:Mandelbrot set]]
[[sk:Mandelbrotova množina]]
[[sl:Mandelbrotova množica]]
[[sv:Mandelbrotmängden]]
[[te:మేండెల్‌బ్రాట్ సెట్]]
[[th:เซตมานดัลบรอ]]
[[tr:Mandelbrot kümesi]]
[[vi:Tập Mandelbrot]]
[[zh:曼德博集合]]