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: 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 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 |