Обучающие программы и исследовательские работы учащихся
Помогаем учителям и учащимся в обучении, создании и грамотном оформлении исследовательской работы и проекта.

Объявление

Наш баннер

Сайт Обучонок содержит исследовательские работы и проекты учащихся, темы творческих проектов по предметам и правила их оформления, обучающие программы для детей.
Будем благодарны, если установите наш баннер!
Баннер сайта Обучонок
Код баннера:
<a href="https://obuchonok.ru/" target="_blank"> <img src="https://obuchonok.ru/banners/banob2.gif" width="88" height="31" alt="Обучонок. Исследовательские работы и проекты учащихся"></a>
Все баннеры...
Тематика: 
Математика
Автор работы: 
Асташенко Кирилл
Руководитель проекта: 
Нестеренко О.П.
Учреждение: 
МАОУ "СОШ №23 им. Г. А. Кадзова"
Класс: 
10

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

В процессе проведения работы над исследовательским проектом по математике на тему «Фракталы» обучающийся 10 класса изучил способы описания и отображения фракталов с помощью программного кода, а также написал программу и сделал с её помощью несколько изображений.

Подробнее о работе:


В индивидуальном исследовательском проекте по математике «Фракталы» автор сделал выводы о том, что на уроках геометрии в школе мы привыкли иметь дело с регулярными фигурами: кругами, треугольниками, квадратами, и может показаться, что это всё, на что способна математика. Но на самом деле это куда более красивая наука, чем думают многие, просто эта красота прячется за сложными с виду формулами и не всякий сразу её разглядит. Изображение воспринять гораздо легче, поэтому фракталы могут помочь заинтересоваться в математике людям, далёким от неё.

Оглавление

Введение
I. Теоретическая часть
1. Определение фрактала
2. Виды фракталов
3. История и применение
II. Практическая часть
1. Способы изображения фракталов
2. Ход работы
Заключение
Источники

Введение

Геометрию часто называют холодной и сухой. Одна из причин заключается в ее неспособности описать все то, что окружает нас: форму облака, горы, дерева или русла реки. В природе все формы сложнее, чем идеально ровные прямые, плоскости, шары и кубы. Но оказывается, в математике есть и раздел, способный описать такие сложные формы, – фрактальная геометрия.

Актуальность данной работы:
Фракталы являются важной частью современной науки и техники, однако многим они кажутся чем-то очень сложным и непонятным.

Объект исследования: Геометрические абстракции.

Предмет исследования: Форма и строение исследуемых предметов и явлений.

Цель исследования: Создание компьютерной программы для описания и изображения фракталов.

Поставленная цель предусматривает решение следующих задач:

  • Изучить информацию о фракталах.
  • Рассмотреть различные виды фракталов.
  • Узнать где возможно применение фракталов.
  • Изучить способы описания и отображения фракталов с помощью программного кода.
  • Написать программу и сделать с её помощью несколько изображений.

Методы исследования: теоретический, практический, анализ, обобщение.

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

Продукт исследования: программа, изображающая фракталы.

I. Теоретическая часть

1. Определение фрактала


Фракталом могут называть объект, обладающий хотя бы одним из 3 свойств:

  • Самоподобие
  • При увеличении масштаба сложность структуры остаётся неизменной
  • Дробная метрическая размерность

Чаще всего, говоря о фракталах, имеют ввиду самоподобные фигуры. Такие фигуры полностью или частично совпадают с частью себя самого. Например, треугольник Серпинского состоит из 3 таких же треугольников меньшего размера (рис.1)
фракталы1

Не все фракталы обладают самоподобием. Например, береговая линия является фракталом, но не обязательно содержит в себе свои уменьшенные копии. Если взять несколько карт местности с разными масштабами, то можно увидеть, что с его увеличением нам становится видно всё больше неровностей рельефа и береговая линия никогда не станет прямой [1].
В математике под фракталом понимается множество точек в евклидовом пространстве, имеющие дробную метрическую размерность или метрическую размерность, отличную от топологической.

2. Виды фракталов

Фракталы можно разделить на виды:

  • Геометрические – строятся на основе исходной фигуры (линии, многоугольника или многогранника) путем ее дробления и выполнения различных преобразований полученных фрагментов. (рис.2)
  • фракталы3

  • Алгебраические – строятся на основе алгебраических формул. (рис.3)
  •  фракталы4

  • Стохастические – получаются, если в итерационном процессе случайным образом изменять какие-либо параметры.

3. История и применение

