Welcome to Fractal Forums

Fractal Math, Chaos Theory & Research => The 3D Mandelbulb => Topic started by: pseudogenius on May 09, 2010, 07:49:21 PM




Title: A different 3D Mandelbrot
Post by: pseudogenius on May 09, 2010, 07:49:21 PM
Hey,

I came up with this formula using my own set of rules for hypercomplex numbers.
It is in chaospro format.

parameter real bailout;
real a,b,c,d,j,k,l,m,costheta,sintheta,pa,pb,pc,pd;
   void init(void)
   {
      a=part_r(pixel);
      b=part_i(pixel);
      c=part_j(pixel);
      d=part_k(pixel);
      pa=a;
      pb=b;
      pc=c;
      pd=d;
      costheta=(a^2-b^2)/(a^2+b^2);
      sintheta=(2*a*b)/(a^2+b^2);
   }
   void loop(void)
   {
      j=a^2-b^2-costheta*(c^2)+2*sintheta*c*d+costheta*(d^2);
      k=2*a*b-sintheta*(c^2)-2*costheta*c*d+sintheta*(d^2);
      l=2*a*c-2*b*d;
      m=2*a*d+2*b*c;
      a=j;
      b=k;
      c=l;
      d=m;
      j=a^2-b^2-costheta*(c^2)+2*sintheta*c*d+costheta*(d^2);
      k=2*a*b-sintheta*(c^2)-2*costheta*c*d+sintheta*(d^2);
      l=2*a*c-2*b*d;
      m=2*a*d+2*b*c;
      a=j;
      b=k;
      c=l;
      d=m;
      j=a^2-b^2-costheta*(c^2)+2*sintheta*c*d+costheta*(d^2)+pa;
      k=2*a*b-sintheta*(c^2)-2*costheta*c*d+sintheta*(d^2)+pb;
      l=2*a*c-2*b*d+pc;
      m=2*a*d+2*b*c+pd;
      a=j;
      b=k;
      c=l;
      d=m;
      costheta=(a^2-b^2)/(a^2+b^2);
      sintheta=(2*a*b)/(a^2+b^2);
   }
   bool bailout(void)
   {
      return(j^2+k^2+l^2+m^2<bailout);
   }

It is power 8, so that is why the formula repeats in the loop.

So far I see infinite detail, but choaspro isn't letting me do a lot(it takes forever to render).

I have some renders of it.
The second image is what you get when you remove

      costheta=(a^2-b^2)/(a^2+b^2);
      sintheta=(2*a*b)/(a^2+b^2);

from the end of the loop.

Tell me what you think.


Title: Re: A different 3D Mandelbrot
Post by: reesej2 on May 10, 2010, 01:10:30 AM
Interesting gridlike pattern on it.

I think I understand your equations, but what was the rationale behind them? It doesn't really look like something you'd just make up on the spot.


Title: Re: A different 3D Mandelbrot
Post by: pseudogenius on May 13, 2010, 02:21:09 AM
Well, I used the following rules:

<br />{j_{\theta}}^2=-cos (2\theta)-sin(2\theta)i<br />ij_{\theta}=j_{\theta+\frac{\pi}{2}}<br />j_{\theta+\pi}=-j_{\theta}<br />

They're based on the idea that you can multiply higher order complex numbers by adding the angles of each complex number and multiplying the lengths.

I got the expression in my formula from (a+bi+cj_{\theta}+dj_{\theta+\frac{\pi}{2}})^2

Expanding, and then taking each part I get the above formula with some trigonometric functions, mainly cos(2*theta) and sin(2*theta)

Recognizing that theta=atan(b/a) and using trig identities I get

cos(2*theta)=(a^2-b^2)/(a^2+b^2)
sin(2*theta)=(2*a*b)/(a^2+b^2)

which are the costheta and sintheta terms you see in the formula