Skip to content

IstiCusi/mandelcuda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MandelCuda

Description

MandelCuda is a very minimalistic show case of CUDA for the calculation of the Mandelbrot set and its boundaries.

First Calculation without spectral mapping Log-Log Distribution

Mathematical Overview

The iteration inside the Mandelbrot set generation loop, as found in the MandelbrotKernel is mathematically very simple and represented by:

$$ z_{n+1} = z_n^2 + c $$

with ( z_0 = 0 ) and ( c = x_0 + iy_0 ), where ( x_0 ) and ( y_0 ) are the real and imaginary parts of ( c ), calculated from pixel coordinates. During each iteration, we perform:

$$ \text{Real}(z_{n+1}) = x^2 - y^2 + x_0 $$

$$ \text{Imaginary}(z_{n+1}) = 2xy + y_0 $$

This iteration continues until either the magnitude of ( z_n ) squared (( x^2 + y^2 )) exceeds 4, indicating the point does not belong to the Mandelbrot set, or the maximum number of iterations is reached.

Installation

Compile the mandelcute-iness using make

Contributing

Any contribution is welcome!

License

This project is open-source and is licensed under the MIT License. Please see the LICENSE file for detailed licensing information.

TODOS

  • Complete API documention
  • Extend about better coloring schemes and zooming etc
  • The coloring is based on a heuristic assumption of the distribution of iterations (A better color mapping could be done in sequence)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published