Термин «фрактал» введён Бенуа Мандельбротом в 1975 году и получил широкую известность с выходом в 1977 году его книги «Фрактальная геометрия природы». Широкое распространение фракталы получили благодаря развитию компьютерных технологий.
В естественных науках фракталы используются для моделирования сложных процессов. В радиотехнике применяются фрактальные антенны. В информатике с помощью фракталов сжимают изображения, а в компьютерной графике генерируют изображения объектов природы: деревьев, гор, облаков, рек и т.д.

II. Практическая часть

1. Способы изображения фракталов


Мы нашли 2 способа изобразить геометрический фрактал при помощи компьютера:

  • Системы итерирующих функций
  • L-системы

Система итерирующих функций - это совокупность сжимающих аффинных преобразований. Аффинные преобразования включают в себя масштабирование, поворот и параллельный перенос. Аффинное преобразование считается сжимающим, если коэффициент масштабирования меньше единицы.
L-система состоит из аксиомы (начальной строки), алфавита и правил. В правилах указывается каким символом или последовательностью символов нужно заменять каждый из символов алфавита. Символы исходной строки заменяются согласно правилам и получается новая строка, далее операция повторяется с новой строкой в качестве исходной.

Для своей работы мы выбрали L-системы на языке Python. Также мы использовали библиотеку turtle, которая позволяет изобразить фрактал, используя строку, сгенерированную L-системой.

2. Ход работы

Для начала мы написали простой код, изображающий только снежинку Коха (рис.4)
фракталы5

Далее мы немного изменили код, чтобы нарисовать более сложный фрактал – треугольник Серпинского (рис. 5).
фракталы6

Теперь сделаем код более универсальным. L-система определяется аксиомой и правилами, ещё для построения необходимо указать количество итераций, угол поворота, начальные координаты и длину шага. Мы дали возможность пользователю указывать вид фрактала и количество итераций, остальное программа определяет сама исходя из вида фрактала. Также мы добавили несколько видов фракталов. (рис.6-8) Полный код находится в приложении 1.

 фракталы7
 фракталы8
 фракталы9
 фракталы10

Заключение


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

Изображение воспринять гораздо легче, поэтому фракталы могут помочь заинтересоваться в математике людям, далёким от неё. Разрабатанная в рамках исследовательского проекта по математике на тему "Фракталы" наша программа создаёт такие изображения и может быть использована с целью получить базовые знания о строении фракталов. Мы выполнили все поставленные задачи и достигли цели.

Источники

  1. Абачиев С. К. О треугольнике Паскаля, простых делителях и фрактальных структурах // В мире науки, 1989, № 9.

Приложение 1

import turtle

print("[номер]: [название фрактала] (рекомендованное кол-во итераций)")
print("1: Снежинка Коха (4)")
print("2: Треугольник Серпинского (7)")
print("3: Кривая дракона (16)")
print("4: Кристалл (5)")
print("5: 32-сегментная кривая (3)")
print("6: Фрактал Вичека (4)")

Type = int(input("Номер фрактала: "))
itr = int(input("Количество итераций: "))

if Type == 1:
axiom = "F--F--F"
angle = 60
rules = {"+":"+", "-":"-", "F":"F+F--F+F"}
x = -75; y = -150
step = 5
elif Type == 2:
axiom = "F"
angle = 120
rules = {"+":"+", "-":"-", "F":"F-G+F+G-F", "G":"GG"}
x = -300; y = -200
step = 5
elif Type == 3:
axiom = "FX"
rules = {"+":"+", "-":"-", "F":"F", "X":"X+YF+", "Y":"-FX-Y"}
angle = 90
x = -500; y = 0
step = 1
elif Type == 4:
axiom = "F+F+F+F"
rules = {"+":"+", "-":"-", "F":"FF+F++F+F"}
angle = 90
x = -300; y = 200
step = 2
elif Type == 5:
axiom = "F+F+F+F"
rules = {"+":"+", "-":"-", "F":"-F+F-F-F+F+FF-F+F+FF+F-F-FF+FF-FF+F+F-FF-F-F+FF-F-F+F+F-F+"}
angle = 90
x = -300; y = 170
step = 0.7
elif Type == 6:
axiom = "F-F-F-F"
rules = {"+":"+", "-":"-", "F":"F-F+F+F-F"}
angle = 90
x = -200; y = -100
step = 5
turtle.hideturtle()
turtle.tracer(0)
turtle.penup()
turtle.setposition(x, y)
turtle.pendown()
turtle.pensize(2)

S = axiom; newS = ""
for i in range (itr):
for c in S:
newS += rules[c]
S = newS
newS = ""

for c in S:
if c == "+":
turtle.right(angle)
elif c == "-":
turtle.left(angle)
else:
turtle.forward(step)

turtle.update()
turtle.mainloop()


Если страница Вам понравилась, поделитесь в социальных сетях:

Объявление

Статистика