Пользователь
0,0
рейтинг
23 сентября 2013 в 00:03

Разработка → Фракталы в простых числах из песочницы



Я обнаружил этот фрактал, когда разглядывал интерференцию волн на поверхности речки. Волна движется к берегу, отражается и накладывается сама на себя. Есть ли порядок в тех узорах, которые создаются волнами? Попробуем найти его. Рассмотрим не всю волну, а только вектор ее движения. «Берега» сделаем гладкими, для простоты эксперимента.

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

Или используя JavaScript реализацию алгоритма.

Английская версия: New kind of fractals — Fractals in relatively prime integers (coprime integers)

Возьмем прямоугольник со сторонами q и p. Отправим луч (вектор) из угла в угол. Луч двигается к одной из сторон прямоугольника, отражается и продолжает движение к следующей стороне. Это продолжается до тех пор, пока луч не попадет в один из оставшихся углов. Если размер стороны q и p — взаимно просты числа, то получается узор (как мы увидим позже — фрактал).

На картинке мы ясно видим, как работает этот алгоритм.



Gif-анимация:





Самое удивительное то, что с разными сторонами прямоугольника — получаем разные узоры.






Почему я называю эти узоры фракталами? Как известно, «фрактал» — это геометрическая фигура, обладающая свойствами самоподобия. Часть картинки повторяет всю картинку в целом. Если значительно увеличить размеры сторон Q и P — ясно, что эти узоры обладают свойствами самоподобия.

Попробуем увеличить. Увеличивать будем хитрым способом. Возьмем, например, узор 17x29. Следующие узоры будут: 29x(17+29=46), 46x(29+46=75)…
Одна сторона: F(n);
Вторая сторона: F(n+1)=F(n)+F(n-1);
17, 29, 46, 75, 121, 196, 317, 513, 830, 1343
Как числа Фибоначчи, только с другими первым и вторым членом последовательности: F(0)=17, F(1)=29.



















Дальше фракталы циклически повторяются.

Если большая сторона четная, получается такой узор:



Если меньшая сторона четная:



Если обе стороны нечетные — получаем симметрический узор:





В зависимости от того, как начинается луч:

или


Попробую объяснить, что происходит в этих прямоугольниках.

Отделим от прямоугольника квадрат, и посмотрим, что происходит на границе.



Луч выходит в той-же точке, откуда зашел.



При этом, количество квадратиков, которые проходит луч — всегда четное число.

Поэтому, если отрезать от прямоугольника квадрат — останется не измененная часть фрактала.

Если отделять от фрактала квадраты столько раз, сколько это возможно — можно добраться до «начала» фрактала.



Похоже на спираль Фибоначчи?



Из чисел Фибоначчи тоже можно получить фракталы.

В математике числами Фибоначчи (ряд Фибоначчи, последовательность Фибоначчи) называют числа:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597…
По определению, первые две цифры в последовательности Фибоначчи 0 и 1, а каждое последующее число равно сумме двух предыдущих.
F(n)=F(n-1)+F(n-2)
F(0)=0, F(1)=1



Поехали:




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



При этом фрактал повторяет часть фрактала, увеличенного на .

Вместо чисел Фибоначчи можно использовать иррациональные размеры сторон:



Получим тот-же фрактал.

Те-же фракталы можно получить и в квадрате, если пускать луч под другим углом:



Что можно сказать в заключении?
Хаос — это тоже порядок. Со своими закономерностями. Порядок этот не изученный, но вполне поддающийся изучению. А все стремление науки — обнаружить эти закономерности. И в конечном итоге соединить детали головоломки, чтобы увидеть общую картину.
Давайте посмотрим на поверхность речки. Если бросить в нее камень — пойдут волны. Круги, вполне поддающиеся изучению. Скорость, период, длину волны — все это можно подсчитать. Но до тех пор, пока волна не дойдет до берега, не отразиться и не начнет накладываться на саму себя. Получим хаос (интерференцию), который уже трудно поддается изучению.
Что если двигаться от обратного? Упростить поведение волны на столько, на сколько это возможно. Упростить, найти закономерность и после этого попробовать описать уже полную картину происходящего.
Что можно упростить? Очевидно, что сделать отражающую поверхность прямой, без изгибов. Далее, вместо самой волны, использовать только вектор движения волны. В принципе, этого достаточно, чтобы построить простой алгоритм и смоделировать процесс на компьютере. И даже вполне достаточно, чтобы сделать «модель» поведения волны на обычном листке в клеточку.
Что имеем в результате? В результате видим, что в волновых процессах (та-же рябь на поверхности речки) имеем не хаос, а наложение фракталов (самоподобных структур) друг на друга.

Рассмотрим другой вид волн. Как известно, электромагнитная волна состоит из трех векторов — волновой вектор и вектора напряженности электрического и магнитного поля. Как видим, если «словить» такую волну в замкнутой области – там, где пересекаются эти вектора, получаем вполне четкие замкнутые структуры. Быть может, элементарные частицы – это такие-же фракталы?



Все фрактальчики в прямоугольниках от 1 до 80 (6723х6723 px):


Замкнутые области во фракталах (6723х6723 px):




Просто красивый фрактал (4078x2518 px):


