Исследовательская работа по информатике Фракталы


Министерство образования Республики Башкортостан
отдел образования МР Гафурийский район
муниципальное общеобразовательное бюджетное учреждение
средняя общеобразовательная школа с. Белое Озеро
Исследовательская работа
«Фракталы»
Выполнила: Кириллова Т.
ученица 8 классаРуководитель: Максимова С.Н. учитель информатики
с. Белое Озеро
2015
СОДЕРЖАНИЕ
1. Введение
2. Виды компьютерной графики
3. Классификация фракталов
4. Моделирование фракталов
5. Применение фракталов
6. Заключение
Список литературы
Гипотеза: если изучить закономерность построения фрактала, то можно смоделировать фракталы в прикладных программах.
Методы исследования: сравнительный анализ, синтез, моделирование.
Цель: исследовать фракталы и составить программы моделирования
фракталов.
Задачи: узнать, что такое фракталы;
изучить историю возникновения и развития фрактальной геометрии;
ознакомиться с биографией создателя фракталов - Бенуа Мандельброта;
смоделировать фракталы на языке программирования PascalАВС, в графическом редакторе GIMP.
Актуальность: Интерес к проблеме обусловлен интересом к компьютерной графики
Результат исследования: Разработка программ построения фракталов
1.Введение
Первый раз, услышав о фракталах, задаёшься вопросом, что это такое?
Это понятие завораживает своей красотой и таинственностью, проявляясь в самых неожиданных областях: метеорологии, философии, географии, биологии, механике и даже истории
Практически невозможно не увидеть фрактал в природе, ведь почти каждый объект (облака, горы, береговая линия и т.д.) имеют фрактальное строение.
По сути, фракталы открывают нам глаза и позволяют посмотреть на графику с другой стороны. Казалось бы, производятся обычные расчёты с обычными «сухими» цифрами, но это даёт нам по-своему уникальные результаты, позволяющие почувствовать себя творцом природы. Фракталы дают понять, что это наука о прекрасном.
Своей проектной работой я хотела узнать о довольном новом понятии «фрактал». Что это такое, какие существуют виды, где распространяются. Я очень надеюсь, что фракталы заинтересовали вас. Ведь, как оказалось, фракталы довольно интересны и они есть почти на каждом шагу.
2. Понятие компьютерной графики не ограничивается такими ее видами как растровая и векторная.
Растровая графика. Растровое изображение хранится с помощью точек различного цвета (пикселей). Каждый пиксель имеет определенное положение и цвет. Хранение каждого пикселя требует определенного количества битов информации, которое зависит от количества цветов в изображении
Пиксель - минимальный участок изображения, цвет которого можно задать независимым образом. Качество растрового изображения зависит от размера изображения (количества пикселей по горизонтали и вертикали) и количества цветов, которые можно задать для каждого пикселя.
Векторная графика. Векторные графические изображения являются оптимальным средством хранения высокоточных графических объектов (чертежи, схемы и пр.), для которых имеет значение сохранение четких и ясных контуров. С векторной графикой вы сталкиваетесь, когда работаете с системами компьютерного черчения и автоматизированного проектирования (САПР), программами обработки трехмерной графики и др.
Векторные изображения формируются из объектов (точка, линия, окружность, прямоугольник), которые хранятся в памяти компьютера в виде графических примитивов и описывающих их математических формул.
В информатике рассматривается третий вид компьютерной графики – фрактальная.
Термином «фрактал» (от латинского fractus – дробленый, состоящий из фрагментов) обозначают геометрическую фигуру, обладающую свойством самоподобия, то есть составленную из нескольких частей, каждая из которых подобна всей фигуре целиком. Этот термин был предложен французским математиком Бенуа Мандельбротом в 1975 году и получил распространение с выходом в 1977 году его книги «Фрактальная геометрия природы».
В настоящее время возрастает интерес к применению методов фрактальной геометрии в различных областях науки и техники – физике, астрономии, биологии, медицине, социологии, экономике, информационных и телекоммуникационных технологиях и др. Так, в физике фракталы применяются при изучении поглощения или рассеяния излучения в пористых средах, при анализе процессов усталостного разрушения материалов, для характеристики сильно развитой турбулентности, при моделировании свойств поверхности твердых тел, для описания диэлектрического пробоя и молнии и пр. В биологии фракталы применяются, например, для моделирования процессов, происходящих во внутренних органах (процессов кровообращения, биения сердца и др.), моделирования популяций. Фракталы используются и для моделирования поведения хаотических динамических систем, таких, как поведение погоды, описан способ моделирования исторических процессов и явлений средствами фрактальной геометрии . В экономике фракталы применяют при анализе колебаний курса валют.
Широко применяются фракталы и в области компьютерной графики, например, для получения изображений природных объектов (растений, облаков, гор, береговых линий, ландшафтов, поверхности морей, карт и пр.), при создании компьютерных игр.
Фрактальная графика, как векторная, является вычисляемой. Но, в отличие от векторной графики, основное внимание уделяется не заданию изображения в виде совокупности простых геометрических фигур (прямых, многоугольников, окружностей, многогранников и пр.), а описанию алгоритма построения изображения – фрактальное изображение строится по уравнению или системе уравнений, и никакие объекты в памяти компьютера не хранятся.
3. КЛАССИФИКАЦИЯ ФРАКТАЛОВ
Существует несколько классификаций фракталов :Геометрические фракталы.
Алгебраические фракталы.
Стохастические фракталы.
Геометрические фракталы. История фракталов началась с геометрических фракталов, которые исследовались математиками в XIX веке. Фракталы этого класса самые наглядные, в них сразу видна самоподобность частей.
Фракталы этого типа строятся поэтапно. Сначала изображается основа. Затем некоторые части основы заменяются на фрагмент. На каждом следующем этапе части уже построенной фигуры, аналогичные замененным частям основы, вновь заменяются на фрагмент, взятый в подходящем масштабе. Всякий раз масштаб уменьшается. Когда изменения становятся визуально незаметными, считают, что построенная фигура хорошо приближает фрактал и дает представление о его форме. Для получения самого фрактала нужно бесконечное число этапов. Меняя основу и фрагмент, можно получить много разных геометрических фракталов.
Примерами геометрических фракталов являются: треугольник Серпинского, триадная кривая Кох, кривая Пеано, снежинка Кох, кривая дракона, губка Менгера и др.
Программа построения салфетки Серпинского
program salfetka;
uses graphABC;
procedure treug(x1,y1,x2,y2,x3,y3, n:integer);
var xa, ya, xb, yb, xc, yc:integer;
beginif n >0 then begin
{рисуем треугольник}
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x1,y1,x3,y3);
{вычисляем середины сторон}
xa:=(x1+x2) div 2; ya:=(y1+y2) div 2;
xb:=(x3+x2) div 2; yb:=(y3+y2) div 2;
xc:=(x1+x3) div 2; yc:=(y1+y3) div 2;
{рисуем три меньших треугольника}
treug(x1,y1,xa,ya,xc, yc, n-1);
treug(x2,y2,xa, ya,xb,yb, n-1);
treug(x3,y3,xb,yb,xc,yc, n-1);
end;
end;
Begin
treug(100,400,300,40,500,400,5);
End.
Программа построения фрактального круга.
Program krugi;
uses GraphABC;
varr,x,y: integer;
procedure krug(x,y,r:integer);
beginif (r div 4)>5 then
beginkrug(x-r,y,r div 2);
krug(x+r,y,r div 2);
krug(x,y-r,r div 2);
krug(x,y+r,r div 2);
end;
Arc(x,y,r,0,360);
end;
beginx:=350;y:=350;
r:=160;
krug(x,y,r);
end.
Программа построения фрактального квадрата
Program kvadrat;
uses GraphABC;
vard,x,y: integer;
procedure kvad(x1,y1,x2,y2,d:integer);
beginif (d div 3)>0 then
beginkvad(x1+d,y1-d,x2-d,y1,d div 3);
kvad(x1-d,y1+d,x1,y1+2*d,d div 3);
kvad(x2,y1+d,x2+d,y2-d,d div 3);
kvad(x1+d,y2,x2-d,y2+d,d div 3);
end;
rectangle(x1,y1,x2,y2)
end;
beginkvad(200,200,500,500,100);
end.
Вторая группа фракталов – алгебраические фракталы. Свое название они получили потому, что их строят на основе алгебраических формул.
Классический пример алгебраических фракталов – множество Мандельброта, описанное французским математиком Пьером Фату еще в 1905 году. Однако оно было построено Бенуа Мандельбротом в 1980 г.

