Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Kranover R M - Fraktaly i khaos v din sist

.pdf
Скачиваний:
111
Добавлен:
17.05.2015
Размер:
11.33 Mб
Скачать

4-2 Реализация СИФ • 111

Таблица 4.1. Коэффициенты СИФ для окна [0,1] х [0,1]. Для перехода к экранным координатам используется алгоритм 3.4.2 (WOR2SCR).

Кристалл (рис. 4.7; см.также [37])

а

Ь

с

d

e

/

0,2550

0,0000

0,0000

0,2550

0,3726

o,6714

0,2550

0,0000

0,0000

0,2550

0,1146

o,2232

0,2550

0,0000

0,0000

0,2550

0,6306

o,2232

0,3700

-0,6420

0,6420

0,3700

0,6356

-o,0061

Папоротник (рис. 4.9)

 

 

 

 

а

Ъ

с

d

e

/

0,7000

0,0000

0,0000

0,7000

0,1496

o,2962

0,1000

-0,4330

0,1732

0,2500

0,4478

o,0014

0,1000

0,4330

-0,1732

0,2500

0,4445

o,1559

0,0000

0,0000

0,0000

0,3000

0,4987

o,0070

Ковер А (рис. 4.6)

 

 

 

 

а

ь

с

d

e

/

0,5000

0,0000

0,0000

-0,5000

0,5000

o,5000

0,0000

-0,5000

-0,5000

0,0000

0,5000

o,5000

-0,5000

0,0000

0,0000

-0,5000

0,5000

1,0000

Ковер В (рис. 4.8)

 

 

 

 

а

ъ

с

d

e

 

0,5000

0,0000

0,0000

-0,5000

0,0000

1,0000

0,0000

0,5000

0,5000

0,0000

0,0000

o,0000

0,5000

0,0000

0,0000

0,5000

0, 5000

o,0000

Лист (рис. 4.4)

 

 

 

 

а

ъ

с

d

e

/

0,4000

-0,3733

0,0600

0,6000

0,3533

o,0000

-0,8000

-0,1867

0,1371

0,8000

1,1000

o,1000

Ковер Сериинского (рис. 2.4)

 

 

 

а

b

с

d

e

/

0,5000

0,0000

0,0000

0,5000

0,0000

o,0000

0,5000

0,0000

0,0000

0,5000

0,5000

o,0000

0,5000

0,0000

0,0000

0,5000

0,2500

o,4330

112 Глава 4 I Системы итерированных функций

Дерево (рис. 4.5; см. также [37])

а

Ъ

с

d

е

/

0,1950

-0,4880

0,3440

0,4430

о,4431

0,2452

0,4620

0,4140

-0,2520

0,3610

о, 2511

0,5692

-0,0580

-0,0700

0,4530

-0,1110

о, 5976

0,0969

-0,0350

0,0700

-0,4690

0,0220

о,4884

0,5069

-0,6370

0,0000

0,0000

0,5010

о,8562

0,2513

4.3. СИФ со сгущением

Будем по-прежнему понимать под К, пространство всех непустых компактных подмножеств Rn , оснащенное метрикой Хаусдорфа. Сгущающим преобразованием, или просто сгущением, называет-

ся отображение Тс '• К. —• 1С:

 

ТС(Е) = С,

Е£!С,

где С — произвольное подмножество /С,которое мы будем называть множеством сгущения. Другими словами, Тс задает тривиальное отображение на К..

Сгущение Тс на К есть не что иное, как сжатие с нулевым коэффициентом, так как для любых А, В € К. имеет место:

Н(ТС(А),ТС(В)) = Н(С,С) = 0.

Пусть в нашем распоряжении имеется СИФ, заданная сжимающими отображениями Т^,г = 1,...,го. Добавим к ним сгущение Тс- Полученную систему итерированных функций будем называть

системой итерированных функций со сгущением (ССИФ). Очевидно, основная теорема п. 4.1 остается в силе для ССИФ, то есть существует и притом единственное множество Е К. такое, что вне зависимости от выбора начального множества EQ € К,выполняется:

