почему разные значения масштабирования Мандельброта дают одинаковые результаты? - PullRequest
0 голосов
/ 07 февраля 2012

Что дает возможность определить, насколько глубоким будет процесс масштабирования?
Я имею в виду, что раньше я пытался запустить набор Мандельброта с 200 итерациями, а затем сравнил результаты с 1000 итерациями.результаты были довольно удивительными, потому что я получил тот же уровень масштабирования. итерации были постоянными в течение всего процесса, а набор Мандельброта был определен с постоянной 512X512 пикселей.что я должен изменить, чтобы получить более глубокий уровень масштабирования?
спасибо!

edit: я также хотел бы отметить, что из хорошо выглядящей картинки, после того, как я достигну 2-3 уровня mandelbrot, весь набор рассматривается как гигантский пиксель.почему это так?

2d edit: после обширного исследования я только что заметил, что весь набор выглядит как большой пиксель, потому что все точки получают одинаковое количество итераций, в моем случае их все 60...

1 Ответ

1 голос
/ 08 февраля 2012

Это может быть слишком абстрактно, или слишком конкретно, или непостижимо. Как я сказал в комментарии, было бы легче обсудить с вашим кодом под рукой.

Если вы имеете в виду то, что я думаю, вы подразумеваете под масштабированием, вы изменили бы границы c (в формуле z[n+1] = z[n]^2 + c).

Для пояснения, полный набор Мандельброта содержится в окружности с радиусом 2 вокруг центра [0;0]. c в формуле представляет собой комплексное число, то есть [r;i] (действительное; воображаемое), которое на экране компьютера соответствует x и y.

Другими словами, если мы поместим этот круг радиуса 2 так, чтобы он точно находился внутри нашего изображения, тогда [-2;2] будет верхним левым углом нашего изображения, а [2;-2] - нижним правым углом.

Затем мы берем каждую точку нашего изображения, рассчитываем, как соответствуют ее пиксельные координаты [x;y] в терминах меньшей, «фактической» системы координат [r;i]. Тогда у нас есть c и мы можем отправить его через наши итерации.

Таким образом, для «увеличения» вы должны выбрать другие границы [r;i], чем полные [-2;2], [2:-2], например. [-1;1] [1:-1].

С 512x512 пикселей и «фактической» системой координат, которая теперь 2 на 2, это означало бы, что каждый пиксель соответствует 2/512 единицам «фактической» системы координат. Таким образом, ваше первое r значение будет равно -1, следующее будет -1 + 2/512 = -0.99609375 и т. Д.

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

...