Mandelbrot Set Fractal

Slides:



Advertisements
Similar presentations
Iteration, the Julia Set, and the Mandelbrot Set.
Advertisements

Copyright © 2011 Pearson, Inc. 6.6 Day 1 De Moivres Theorem and nth Roots Goal: Represent complex numbers in the complex plane and write them in trigonometric.
CS 450: COMPUTER GRAPHICS REVIEW: DRAWING LINES AND CIRCLES SPRING 2015 DR. MICHAEL J. REALE.
Copyright © Cengage Learning. All rights reserved. 10 Topics in Analytic Geometry.
Raster conversion algorithms for line and circle
Informationsteknologi Monday, November 12, 2007Computer Graphics - Class 71 Today’s class Viewing transformation Menus Mandelbrot set and pixel drawing.
Polar Coordinates (MAT 170) Sections 6.3
2-1 Computer Organization Part Fixed Point Numbers Using only two digits of precision for signed base 10 numbers, the range (interval between lowest.
CS 4731: Computer Graphics Lecture 5: Fractals Emmanuel Agu.
Ever wonder how they made STAR WARS or TOY STORY? The development of Computer Graphics is responsible for a revolution in art and media. Starting with.
Distance and Midpoint Formulas; Circles
Polar Coordinates and Graphs of Polar Equations Digital Lesson.
Add a File with X, Y coordinates to MapWindow
Chapter 1 Functions and Graphs Copyright © 2014, 2010, 2007 Pearson Education, Inc Distance and Midpoint Formulas; Circles.
Mandelbrot Set the Who Is Mandelbrot?  Benoit Mandelbrot –Mandelbrot was born in Poland in He studied mathematics in France under Gaston Julia.
Mandelbrot Fractals Betsey Davis MathScience Innovation Center.
Fun with Fractals The Mandelbrot Set J Sweeney What is a fractal? Fractals are mathematical structures defined by three properties –Iterative –Self-similar.
HONR 300/CMSC 491 Computation, Complexity, and Emergence Mandelbrot & Julia Sets Prof. Marie desJardins February 22, 2012 Based on slides prepared by Nathaniel.
Amgad Hussein, Maria Tokarska, Edward Grinko, Dimitar Atassanov, Megan Varghese, Emilio Asperti.
FRACTALS OF THE WORLD By Leslie Ryan. Common Terms Iteration- To repeat a pattern multiple times, usually with a series of steps. Reflection- An image.
Checkerboard Examples Top Down Design. The Problem On a checkerboard where locations are numbered similar to java coordinates, draw a rectangle using.
Section 2-5 Complex Numbers.
CITS4403 Computational Modelling Fractals. A fractal is a mathematical set that typically displays self-similar patterns. Fractals may be exactly the.
CS 325 Introduction to Computer Graphics 03 / 03 / 2010 Instructor: Michael Eckmann.
MATH 224 – Discrete Mathematics
Introduction Introduction: Mandelbrot Set. Fractal Geometry ~*Beautiful Mathematics*~ FRACTAL GEOMETRY Ms. Luxton.
Copyright © Cengage Learning. All rights reserved. 9 Topics in Analytic Geometry.
Dr. BENOIT B MANDELBROT, whilst an IBM Fellow and Visiting Professor at Harvard University, coined the word ‘FRACTAL’ from the Latin ‘FRACTUS’ = ‘broken’
1/1/20001 Topic >>>> Scan Conversion CSE Computer Graphics.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Introduction to Experiment 5 VGA Signal Generator ECE 448 Spring 2009.
46 Number Systems Problem: Implement simple pocket calculator Need: Display, adders & subtractors, inputs Display: Seven segment displays Inputs: Switches.
Vectors and Matrices In MATLAB a vector can be defined as row vector or as a column vector. A vector of length n can be visualized as matrix of size 1xn.
Computational Methods of Scientific Programming Lecturers Thomas A Herring, Room , Chris Hill, Room ,
The introduction of Microsoft Excel. Spreadsheet Basic.
Chapter 2 Functions and Graphs Copyright © 2014, 2010, 2007 Pearson Education, Inc Distance and Midpoint Formulas; Circles.
Chapter 3 Scan Conversion Lecture-02. Bresenham’s Line Algorithm Bresenham’s line algorithm – is a highly efficient incremental method for scan- converting.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
Strategies and Rubrics for Teaching Chaos and Complex Systems Theories as Elaborating, Self-Organizing, and Fractionating Evolutionary Systems Fichter,
Bellwork Last Nights Homework c. 4 d
David Chan TCM and what can you do with it in class?
Self-Similarity Some examples. Self-Similarity in the Koch Curve Fractals usually possess what is called self-similarity across scales. That is, as one.
ECE 448: Lab 4 VGA Display. Bouncing Ball.. Organization and Grading.
4.1 The Coordinate Plane In mathematics, points are located in reference to two perpendicular lines called axes.
Governor’s School for the Sciences Mathematics Day 4.
ECE 448: Lab 5 VGA Display. Breaking-Bricks..
ECE 448: Lab 4 VGA Display The Frogger. Flexibility in the Second Part of the Semester Lab 4: VGA display (2 weeks) – 8 points Lab 5: Computer Graphics.
Chapter 1. Introduction In this chapter we will: model relationships using variables, expressions, and equations. apply order of operations to simplify.
8.1 The Rectangular Coordinate System and Circles Part 2: Circles.
Polar Coordinates and Graphs of Polar Equations. Copyright © by Houghton Mifflin Company, Inc. All rights reserved. 2 The polar coordinate system is formed.
Linear Functions Section 1-1 Points Lines Objective: To find the intersection of two lines and to find the length and the coordinates of the midpoint of.
Binary  Decimal. Review Each binary digit (bit) is a power of 2 Place the bits, multiply, and add Example:
ECE 448: Lab 4 VGA Display Snake Game. Flexibility in the Second Part of the Semester Lab 4: VGA display (2 weeks) – 8 points Lab 5: Computer Graphics.
8.1 The Rectangular Coordinate System and Circles Part 2: Circles.
Department of Computer Science Georgia State University
HONR 300/CMSC 491 Computation, Complexity, and Emergence
Polar Coordinates and Graphs of Polar Equations
Imaginary & Complex Numbers
Complex numbers Algebra II Dr. Guram.
Section 1.9 Distance and Midpoint Formulas and Circles
Scan Conversion of Circles
Domain 1: The Number System
Polar Coordinates and Graphs of Polar Equations
14.7 Triple Integrals with Cylindrical and Spherical Coordinates
Drawing the Mandelbrot Set
ECE 448: Spring 2019 Lab 5 Julia Set Fractal.
ECE 448: Spring 2019 Lab 5 Julia Set Fractal.
ECE 448: Spring 2016 Lab 5 Julia Set Fractal.
Polar Coordinates and Graphs of Polar Equations
EQUATIONS OF LINES IN STANDARD FORM
Presentation transcript:

Mandelbrot Set Fractal ECE 448: Spring 2015 Lab 5 Mandelbrot Set Fractal

Introduction to Lab5 2

Benoit Mandelbrot Mandelbrot was born in Poland in 1924. Father of fractal geometry. He showed how fractals can occur in many different places in both mathematics and elsewhere in nature.

What is a Fractal? Fractals are mathematical structures defined by two properties Iterative Self-similar Zooming in or out on the image reveals deep repetition of patterns

The Mandelbrot Set The Mandelbrot set is a set of points in the complex plane, the boundary of which forms a fractal. Mathematically, the Mandelbrot set can be generated using a very simple iterative formula, called the quadratic recurrence equation, applied to points in complex plane  zn+1 = zn2 + c   That is, a complex number c, is in the Mandelbrot set if the absolute value of zn never exceeds a certain number. we start with z0=0 and apply the iteration repeatedly, The absolute number depends on c, however large n gets.

The Mandelbrot Set

Pseudocode In the pseudocode below, c=cx+i·cy, corresponds to one pixel of the display region. The plotted region should have the following limits -2 ≤ cx=Re[c] ≤ 1 -1 ≤ cy=Im[c] ≤ 1 for cy = -1 to 1, step 2/400 do for cx = -2 to 1, step 3/600 do { zx = 0 zy = 0 iteration = 0 z and c are complex numbers. One begins by assigning a fixed value to c, letting z = 0 and calculating the output. One then repeatedly recalculates, or iterates, the equation, substituting each new output for z. Some values of c, when plugged into this iterative function, produce outputs that swiftly soar toward infinity. Other values of c produce outputs that eternally skitter about within a certain boundary. This latter group of c‘s, or complex numbers, constitutes the Mandelbrot set.

Pseudocode Cont… // z = z2 + c = // =(zx2 – zy2 + cx) + i · (2 · zx · zy + cy) while (zx2 + zy2 < 4 && iteration < MAX_ITER ){ zxtemp = zx2 – zy2 + cx zytemp = 2 · zx · zy + cy zx = zxtemp zy = zytemp iteration++ }

Pseudocode Cont… x = x_conv(cx) // conversion to the x-coordinate of a pixel y = y_conv(cy) // conversion to the y-coordinate of a pixel if zx2 + zy2 < 4 color(x,y) = fractal_color else color(x,y) = background_color }

x_conv() and y_conv The functions x_conv() and y_conv() are used to convert the coordinates of the complex number c into x and y coordinates of the pixel.   x = x_conv(cx) = 20 + (cx-(-2))*(600/3) = 20 + 200*(cx+2) y = y_conv(cy) = 440 – (cy-(-1))*(400/2) = 440 - 200*(cy+1)

The magnification of the last image relative to the first one is about 10,000,000,000 to 1. 

Fixed Point Representation You can use Q4.28 representation 4 integer bits 28 fractional bits Addition/Subtraction performed as usual Multiplication of two Q4.28 numbers results in a Q8.56 number, which should be converted back to Q4.28

VGA Display Area Use a rectangular area of the size (600 x 400) to display the Mandelbrot set fractal. Left and Right border = 20 pixels each Top and Bottom border = 40 pixels each

Cont.. Top border should display “The Mandelbrot Set” in the center. Bottom border should display Percentage of the display area, increasing every 0.5%. Progress bar Total execution time with the step 0.1 s.

Input/Output Scheme Use BTNS as the Start/Pause button to start/pause the computations. The color of the fractal and background should also change, depending on the positions of switches

Final VGA Display Outlook THE MANDELBROT SET 33.1 s 95.5%

Bonus Tasks color = iteration mod 8 Increase the speed of calculations, by evaluating 4 values of c in parallel. Determine the maximum speed-up possible by evaluating N values of c in parallel, where N is limited only by the available FPGA resources. Add colors by assigning a different color to each value of c, based on the number of iterations required for the decision based on the following formula: color = iteration mod 8