В его основе лежит кардиоида и круг. Множество Мандельброта облеплено почками, наростами и причудливыми усами. Эти почки и наросты в свою очередь облеплены более мелкими почками и так далее.
При более сильном увеличении в окрестностях границ множества Мандельброта обнаруживаются уменьшенные копии самого множества Мандельброта.
Программа построения кардиодыprogram kardioida;
uses graphABC;
vara,n,x,y:integer;
t:real;
begint:=0;
while t<6.28 do begin
x:=round(320+80*cos(t)*cos(t)+80*cos(t) ) ;
y:=round(240+80*cos(t)*sin(t)+80*sin(t));
SetPixel(x,y,clblue);
if (x mod 47=0) then
if t>3.14 then circle(x+5,y-5,6) else circle(x+5,y+5,6);
t:=t+0.001;
SetPenColor(clblue) ;
circle(520,240,40);
circle(564,240,8);
Line(320,0,320,480);TextOut(318,0,'^');TextOut(620,245,'X');
Line(0,240,640,240);TextOut(326,5,'Y');TextOut(634,232,'>');
end;
end.
Улитка Паскаля ― плоская алгебраическая кривая 4-го порядка. Названа по имени Этьена Паскаля (отца Блеза Паскаля), впервые рассмотревшего её.
Уравнение в полярных координатах:
x:=acostcost+bcost ;
y:=acostsint+bsintЗдесь a — диаметр исходной окружности, а b — расстояние, на которое смещается точка вдоль радиус-вектора
При a>b (зеленая)
При a<b(синяя)
При a=b (в этом случае Улитка Паскаля называется кардиоидой).

