Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
3D фрактал, сделанный с помощью Fragmentarium

Программное обеспечение для создания фракталов - это любой тип графического программного обеспечения, которое генерирует изображения фракталов . Есть много доступных программ генерации фракталов, как бесплатных, так и коммерческих. Доступны мобильные приложения, в которых можно поиграть или поработать с фракталами. Некоторые программисты создают для себя фрактальное программное обеспечение из-за новизны и сложности понимания связанной с ними математики. Генерация фракталов привела к очень большим проблемам чистой математики . [1]

Программное обеспечение для генерации фракталов создает математическую красоту посредством визуализации . Современным компьютерам могут потребоваться секунды или минуты для создания одного фрактального изображения с высоким разрешением . Изображения генерируются как для симуляции (моделирования), так и случайных фракталов для искусства . Генерация фракталов, используемая для моделирования, является частью реализма в компьютерной графике. [2] Программное обеспечение для генерации фракталов можно использовать для имитации природных ландшафтов с помощью фрактальных ландшафтов и программ генерации пейзажей . Фрактальные изображения могут быть использованы для внесения нерегулярности в стерильную компьютерную среду.[3]

Простые кривые Коха демонстрируют строгое самоподобие

Фракталы генерируются в программах для визуализации музыки , заставках и генераторах обоев . Это программное обеспечение предоставляет пользователю более ограниченный набор настроек и функций, иногда полагаясь на ряд предварительно запрограммированных переменных. Поскольку сложные изображения могут быть сгенерированы из простых формул, фракталы часто используются в демосцене . [4] Генерация фракталов, таких как множество Мандельброта, отнимает много времени и требует большого количества вычислений, поэтому его часто используют в устройствах для тестирования . [5]

История [ править ]

Сюжет, похожий на самый первый рендер Бенуа Мандельброта.
Редактор палитр в Fractint

Генерация фракталов путем вычислений без помощи компьютера была предпринята немецким математиком Георгом Кантором в 1883 году для создания множества Кантора . [6] В последующие годы математики постулировали существование множества фракталов. Некоторые из них были задуманы до того, как фракталы были названы в 1975 году, например, дерево Пифагора голландским учителем математики Альбертом Э. Босманом в 1942 году.

Развитие первого фрактала генерирующего программного обеспечения возникла в Benoit Мандельброта стремлении «s в виде обобщенной функции для класса из форм , известных как наборы Julia . В 1979 году Мандельброт обнаружил, что одно изображение комплексной плоскости может быть создано путем итерации . Он и программисты, работающие в IBM, создали первые рудиментарные фрактальные распечатки. [7] Это был первый случай генерации фракталов по нелинейным законам творения или «фракталу времени ухода». [8] [9] Лорен Карпентер создал двухминутный цветной фильм под названием Vol Libre для презентации наSIGGRAPH в 1980. [10] октября 1983 выпуск Acorn пользователя журнала носил BBC BASIC список для создания фрактальных форм Сьюзен Степни, ныне профессор компьютерных наук в Университете Йорка . [11] [12] Она продолжила это в мартовском 1984 Acorn User, написав «Снежинки и другие фрактальные монстры». [13] Фракталы были визуализированы в компьютерных играх еще в 1984 году с выходом Rescue on Fractalus! . С начала 1980-х до примерно 1995 были сформулированы сотни различных типов фракталов. [14]

Популярность генерации фрактальных изображений росла по мере распространения компьютеров с математическим сопроцессором или блоком операций с плавающей запятой в центральном процессоре на протяжении 1990-х годов. В настоящее время рендеринг изображений стандарта VGA с высоким разрешением может занять много часов. [ необходима цитата ] Алгоритмы генерации фракталов демонстрируют исключительную распараллеливание . Программное обеспечение для генерации фракталов было переписано для использования многопоточной обработки . Впоследствии использование графических процессоров в компьютерах значительно увеличило скорость рендеринга и позволило вносить изменения в реальном времени.параметрам, которые ранее были невозможны из-за задержки рендеринга. [15] Генерация трехмерных фракталов появилась примерно в 2009 году. Ранний список программ для генерации фракталов был составлен для книги Джона Бриггса «Фракталы: закономерности хаоса», опубликованной в 1992 году. [16] Среди ведущих авторов в этой области - Дитмар Саупе , Хайнц. -Отто Пайтген и Клиффорд А. Пиковер .

