Tu banner alternativo

Burning Ship fractal

In this article, we will explore and analyze the topic of Burning Ship fractal in depth. Throughout history, Burning Ship fractal has played a fundamental role in numerous aspects of human life, from its impact on society to its influence on culture and technology. Through this article, we will seek to better understand the importance of Burning Ship fractal and its relevance in today's world. We will examine its origins, its evolution over time and its impact on the modern world. In addition, we will explore different perspectives and opinions on Burning Ship fractal, offering a complete and enriching vision of the topic.

Tu banner alternativo
Detail of the Burning Ship fractal

The Burning Ship fractal, first described and created by Michael Michelitsch and Otto E. Rössler in 1992, is generated by iterating the function:

in the complex plane which will either escape or remain bounded. The difference between this calculation and that for the Mandelbrot set is that the real and imaginary components are set to their respective absolute values before squaring at each iteration.[1] The mapping is non-analytic because its real and imaginary parts do not obey the Cauchy–Riemann equations.[2]

Virtually all images of the Burning Ship fractal are reflected vertically for aesthetic purposes, and some are also reflected horizontally.[3]

Implementation

Animation of a continuous zoom-out to show the amount of detail for an implementation with 64 maximum iterations

The below pseudocode implementation hardcodes the complex operations for Z. Consider implementing complex number operations to allow for more dynamic and reusable code.

for each pixel (x, y) on the screen, do:
    x := scaled x coordinate of pixel (scaled to lie in the Mandelbrot X scale (-2.5, 1))
    y := scaled y coordinate of pixel (scaled to lie in the Mandelbrot Y scale (-1, 1))

    zx := x // zx represents the real part of z
    zy := y // zy represents the imaginary part of z 

    iteration := 0
    max_iteration := 100
    while (zx*zx + zy*zy < 4 and iteration < max_iteration) do
        xtemp := zx*zx - zy*zy + x 
        zy := abs(2*zx*zy) + y // abs returns the absolute value
        zx := xtemp
        iteration := iteration + 1

    if iteration = max_iteration then // Belongs to the set
        return INSIDE_COLOR

    return (max_iteration / iteration) × color // Assign color to pixel outside the set

References

  1. ^ Agarwal, Shafali; Negi, Ashish (2013). "Inventive Burning Ship". International Journal of Advances in Engineering & Technology.
  2. ^ Michael Michelitsch and Otto E. Rössler (1992). "The "Burning Ship" and Its Quasi-Julia Sets". In: Computers & Graphics Vol. 16, No. 4, pp. 435–438, 1992. Reprinted in Clifford A. Pickover Ed. (1998). Chaos and Fractals: A Computer Graphical Journey — A 10 Year Compilation of Advanced Research. Amsterdam, Netherlands: Elsevier. ISBN 0-444-50002-2
  3. ^ "HPDZ.NET - Still Images - Burning Ship".