program ulitkapaskalya;
uses graphABC;
varn, x, y: integer; f:real;
begint:=0;
Line(320,0,320,480);
Line(0,240,640,240);
while t<6.28 do begin
x:=round(320+60*cos(t)*cos(t)+60*cos(t) ) ;
y:=round(240+60*cos(t)*sin(t)+60*sin(t));
SetPixel(x,y,clblue);
t:=t+0.001;
circle(460,240,20);
end;
end.
Стохастические фракталы. Еще одним известным классом фракталов являются стохастические фракталы, которые получаются в том случае, если в процессе построения случайным образом менять какие-либо его параметры. При этом получаются объекты очень похожие на природные – несимметричные деревья, изрезанные береговые линии и т.д. Именно двумерные стохастические фракталы используются при моделировании рельефа местности и поверхности моря.
В качестве примера стохастического фрактала рассмотрим построение фрактального дерева.
Сначала строится ствол дерева случайной длины, от него строятся несколько ветвей также случайной длины, при этом их толщина уменьшается. Затем от каждой из веток в зависимости от их длин может строиться еще несколько веток, и цикл повторяется. На каждом шаге проверяется длина ветки: если она меньше некоторой заранее определенной величины, то вместо веток рисуется лист, и для этой ветки итерационный процесс прекращается.
Фрактальное дерево представлено на рисунке.