Методы [ править ]

Различные деревья, визуализируемые с помощью L-системы

Есть два основных метода генерации двумерных фракталов. Один из них - применить итерационный процесс к простым уравнениям путем генеративной рекурсии . [6] Динамические системы производят серию ценностей. В программном обеспечении фракталов значения для набора точек на комплексной плоскости вычисляются и затем отображаются в виде пикселей . Эта компьютерная генерация фрактальных объектов - бесконечный процесс. Теоретически изображения можно рассчитывать бесконечно, но на практике они приближены к определенному уровню детализации . [17] Мандельброт использовал квадратичные формулы, описанные французским математиком Гастоном Жюлиа . [14] Максимальныйфрактальная размерность, которую можно получить, варьируется в зависимости от типа и иногда ограничивается в зависимости от применяемого метода. Существует множество способов окрашивания. Одним из первых был алгоритм времени побега. [14] Цветовые полосы могут появляться на изображениях в зависимости от используемого метода окраски, а также от плотности градиента цвета.

Некоторые программы генерируют геометрические самоподобные или детерминированные фракталы, такие как кривая Коха . Эти программы используют инициатор, за которым следует генератор, повторяющийся в шаблоне . Эти простые фракталы происходят от техники, впервые предложенной Кохом в 1904 году. [18]

Другой основной метод - это система итерированных функций, состоящая из ряда аффинных преобразований . [19] В первом методе каждый пиксель фрактального изображения оценивается в соответствии с функцией, а затем окрашивается, прежде чем тот же процесс применяется к следующему пикселю. Первый метод представляет собой классический стохастический подход, а второй реализует линейную фрактальную модель. [3] Использование рекурсии позволило программистам создавать сложные изображения с помощью простого направления. [20]

Трехмерные фракталы генерируются различными способами, в том числе с помощью алгебры кватернионов . [21] Фракталы возникают из моделирования гидродинамики как турбулентность, когда контурная адвекция используется для изучения хаотического перемешивания . [ необходима цитата ] Метод Buddhabrot был представлен в 1993 году. Программы могут использовать фрактальные карты высот для создания ландшафта. Фракталы были созданы на компьютерах с использованием следующих методов: губка Менгера , гиперкомплексное многообразие , броуновское дерево , броуновское движение , декомпозиция., L-система , фрактал ляпуновских , Ньютон фрактал , Биоморф и странные аттракторы .

Особенности [ править ]

Анимация создается в Chaotica
Фрактал, созданный с помощью GIMP
Моделирование ландшафта с помощью нескольких программ

В программные пакеты для генерации фракталов включено множество различных функций. Следовательно, возможно соответствующее разнообразие в создаваемых изображениях. Большинство из них имеют некоторую форму выбора алгоритма , интерактивное масштабирование изображения и возможность сохранять файлы в формате JPEG , TIFF или PNG , а также возможность сохранять файлы параметров, позволяя пользователю легко вернуться к ранее созданным изображениям для последующего использования. модификация или исследование. Пользователи одной программы могут обмениваться формулами, параметрами, переменными и алгоритмами раскраски для фрактальных изображений. Не существует общепринятого стандартного формата файлов фракталов .