Если у вас хватило терпения дочитать до конца, еще раз JavaScript реализация алгоритма :)
Сергей Герасимов @xcont
карма
46,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (33)

  • +8
    О более полная версия этой статьи habrahabr.ru/sandbox/68846/ я так понимаю?
  • +8
    Да уж… Посидел у речки называется :-)
    • +4
      Вот так обычно — хочется отвлечься, выходишь подышать, а тут мозг такую подставу делает…
    • +1
      Бросая в воду фракталы, смотри на фракталы, ими образуемые; иначе такое бросание будет пустым бросанием.
  • 0
    Если элементарные частицы — фракталы, то какова их конкретная математика? И какие выводы могут быть?
    • +1
      Существует гипотеза, что вся вселенная фрактальна. И элементарные частицы, соответственно, тоже. Выводы очень интересны.
      Плотность материи, энергии и всего остального тождественно равно нулю. Следовательно, вселенная не может расширяться. Следовательно, не было большого взрыва.
      • 0
        Не понял, почему это плотность материи или энергии вдруг тождественно нулю равна? У фракталов, как известно, дробная размерность, как, например, у прямой линии размерность 1, а у плоскости 2, то фрактал с размерностью, к примеру, 1.4 будет «дырявой» плоскостью, как изображено у автора данного поста. Или заключения о плотности всего и вся с этим не связано?
        • 0
          Не я автор гипотезы, извините. Я только зная о её существовании, не более.
  • +6
    Я даже на знаю, как выразить свои чувства. Это одна из лучших статей на хабре! Особенно последняя картинка: даже не верится, что этот узор — правда.
    Спасибо!
    • 0
      На Инь-Ян похоже, обратили внимание?
      • 0
        Да, конечно.
  • 0
    Какая прелесть! Особенно замкнутые области.
  • +1
    Волшебными красками математики по холсту воображения…
  • +5
    А вы какие-либо математические труды по теме изучали? Я к сожалению сходу не вспомню всех деталей, но алгебраические и, как в вашем случае, геометрические фракталы достаточно хорошо описаны и скорее всего вы описали обычный фрактал какой-нибудь дробной размерности, т.к. очень уж все это похоже на снежки Кохха, драконы не помню кого и т.д.

    Может быть здесь найдется кто-нибудь не с такими скудно-остаточными знаниями по фрактальной геометрии и математики как у меня и более полно прольет свет?

  • +1
    Определённо — торт!
  • 0
    Фракталы — очень интересная и красивая тема. И насколько я знаю, до сих пор еще основательно не изучена. В институте был у нас такой предмет, но поверхностно. Нравился мне. Фрактальные антенны и средства фильтрации сигналов на их основе изучали. Препод еще рассказывал, что фрактальная тематика в оборонке изучается активно, в основном как средство маскировки, потому как все природное имеет в основном фрактальную структуру, и все техногеное, созданное человеком, резко отличается на этом фоне. Еще в 3d моделировании и сжатии изображений, слышал используются фрактальные структуры.
  • +7
    Очень похоже на расшитые славянские одежды одежды. Спасибо за статью, очень интересно!

    image
    • 0
      это больше на свастику похоже ))) а за статью автору, безусловно, спасибо :)
      • 0
        это и есть свастика :)
  • 0
    Красота! В детстве, помнится, я рисовал что-то подобное на листе в клеточку, но там линия была сплошная и было совсем не так интересно, как здесь!
  • 0
    Думаю, что автору и всем интересующимся вопросами вычислений, навеянных природными явлениями, будет интересно познакомиться с книжкой Стивена Вольфрама (это который Mathematica) A New Kind Of Scince
    • 0
      А там есть про такие типы фракталов?
  • 0
    Интересно, как это можно обыграть в demo.
  • 0
    Статья, конечно отличная, но в следующий раз будьте так добры, выбирайте не такие контрастные цвета =)
  • +2
    Очень интересно.

    Похоже, эти узоры можно построить, как пересечение двух семейств взаимно перпендикулярных прямых.
    Например, на первом рисунке. Смотрим на линии, отходящие от верхней стороны. Между всеми линиями одна клетка пропускается Первое семейство: линия начинается со штриха, потом два раза с промежутка, потом опять 2 раза с штриха и так далее. Второе семейство зеркальное.
    Это можно изобразить в виде двоичного числа 1100. А ещё лучше в виде двоичной периодической дроби 0.(1100). Там поле 17Х13. Если разделить в двоичном виде 13 на 17, получится эта дробь?

    Вообще, какой простор для анализа.
    Попробовать строить узоры на аналогичном принципе на треугольных и других решётках. На других поверхностях, на цилиндре, например. Трёхмерный аналог.
    • 0
      Вот, построил в Инкскейпе по такому принципу:

      image
  • 0
    Патентуйте орнамент для простыней и наволочек!
    • 0
      Патент для алгоритма? Плохая идея.
  • 0
    Эксперименты с модульной арифметикой:
    картинки




    JavaScript
  • +1
    привлекает заголовок "Фракталы в простых числах", но в статье речь идёт о взаимно простых числах, что не одно и то же
  • –1
    Автор зазвездился маленько: http://fishki.net/1207755-fraktal-gerasimova.html
    «Фрактал Герасимова», ишь ты.
  • 0
    Кстати, насчет интерференционного рисунка волн на воде: в проекте sonicwater под сосуд с водой ставили динамик и снимали на видео поверхность воды под воздействием разных звуков. Тоже интересные узоры получаются.
  • 0
    В школе любил чертить в тетрадях этой техникой подобные узоры. Но вы — молодец, что развили эту тему до такой статьи.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.