FractalPark
КлассическиеЛегко

Mandelbrot Set

Карта квадратичного семейства z² + c: выберите точку, начните с нуля и наблюдайте, как её орбита решает исход.

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

Обзор

Множество Мандельброта — это карта целого семейства, а не одна кривая, заданная одним уравнением. Выберите точку c на комплексной плоскости. Начните с z = 0, возведите в квадрат то, что у вас есть, прибавьте c и повторяйте. Орбита — это получающийся ряд значений. Некоторые остаются в ограниченной области; другие устремляются к бесконечности. Значения c из первой группы и образуют множество.

Оно также служит указателем для квадратичных множеств Жюлиа. Зафиксируйте одно c — и получите одно множество Жюлиа; оно связно ровно тогда, когда c лежит в множестве Мандельброта. Переместитесь на несколько пикселей по плоскости параметра — и поведение может измениться от устоявшегося повторяющегося цикла до ухода на бесконечность.

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

Математика

Give one parameter its turn

z(n+1) = z(n)^2 + c, with z(0) = 0

Choose a complex number c, then keep it fixed. The orbit starts at z₀ = 0; each new value is the old one squared, with c added back in.

Try two anchors. If c = 0, the orbit stays at zero forever, so 0 belongs to the Mandelbrot set. If c = 1, it runs 0, 1, 2, 5, 26, … and escapes, so 1 is out. In this quadratic map, once the magnitude of z exceeds 2, there is no return: the orbit diverges. A renderer treats that as its escape signal and stops at a chosen iteration limit.

История

The story starts before anyone could print a detailed parameter plane. Around 1917–1918, Pierre Fatou and Gaston Julia laid foundations for iterating complex functions. Fatou was a French mathematician and astronomer at the Paris Observatory; Julia’s 1918 memoir on iterated rational functions became an early landmark.

There is no uncontested “discovery moment.” At the 1978 Stony Brook conference, Robert W. Brooks and J. Peter Matelski were studying Kleinian groups when they published an early image now recognized as this same parameter locus. Their question was different, and the rough image did not yet carry the interpretation that later made the set famous.

Benoit B. Mandelbrot, at IBM’s Thomas J. Watson Research Center, used computer graphics to examine related quadratic parameter spaces and published his study in 1980. He placed the images in the wider frame of fractal geometry, making the object hard to ignore on its own terms. Mandelbrot was born in Warsaw, educated in France, spent 35 years at IBM, and later taught at Yale.

In the early 1980s, Adrien Douady and John H. Hubbard built the modern mathematical theory of the set, including the proof of its connectedness. Their work helped establish the name “Mandelbrot set.” Douady, a leading French mathematician in complex dynamics, died in 2006; Hubbard’s Cornell faculty page remains available and describes his work on iterative systems and computer-assisted mathematical exploration.

Визуальные особенности

From a distance, first comes the heart-shaped main cardioid, then its round bulbs. The largest bulb marks a stable two-step cycle; smaller ones collect other repeating cycles. Follow the edge and the smooth arc frays into antennae, spirals, threads, and tiny copies of the whole set.

The boundary never finishes. Zooming brings out more structure, though not exact photocopies: local dynamics stretch and bend every return. The broad black interiors are relatively calm. At the fine edge, the slightest nudge to c can send an orbit elsewhere.

Ремиксы и примеры

Начните с канонического документа

Откройте то же утверждённое состояние формулы, которое используется в этом руководстве, а затем измените вид, раскраску, трансформации или анимацию в интерактивном Обзоре.

Часто задаваемые вопросы

What gets a point into the Mandelbrot set?

c belongs when the orbit from zero remains bounded under iteration. On a computer, |z| exceeding 2 settles it: the orbit escapes. Points that have not escaped by the iteration limit are drawn as members, although a point tight against the boundary may need many more steps for a dependable verdict.

Where do Julia sets enter?

For a Julia set, c stays fixed while the starting point z₀ ranges across the image. For the Mandelbrot set, zero stays fixed and c moves instead. In the quadratic family, the link is exact: the Julia set for z² + c is connected if and only if c belongs to the Mandelbrot set.

Ссылки

Разбор исходного кода

  1. frm-v1:e4d2259a5dd3fe7b3af646514a4313e83efcc80e887e04c07b7469bb27a66b90:init/0

    В mandelbrot, этот узел выполняет if ismand: z = 0; иначе z = pixel.

  2. frm-v1:e4d2259a5dd3fe7b3af646514a4313e83efcc80e887e04c07b7469bb27a66b90:loop/0

    В mandelbrot, этот узел выполняет if power == 2: z = z * z + c; иначе z = z ^ power + c.

  3. frm-v1:e4d2259a5dd3fe7b3af646514a4313e83efcc80e887e04c07b7469bb27a66b90:bailout

    В mandelbrot, этот узел выполняет |z| <= 256.

Синтаксические особенности

state-flow

Конкретный поток состояния: если ismand, z = 0; иначе z = pixel, затем ветвь power обновляет z.

stopping-test

Проверка остановки оценивает только |z| <= 256; она не присваивает состояние.

Эксперимент с параметрами

power

Шаги

  1. Запустите mandelbrot с закреплённым профилем и запишите результат.
  2. Измените только power, оставьте остальные слоты выполнения и настройки профиля неизменными, снова запустите и запишите, есть ли различие.

Что наблюдать

Запишите, меняет ли if power == 2, z = z * z + c; иначе z = z ^ power + c видимый результат или проверку остановки |z| <= 256 относительно базового запуска; определение не гарантирует различие.

Упражнение

Проследите аннотации mandelbrot и объясните, как if power == 2, z = z * z + c; иначе z = z ^ power + c выполняется в отмеченных операциях.

Проверка выполнения

Ваш ответ объясняет все 3 аннотации, указывает if power == 2, z = z * z + c; иначе z = z ^ power + c и отличает |z| <= 256 как проверку остановки от присваивания.

Подсказка

Поток состояния последовательно выполняет если ismand: z = 0; иначе z = pixel → если power == 2: z = z * z + c; иначе z = z ^ power + c и передаёт результат следующему шагу.

Источники и права

Источник: закреплённое определение выполнения и решение о публикации.

Сведения о правах следуют закреплённому решению в английском разделе.

Карточка формулы

mandelbrot

Эта каноническая реализация FractalPark опубликована и готова к запуску.

Детерминированный предпросмотр mandelbrot

Канонический исходный код

Язык
frm-like/1
Стандартная библиотека
1
Режим профиля
parameter-plane
Центр профиля
-0.5, 0
Масштаб профиля
0.4
Итерации профиля
96
Основание профиля
mechanical

Параметры

  • power: real

Канонический исходный код

Эта проверенная каноническая ревизия доступна только для чтения. Remix создаёт отдельную редактируемую копию.

Загрузка канонического кода…

Источник и текущая реализация

ID формулы
00e14aa8-b766-54ea-a359-3f5d20d329b7
Каноническое имя
mandelbrot
Исходное имя
mandelbrot
Исторический источник
FractalPark
Текущая реализация
Собственность проекта

Это собственная реализация проекта FractalPark. Ссылка ведёт на зафиксированный канонический файл Definition.

Есть вопрос о правах или атрибуции?

Отправьте ID формулы и подтверждающие материалы. На время проверки сопровождающий может приостановить или отозвать реализацию. contact@fractalpark.com