Одной из особенностей большинства фрактальных программ времени ухода или фракталов на алгебраической основе является установка максимальной итерации. Если изображение увеличено, необходимо увеличить количество итераций, чтобы не потерять мелкие детали . Ограничение максимального количества итераций важно при низкой вычислительной мощности устройства. Варианты окраски часто позволяют рандомизировать цвета . Варианты плотности цвета являются общими, потому что некоторые градиенты выводят очень разные величины, что приводит к сильным повторяющимся полосам или большим областям одного цвета. Благодаря удобной возможности добавления эффектов постобработки, наложения слоев и альфа-композитингабыли включены функции, имеющиеся в другом графическом программном обеспечении. Могут быть включены как 2D-, так и 3D-эффекты рендеринга, такие как плазменный эффект и освещение . Многие пакеты также позволяют пользователю вводить свою собственную формулу, что позволяет лучше контролировать фракталы, а также выбирать цветопередачу, а также использовать фильтры и другие методы обработки изображений. Некоторые программные пакеты фракталов позволяют создавать фильмы из последовательности фрактальных изображений. Другие отображения времени визуализации и позволяют некоторую форму цвета велоспорта и цвета палитры инструментов создания.

Стандартное графическое программное обеспечение (такое как GIMP ) содержит фильтры или плагины, которые можно использовать для генерации фракталов. Блендер содержит фрактальный (или случайный) модификатор. Многие автономные программы для генерации фракталов можно использовать вместе с другими графическими программами (такими как Photoshop ) для создания более сложных изображений. POV-Ray - это программа трассировки лучей, которая генерирует изображения из текстового описания сцены, которое может генерировать фракталы. Можно использовать скрипты в 3ds Max и Autodesk Maya . Ряд веб-интерфейсов для генерации фракталов находится в свободном доступе, включая Turtle Graphics Renderer. [22]Fractal Lab может генерировать как двумерные, так и трехмерные фракталы и доступна через Интернет с помощью WebGL . [23] JWildfire - это генератор фрактального пламени на основе Java с открытым исходным кодом . [24] Mandelbrot Fractal - это исследователь фракталов, написанный на JavaScript . [25] Fractal Grower - это программное обеспечение, написанное на Java для генерации фракталов замещения Линденмайера (L-систем). [26]

Программы [ править ]

Анимация фрактального увеличения на множестве Джулии

Из-за эффекта бабочки создание фракталов может быть трудным для освоения. Небольшое изменение одной переменной может иметь непредсказуемый эффект. Некоторое программное обеспечение представляет собой сложную кривую обучения для пользователя, и понимание теории хаоса является полезным. Это включает в себя характеристики фрактальной размерности , рекурсии и самоподобия, присущие всем фракталам.

Есть много доступных программ генерации фракталов, как бесплатных, так и коммерческих. Известные программы генерации фракталов включают:

  • Apophysis - программное обеспечение IFS с открытым исходным кодом для систем на базе Microsoft Windows
  • Bryce - кроссплатформенное коммерческое программное обеспечение, частично разработанное Кеном Масгрейвом
  • Chaotica - коммерческое программное обеспечение IFS для Windows, Linux и Mac OS . Бесплатно для некоммерческого использования.
  • Electric Sheep - распространяемая программа-заставка с открытым исходным кодом, разработанная Скоттом Дрейвсом .
  • Fractint - бесплатная программа MS-DOS, первоначально выпущенная в 1988 году с доступным исходным кодом , позже перенесенная на Linux и Windows (как WinFract)
  • Fyre - это кроссплатформенный инструмент с открытым исходным кодом для создания изображений на основе гистограмм повторяющихся хаотических функций.
  • Kalles Fraktaler - фрактальный зумер на базе Windows
  • Milkdrop - плагин для визуализации музыки, распространяемый с Winamp
  • MojoWorld Generator - несуществующий ландшафтный генератор для Windows
  • openPlaG - создает фракталы путем построения простых функций
  • Picogen - кроссплатформенный генератор ландшафта с открытым исходным кодом
  • Sterling - бесплатное ПО для Windows
  • Terragen - генератор фрактального ландшафта, который может отображать анимацию для Windows и Mac OS X
  • Ultra Fractal - собственный генератор фракталов для Windows и Mac OS X
  • Wolfram Mathematica - может использоваться специально для создания фрактальных изображений
  • XaoS - кроссплатформенная программа для фрактального масштабирования с открытым исходным кодом

