aboutsummaryrefslogtreecommitdiff
path: root/algorithms/mandelbrot.c
diff options
context:
space:
mode:
authorDavid Phillips <dbphillipsnz@gmail.com>2015-08-13 10:37:31 +1200
committerDavid Phillips <dbphillipsnz@gmail.com>2015-08-13 10:38:05 +1200
commit7f0f089f4dc98d8c6cc145f7355acf1a5ef9e53a (patch)
tree3b31ca31c43d02415296e412aa03d5ad4398b35e /algorithms/mandelbrot.c
parent2ad2848d4ee3a9bda31b0e41d05fa9dcdc48ab54 (diff)
downloadfractal-gen-7f0f089f4dc98d8c6cc145f7355acf1a5ef9e53a.tar.xz
Decomposed horrible loaded for loops, removed tricorn
Diffstat (limited to 'algorithms/mandelbrot.c')
-rw-r--r--algorithms/mandelbrot.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/algorithms/mandelbrot.c b/algorithms/mandelbrot.c
index 28bb188..8225d8c 100644
--- a/algorithms/mandelbrot.c
+++ b/algorithms/mandelbrot.c
@@ -37,12 +37,17 @@ void *generate_mandelbrot_section(void *section)
double top = -1.75f;
double left = -2.5f;
- for (y = d->core, b = (d->core*(size_units/size)+top); y < size; b+=((cores*size_units)/size), y+=cores)
+
+ /* FIXME document this */
+ b = (d->core*(size_units/size)+top);
+
+ for (y = d->core; y < size; y += cores)
{
- for (x = clust_id, a = (clust_id*(size_units/size)+left); x < size; a+=((clust_total*size_units)/size), x+=clust_total)
+ a = clust_id*(size_units/size)+left; /* FIXME document this */
+ for (x = clust_id; x < size; x+=clust_total)
{
z = 0;
- c = a+I*b;
+ c = a + I*b;
for (i = 0; i < iterat; i++)
{
if (cabsf(z) >= 2)
@@ -51,7 +56,9 @@ void *generate_mandelbrot_section(void *section)
z = cpow(z , power) + c;
}
d->data[d->idx++] = (255*i)/iterat;
+ a += (clust_total*size_units)/size;
}
+ b += (cores*size_units)/size;
}
return NULL;
}