Welcome to Fractal Forums

Fractal Math, Chaos Theory & Research => The 3D Mandelbulb => Topic started by: bkercso on May 14, 2011, 09:42:52 AM




Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:42:52 AM
Hi All,

 I think I found a new way to extend Mandelbrot set to 3D. I read twinbee's article about the Real 3D Mandelbrot set. The idea is brilliant! But I think it contains a little mistake: when you square a complex number ((a,b) vector) its angle with x-axis doesn't change to 2 times bigger. The relation between original and new angle is: original tangent=b/a, new tangent=2ab/(a^2-b^2).
 In my formula I also used 2 following rotations and calculated angle in this way. I squared z=(x,y,u): z^2=Z=(A,B,C) ; where B/A=2xy/(x^2-y^2), C/B=2Bu/(B^2-u^2), and abs(Z)=abs(z)^2.

The iterative function is (yes, in pascal...  :embarrass: ):

null:=1E-10;
dim1:=x; dim2:=y; dim3:=u;
zabs:=0;
while zabs<4 do
begin
     if (abs(x)<null) and (abs(y)<null) then
     begin
      xtemp:=dim1;
      ytemp:=-sqr(u)+dim2;
      utemp:=dim3;
     end
     else begin
      sqrx:=sqr(x); sqry:=sqr(y); sqru:=sqr(u);
      abs1sq:=sqrx+sqry+sqru;
      xtemp1:=sqrx-sqry;
      ytemp1:=2*x*y;

      denom:=sqrx*sqry-sqru;
      if (0<=denom) and (denom<null) then denom:=null 
       else if (-null<denom) and (denom<0) then denom:=-null;
      utemp1:=2*sqrx*sqry*u/denom;

      abs2:=sqrt(sqr(xtemp1)+sqr(ytemp1)+sqr(utemp1));
      quotient:=abs1sq/abs2;
      xtemp:=xtemp1*quotient+dim1;
      ytemp:=ytemp1*quotient+dim2;
      utemp:=utemp1*quotient+dim3;
     end;

     x:=xtemp;
     y:=ytemp;
     u:=utemp;

     zabs:=sqr(x)+sqr(y)+sqr(u);

     iter:=iter+1;
end;

 The formation contains the 2D Mandelbrot set, and this 3D extension seems very logic to me: line at head changed to plane, and form has more and more smaller furrows like 2D Mandelbrot has more and more smaller circles. As the standard 2D Mandelbrot called Appleman I call this form Orangeman  :D

 I took some pics. Last 5 made with 7 iterations only. Unfortunately I am not a graphic artist yet, but I hope you will render some nice pics  :dink:
(For anaglyph pics put red-cyan glasses on!)


Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:48:08 AM
.


Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:49:01 AM
.


Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:49:49 AM
.


Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:50:42 AM
.


Title: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 09:51:13 AM
.


Title: Re: New 3D Mandelbrot formula ( Orangeman )
Post by: Syntopia on May 14, 2011, 05:46:15 PM
But I think it contains a little mistake: when you square a complex number ((a,b) vector) its angle with x-axis doesn't change to 2 times bigger.

To multiply two complex numbers in polar form, you multiply the moduli (lengths) and add the arguments (angle to x-axis). So the angle should double.


Title: Re: New 3D Mandelbrot formula ( Orangeman )
Post by: bkercso on May 14, 2011, 10:48:03 PM
oh, really! Sorry...

Then the difference between the two 3D Mandelbrot set as I see:
- twinbee doubled (original vectors xy projection; x-axis) angle and (original vector; z-axis) angle
-      I     doubled (original vectors xy projection; x-axis) angle and (NEW vectors yz projection; y-axis) angle.

Now I also tried double (original vectors xy projection; x-axis) angle and (ORIGINAL vectors yz projection; y-axis) angle, see picture.