Большинство из вышеперечисленных программ создают двумерные фракталы, а некоторые создают трехмерные фрактальные объекты, такие как кватернионы , мандель-луковицы и мандельбоксы . Mandelbulber - это экспериментальная кроссплатформенная программа с открытым исходным кодом, которая генерирует трехмерные фрактальные изображения. [27] Mandlebulber отлично умеет создавать 3D- анимации . [28] Mandelbulb 3D - это бесплатное программное обеспечение для создания 3D-изображений с множеством эффектов, которые можно найти в средах 3D-рендеринга. [29] Incendia - это программа трехмерных фракталов, которая использует системы итерационных функций (IFS) для генерации фракталов. [30] Visions of Chaos, Boxplorer и Fragmentarium также визуализируют 3D-изображения.

Доступен открытый исходный код GnoFract 4D. [31] ChaosPro - бесплатная программа для создания фракталов. [32] Fraqtive - кроссплатформенный фрактальный генератор с открытым исходным кодом. [33] MandelX - это бесплатная программа для рендеринга фрактальных изображений в Windows. [34] WinCIG, Chaoscope, Tierazon, Fractal Forge и Malsys также генерируют фрактальные изображения.

См. Также [ править ]

  • Логарифмическая спираль
  • Программное искусство
  • Игра хаос

