Hi,

I had exactly the same problem:

I was interested in the different fractals which can be generated by modifying the Mandelbrot formula and after some research discovered the image by stardust4ever. It left me a bit confused, because it only contains 12 variants and the naming is not clear. Some things are also different than the definition in Wikipedia, for example the Burning Ship is conjugated in the image, but in Wikipedia it is not.

So after some research I figured out there are 16 possible variations of the Mandelbrot formula:

- using the abs function for zr and/or zi : creates 4 variants

- using abs for |zr²-zi²| : 2 variants

- complex conjugating the term : 2 variants

I wrote a program (attached) which generates the 16 possible images as pgm files and adds the name according to stardust4ever.

Some interesting observations:

- The symmetrical fractals have only one variant. Conjugating them yields a completely different shape.

- The asymmetrical fractals have two variants of each other, one being mirrored by conjugation. The mirrored variants are missing in the stardust overview.

- "perpendicular" seems to refer to |zr| (abs function on real z), for example for "buffalo"

- "celtic" seems to have something to do with using abs on the squares |zr²-zi²|, but not for "buffalo"

- a "mandelbar" is a conjugated "mandelbrot", so a "celtic mandelbar" is a conjugated "celtic mandelbrot"

Problems:

- a "perpendicular celtic" is not generated by setting zr to the absolute, but by complex conjugating "celtic heart".

It should be called "celticbar" or something ...

Because of this, we should work out a new naming scheme.

- Mandelbrot and Tricorn should keep the name, Wikipedia already uses these names.

- "Perpendicular" could indicate that the abs function is used on the real part zr

- "celtic" could indicate that abs is used on the squares: |zr² - zi²|

Alternatively, it is possible to just invent some names for the variants.

The table with the "old" names for reference:

// conjug abs_zr abs_zi abs_square

{ gen_func<false, false, false, false>, "mandelbrot" }, // 0

{ gen_func<true , false, false, false>, "mandelbar_tricorn" }, // 1

{ gen_func<false, true , false, false>, "heart mandelbrot" }, // 2

{ gen_func<true , true , false, false>, "perpendicular mandelbrot" }, // 3

{ gen_func<false, false, true , false>, "perpendicular burning ship 1" }, // 4

{ gen_func<true , false, true , false>, "perpendicular burning ship 2" }, // 5

{ gen_func<false, true , true , false>, "burning ship 1" }, // 6

{ gen_func<true , true , true , false>, "burning ship 2" }, // 7

{ gen_func<false, false, false, true >, "celtic mandelbrot" }, // 8

{ gen_func<true , false, false, true >, "celtic mandelbar" }, // 9

{ gen_func<false, true , false, true >, "celtic heart" }, // 10

{ gen_func<true , true , false, true >, "perpendicular celtic" }, // 11

{ gen_func<false, false, true , true >, "perpendicular buffalo 1" }, // 12

{ gen_func<true , false, true , true >, "perpendicular buffalo 2" }, // 13

{ gen_func<false, true , true , true >, "buffalo 1" }, // 14

{ gen_func<true , true , true , true >, "buffalo 2" } // 15

Looking forward to your thoughts.