Создание фрактального изображения состоит в программировании, а не рисовании, поэтому фрактальную графику лучше всего изучать на примере какого-либо языка программирования. Однако с фрактальной графикой можно познакомиться, изучая возможности графического редактора Gimp.
Для создания фрактальных изображений в Gimp встроены специальные фильтры:
Фильтр – Визуализация – Исследователь фракталов,
Фильтр – Визуализация – Природа (Пламя и IFT-фрактал);
Фильтр – Карта – Фрактальный след.
5. Практическое применение фракталов.
Прежде всего, фракталы - область удивительного математического искусства, когда с помощью простейших формул и алгоритмов получаются картины необычайной красоты и сложности! В контурах построенных изображений нередко угадываются листья, деревья и цветы. Одни из наиболее мощных приложений фракталов лежат в компьютерной графике. Во-первых, это фрактальное сжатие изображений, и во-вторых построение ландшафтов, деревьев, растений и генерирование фрактальных текстур. Современная физика и механика только-только начинают изучать поведение фрактальных объектов. И, конечно же, фракталы применяются непосредственно в самой математике. Достоинства алгоритмов фрактального сжатия изображений - очень маленький размер упакованного файла и малое время восстановления картинки. Фрактально упакованные картинки можно масштабировать без появления пикселизации. Склонность фракталов походить на горы, цветы и деревья используется некоторыми графическими редакторами. Фрактальные деревья, горы и целые пейзажи задаются простыми формулами, легко программируются и не распадаются на отдельные треугольники и кубики при приближении. В механике и физике фракталы используются благодаря уникальному свойству повторять очертания многих объектов природы. Фракталы позволяют приближать деревья, горные поверхности и трещины с более высокой точностью, чем приближения наборами отрезков или многоугольников. Фрактальные модели, как и природные объекты, обладают "шероховатостью", и свойство это сохраняется при сколь угодно большом увеличении модели. Наличие на фракталах равномерной меры, позволяет применять интегрирование, теорию потенциала, использовать их вместо стандартных объектов в уже исследованных уравнениях.
В наши дни теория фракталов находит широкое применение в различных областях человеческой деятельности. Помимо фрактальной живописи фракталы используются в теории информации для сжатия графических данных (здесь в основном применяется свойство самоподобия фракталов — ведь чтобы запомнить небольшой фрагмент рисунка и преобразования, с помощью которых можно получить остальные части, требуется гораздо меньше памяти, чем для хранения всего файла). Добавляя в формулы, задающие фрактал, случайные возмущения, можно получить стохастические фракталы, которые весьма правдоподобно передают некоторые реальные объекты — элементы рельефа, поверхность водоемов, некоторые растения, что с успехом применяется в физике, географии и компьютерной графике для достижения большего сходства моделируемых предметов с настоящими. 
В радиоэлектронике в последнее десятилетие начали выпускать антенны, имеющие фрактальную форму. Занимая мало места, они обеспечивают вполне качественный прием сигнала. А экономисты используют фракталы для описания кривых колебания курсов валют (это свойство было открыто Мандельбротом более 30 лет назад).
Заключение.
Мои работы, выполненные в графическом редакторе GIMP.







Фракталы
Красивые, таинственные
Манят, завораживают, привлекают
Мне они очень нравятся
Графика.
Литература
1) Алгебраические фракталы. / В.А. Трухачева, И. Сидоренко, А.В. Бородина. . – Режим доступа: http://dssp.petrsu.ru/~KOF/kse-pact/index.html
2) Божокин С.В. Фракталы и мультифракталы: Учебное пособие/ С.В. Божокин, Д.А. Паршин – Москва–Ижевск: НИЦ «Регулярная и хаотическая динамика», 2001. – 128 с.
3) Ватолин Д.C. Применение фракталов в машинной графике. / Д.С. Ватолин -Россия. – 1995. – N15. – С. 11
4) Вольхин К.А. Основы компьютерной графики: Электронные методические указания к лабораторным работам для студентов / Вольхин К.А. http://grafika.stu.ru/wolchin/umm/pr_kg/
5) Генерация фрактальных деревьев / M.В. Котов. – Режим доступа: http://fractalworld.narod.ru/article/tree3.html
6) Доступно о фракталах– Режим доступа: http://fract.narod.ru/index.htm