30
Fractal Geometry Fractal Geometry Dr Helen McAneney Dr Helen McAneney Centre for Public Health, Centre for Public Health, Queen’s University Belfast Queen’s University Belfast

Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Embed Size (px)

Citation preview

Page 1: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal GeometryFractal Geometry

Dr Helen McAneneyDr Helen McAneney

Centre for Public Health,Centre for Public Health,Queen’s University BelfastQueen’s University Belfast

Page 2: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

This talk

Page 3: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Steven H Strogatz, 1994. Nonlinear Dynamics and Chaos: with applications to Physics, Biology, Chemistry and Engineering (Addison-Wesley).

Page 4: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractals

• Term coined by Mandelbrot in 1975 and was derived from the Latin

fractus meaning "broken" or "fractured.“

• Self-similarity, i.e. look the same at different magnifications

• Mathematics: A fractal is based on an iterative equation

– Mandelbrot set

– Julia Set

– Fractal fern leaf

• Approx. natural examples

– clouds, mountain ranges, lightning bolts, coastlines, snow

flakes, cauliflower, broccoli, blood vessels...

Page 5: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Mandelbrot Set

Page 6: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast
Page 7: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast
Page 8: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast
Page 9: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Netlogo: Mandelbrot

Source: ccl.northwestern.edu

Page 10: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Interface

set z-real c-real + (rmult z-real z-imaginary z-real z-imaginary)

set z-imaginary c-imaginary + (imult temp-z-real z-imaginary temp-z-real z-imaginary)

Page 11: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Extension1

set z-real

c-real - (rmult z-real z-imaginary

z-real z-imaginary)

set z-imaginary

c-imaginary - (imult temp-z-real z-

imaginary temp-z-real z-

imaginary)

Page 12: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Extension2

set z-real

c-real - (rmult z-real z-imaginary

z-real z-imaginary)

set z-imaginary

c-imaginary + (imult temp-z-real

z-imaginary temp-z-real z-

imaginary)

Page 13: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Koch Snowflake

1 2

3 4

• With every iteration, the

perimeter of this shape

increases by one third of the

previous length.

• The Koch snowflake is the

result of an infinite number of

these iterations, and has an

infinite length, while its area

remains finite.

Page 14: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Netlogo: L-System Fractals

Koch’s Snowflake3 iterations

Page 15: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Code

to kochSnowflake

ask turtles [set new? false pd]

ifelse ticks = 0

[repeat 3

[ t ahead len l 60 t ahead len r 120 t ahead len l 60 t ahead len r 120 ]

]

[t ahead len l 60 t ahead len r 120 t ahead len l 60 t ahead len r 120 ]

set len (len / 3)

d

end

Page 16: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

First attempt!

Page 17: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square?

Iteration 1

Page 18: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square?

Iteration 2

Page 19: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square?

Iteration 3

Page 20: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square?

Iteration 4

Page 21: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Code

to kochSnowflakenew2

ask turtles [set new? false pd]

ifelse ticks = 0

[repeat 4

[t ahead len l 90 t ahead len r 90 t ahead len r 90 t ahead len l 90 t ahead len r 90 ]

]

[t ahead len l 90 t ahead len r 90 t ahead len r 90 t ahead len l 90 t ahead len r 90 ]

set len (len / 3)

d

end

Page 22: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square 2?

Iteration 1

Page 23: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square 2?

Iteration 2

Page 24: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square 2?

Iteration 3

Page 25: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Square 2?

Iteration 4

Page 26: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Code

to kochSnowflakenew2

ask turtles [set new? false pd]

ifelse ticks = 0

[repeat 4

[t ahead len r 90 t ahead len l 90 t ahead len l 90 t ahead len r 90 t ahead len r 90 ]

]

[t ahead len r 90 t ahead len l 90 t ahead len l 90 t ahead len r 90 t ahead len r 90 ]

set len (len / 3)

d

end

Page 27: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Hexagon?

Iteration 1

Page 28: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Hexagon?

Iteration 2

Page 29: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

Fractal Hexagon?

Iteration 3

Page 30: Fractal Geometry Dr Helen McAneney Centre for Public Health, Queen’s University Belfast

New Code

Changed heading to -30

to kochSnowflakeNEW

ask turtles [set new? false pd]

ifelse ticks = 0

[ repeat 6

[ t ahead len l 60 t ahead len r 60 t ahead len r 60 t ahead len l 60 t ahead len r 60 ]

]

[ t ahead len l 60 t ahead len r 60 t ahead len r 60 t ahead len l 60 t ahead len r 60 ]

set len (len / 4)

d

end