Ссылки [ править ]

  1. ^ Кадр, Майкл; Амелия Урри (2016). Фрактальные миры: выращенные, построенные и воображаемые . Издательство Йельского университета. п. 129. ISBN 978-0300197877. Дата обращения 5 мая 2017 .
  2. ^ F. v., Haeseler v .; Х. -О. Пайтген; Г. Скордев (2012). «Линейные клеточные автоматы, замены, иерархические системы с повторяющимися функциями и аттракторы» . In Encarnacao, Jose L .; Пайтген, Хайнц-Отто; Сакас, Георгиос; Энглерт, Габриэле (ред.). Фрактальная геометрия и компьютерная графика . Springer Science & Business Media. п. 3. ISBN 9783642956782. Дата обращения 7 мая 2017 .
  3. ^ a b Nikiel1, Slawomir S (октябрь 1998 г.). «Полноцветные изображения и повторяющиеся функциональные системы». Компьютеры и графика . 22 (5): 635–640. DOI : 10.1016 / S0097-8493 (98) 00072-7 .
  4. ^ Janus Kopfstein (14 мая 2014). «Эта 4-килобайтная демонстрация вжимает вселенную фракталов в размер документа Word» . Грань . Vox Media . Проверено 5 марта 2017 года .
  5. Малышкин, Виктор (2013). Параллельные вычислительные технологии: 12-я Международная конференция, PaCT 2013, Санкт-Петербург, Россия, 30 сентября - 4 октября 2013 г., Труды . Springer. п. 267. ISBN. 9783642399589. Дата обращения 7 мая 2017 .
  6. ^ а б Дэниел Шиффман. «Глава 8. Фракталы» . Природа кода . Проверено 5 марта 2017 года .
  7. ^ Глейк, Джеймс (1987). Хаос: создание новой науки . Кардинал. С. 222–223. ISBN 978-0143113454.
  8. ^ Том Ван Катсем. «Сессия 5 - Фракталы времени побега» . Проверено 7 марта 2017 года .
  9. ^ Росс, Дитер (2011). Изучение и преподавание математики с помощью моделирования: плюс 2000 примеров из физики . Вальтер де Грюйтер. п. 56. ISBN 9783110250077. Дата обращения 7 мая 2017 .
  10. ^ "Vol Libre: Первый фрактальный фильм компьютерной графики" . История информации . Джереми Норман и Ко . Проверено 5 марта 2017 года .
  11. ^ "Сьюзан Степни, профессор компьютерных наук Йоркского университета, Великобритания" . www-users.cs.york.ac.uk . Йоркский университет . Проверено 29 декабря 2018 .
  12. Перейти ↑ Stepney, Susan (октябрь 1983 г.). «Невероятные фракталы, стр. 37, 39, 41 и 43» . www-users.cs.york.ac.uk . AcornUser . Проверено 29 декабря 2018 .
  13. Перейти ↑ Stepney, Susan (март 1984). «Снежинки и прочие монстры, стр 25, 28, 29» . www-users.cs.york.ac.uk . AcornUser . Проверено 29 декабря 2018 .
  14. ^ a b c Франсиско Гарсия; Анхель Фернандес; Хавьер Барралло; Луис Мартин. «Раскраска динамических систем в комплексной плоскости». Университет Страны Басков. CiteSeerX 10.1.1.393.9370 .  Цитировать журнал требует |journal=( помощь )
  15. ^ WD Mayfield; Джей Си Эйлан; TJ Hu; MC Paulsen; Б.М. Вятт (2016). «Генерация фрактального искусства с использованием графических процессоров». arXiv : 1611.03079 [ cs.GR ].
  16. ^ Бриггс, Джон (1992). Фракталы: модели хаоса . Саймон и Шустер. п. 182 . ISBN 978-0671742171.
  17. ^ Чен, JN; Н. М. Тельманн; ZS Tsang; Д. Тальманн (1994). Основы компьютерной графики . World Scientific. п. 100. ISBN 9789814603744. Дата обращения 5 мая 2017 .
  18. ^ Расс, Джон С. (2013). Фрактальные поверхности . Springer Science & Business Media. п. 150. ISBN 978-1489925787. Дата обращения 5 мая 2017 .
  19. ^ Чэнь ', Ян Цю; Гоань Би (май – июнь 1997 г.). «3-D фракталы IFS как графическая модель в реальном времени». Компьютеры и графика . 21 (3): 367–370. DOI : 10.1016 / S0097-8493 (97) 00014-9 .
  20. ^ Пайтген, Хайнц-Отто; Питер Рихтер (1986). Красота фракталов . Springer-Verlag. п. 2. ISBN 978-0883859711. Дата обращения 7 мая 2017 .
  21. Перейти ↑ Leys, Jos (июнь 2005 г.). "Фракталы инверсии сферы". Компьютеры и графика . 29 (3): 463–466. DOI : 10.1016 / j.cag.2005.03.011 .
  22. ^ "Черепаха Графика Renderer" . Дата обращения 2 марта 2017 .
  23. ^ «Фрактальная лаборатория» . subblue.com . Проверено 5 марта 2017 года .
  24. ^ "Добро пожаловать на официальный сайт программного обеспечения JWildfire!" . Проверено 7 марта 2017 года .
  25. Майк Уильямс (17 июля 2016 г.). «Фрактал Мандельброта» . PCAdvisor . IDG UK . Проверено 5 марта 2017 года .
  26. ^ "Фрактальный производитель" . Университет Нью-Мексико . Проверено 6 марта 2017 года .
  27. Джои Бернард (7 января 2014 г.). «Убирая фракталы со страницы» . Linux Journal . Дата обращения 5 мая 2017 .
  28. ^ Майк Уильямс. «Создавайте впечатляющие трехмерные фракталы с помощью Mandelbulber» . BetaNews . Проверено 5 марта 2017 года .
  29. ^ «Mandelbulb 3D (MB3D) Fractal Rendering Software» . SphereLab. 17 января 2014 . Проверено 7 марта 2017 года .
  30. ^ "Incendia" . Рамиро Перес Клэр Нэш . Проверено 7 марта 2017 года .
  31. ^ "Гнофракт 4D" . Дата обращения 2 марта 2017 .
  32. ^ "ChaosPro Release 4.0" . Дата обращения 2 марта 2017 .
  33. ^ "Fraqtive" . Дата обращения 2 марта 2017 .
  34. ^ «Бесплатное программное обеспечение от Falcosoft» . Falcosoft. 27 января 2017 . Проверено 5 марта 2017 года .

Внешние ссылки [ править ]

  • Программное обеспечение для генерации фракталов в Curlie
  • Введение в фракталы Пола Бурка, май 1991 г.