Е = lim

Т( п )(£0 ),

п—»оо

 

где

 

Т0(А) = ТС(А) UП(А)

U• • • UTm(A), A К.

Тем самым мы уже почти доказали основную теорему о ССИФ.

4-3 СИФ со сгущением • 113

Теорема 4.3.3. Пусть ССИФ задана сжимающими отображениями Тс, Т\,Тг, ...,Тт, где Тс сгущение:

ТС{А) = С, АеК.

 

Пусть

 

T(A) = T1(A)U---UTm(A),

AeIC,

а также

 

Т0(А) = Tc(A)UT1(A)L)---UTm(A), = ТС(А) + Т(А).

Положим

С„ = т£,п ) (С), п = 0,1,2,...

Тогда

сп =си т(С) и• • • и т(п)(С)

и

Е = lim Cn

п—>оо

аттрактор ССИФ.

Доказательство. Для доказательства первого утверждения мы воспользуемся следующим соотношением (см. упр. 5 в конце этого параграфа):

T(AUB) = T(A)\JT(B).

(4.3)

Имеем:

Со = Т0 ( 0 ) (С) =С

d= Т0 ( 1 ) (С) =

=сит(сит(С))

=сит(С)ит<2)(С)

Второе утверждение, Е = Ишп-юо Сп, следует изтеоремы 4.1.2, в шторой надо положить EQ = С.

114 • Глава 4 / Системы итерированных функций

Пример ССИФ представлен на рис. 4.10. Здесь множество сгущения С — фрактал, а именно фигура «сорняка», полученная с помощью L-системы. Данная ССИФ задается единственным сжимающим отображением, помимо тривиального:

Ti(z) = (0,7960 + 0,0799г> + (-0,2500 -I-0, 7500г).

Для вывода на экран можно использовать программу ТЕРТЛГРАФИКА, предусмотрев возможность изменения масштаба и положения изображения каждый раз, когда встречается кодовое слово для фигуры «сорняк». Само кодовое слово есть результат работы алгоритма 2.2.1 (L-СИСТЕМЫ) после двух итераций, инициализированного следующим образом:

axiom = F

newf = F[+F]F[-F]F в = 7г/7.

То есть кодовое слово задается выражением: F[+F]F[-F]F[+F[+F]F[-F]F]F[+F]F[-F]F[-F[+F]F[-F]F]F[+F]F[-F]F.

Продолжая в том же ключе, мы можем пойти дальше и использовать все множество ССИФ, показанное на рис. 4.10, в качестве множества сгущения для новой ССИФ. Добавим к тривиальному отображению сжимающее отображение, которое все уменьшает и сдвигает вправо и вверх, например такое:

T2(z) = (0,7960 - 0,0799г> + (-0,2500 + 0,7500г).

Результат показан на рис. 4.11. Полученное изображение можно рассматривать как дважды итерированную ССИФ, подобно двойному интегралу в математическом анализе.

Эта дважды итерированная ССИФ, очевидно, не эквивалентна ССИФ с тремя сжимающими отображениями Тс, Т\ и Гг. Результат одновременного применения всех трех отображений гораздо сложнее, как видно из рис. 4.12. Усложнение здесь происходит по той причине, что появляются всевозможные смешанные произведения Т(Т^ и Т£Т(, а так как отображения Т\ и Тг не коммутируют (то есть Т\Т2 ф Т2Т1), то смешанные члены разного порядка дают разный

пр^льтат.

4-3 СИФ со сгущением • 115

С помощью алгоритма ССИФ можно строить огромное количество разнообразнейших фрактальных конфигураций. Фигура «дерево» представляет собой удачный с точки зрения эстетического восприятия пример такого построения. Здесь множество сгущения С (рис. 4.13) играет роль ствола дерева с двумя главными ветвями.

Мы выбрали аффинные преобразования Т\, Гг, Тз и Т± таким образом, чтобы они уменьшали (и искажали) множество С, поворачивали его, а затем сдвигали получившийся элемент к концу одной из ветвей. На каждой итерации все ветви выпускают новые ветки, очень похожие на оригинал С, за исключением размера и ориентации (рис. 4.14).

Для компьютерной реализации описанного алгоритма применяется рекурсия. Главная программа ДЕРЕВО (которую мы не приводим) инициализирует графический режим, определяет ивыводит на экран множество сгущения С ивызывает рекурсивную подпрограмму ВЕТВЬ (алгоритм 4.3.3). Вэтой подпрограмме на каждом уровне рекурсии вычисляются новые вершины, которые соединяются отрезками с вершинами предыдущего уровня.

Множество С хранится в виде массива вершин:

 

О

V =

0,5г

0,5Г + l,25ei 7 r /4

 

 

0,6г + 1,50ei37r/4

Добавление ветвей осуществляют следующие четыре аффинных преобразования (рис. 4.13):

Ti(V,z) =

(-0,l-i)s(z-V(l)) + V(3)

ветвь вправо

T2(V, z)

=

(1 + 0,1г)ф - V(l)) +V(3)

ветвь вверх

Г3(V, z)

=

(1 - 0, li)s(z - V(l)) + У(4)

ветвь вниз

T4(V, z)

=

(-0,1 + i)s{z - V(l)) +F(4)

ветвь влево

Вследующем алгоритме команда «построить V» (или «построить

ит. п.) означает такую последовательность действий:

соединить отрезком V(l) и V(2); соединить отрезком V{2) и V(3); соединить отрезком V{2) и

116 • Глава 4 I Системы итерированных функций

fj

\

\

Рис. 4.10. ССИФ

Рис. 4.11. Итерирование предыдущей фигуры с помощью

4-3 СИФ со сгущением • 117

Рис. 4.12. Та же ССИФ, с использованием Тс, T2

(а) множество сгущения С (б) первая итерация

Рис. 4.13. Множество сгущения С и первая итерация

118 • Глава 4 I Системы итерированных функций

Рис. 4.14. Дерево, построенное с помощьюССИФ

Алгоритм 4.3.3. (ВЕТВЬ)

Назначение: рекурсивная часть кода ССИФ для фигуры «дерево»

Вход:

V (4 х 1 множество вершин в комплексной форме) s (коэффициент сжатия)

level (число итераций, порядка тысячи)

Выход:

изображение фигуры «дерево».

Шаги:

while level > О ^i=Ti(V> e ) построить V\

4-4 СИФ сосгущением • 119

V2=T2(V,s)

построить V2

V3=T3(V,s)

построить Vz

V4=T4(V,s)

построить V4

level = level — 1

ветвь (Vi, s, level)

ветвь (V2, s, level) ветвь (Vz,s,level) ветвь (V4, s, level)

end while

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

Упражнения 4.3.

1.Обозначим через С классическое множество Кантора, а через Тс

— тривиальное отображение Тс(А) = С. Пусть 2\(ж) = 1/2х + 1. Описать аттрактор ССИФ с отображениями Тс, Ti.

2.Построить ССИФ, порождающую бесконечную спираль из окружностей (рис. 4.15).

3.Построить такую ССИФ с множеством сгущения в виде буквы V (рис. 4.16), чтобы у нее кончик каждой ветви расщеплялся надвое.

4.Описать аттрактор отображения Т следующих ССИФ:

а) Т(А) = Ti(A), рис. 4.10; б) Т(А) = Т2(А), рис.4.11;

в) Т(А) = Т1(А)1>Т2(А), рис. 4.12;

г) Т(А) = Г!(Л) UT2(A) 3(А) UТА(А), рис. 4.12. 5. Доказать, что Т(А UВ) = Т(А) U Т(В).

120 • Глава 4 I Системы итерированных функций

ОО ОО О

О

О

о

 

о

о о

°ОО°О

Рис. 4.15. Спираль для упр. 2

Рис. 4.16. V-множество для упр. 3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]