News: Check out the originating "3d Mandelbulb" thread here

## The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!

 Pages: 1 2 3 [4] 5 6 ... 8   Go Down
 Author Topic: True 3D Mandelbrot ?  (Read 12803 times) Description: Yet another try at the "true 3D" Mandelbrot 0 Members and 1 Guest are viewing this topic.
Roquen
Iterator

Posts: 180

 « Reply #45 on: August 11, 2014, 02:35:11 PM »

I define wrapper types.  The strange thing here is that the mathematica expression was in the order I expected...it just spewed out a different ordering when I wrapped it in TeXForm.  Never noticed that happening before....but then again I don't use it that much.
 Logged

All code submitted by me is in the public domain. (http://unlicense.org/)
kram1032
Fractal Senior

Posts: 1863

 « Reply #46 on: August 12, 2014, 12:54:01 PM »

yeah, weird. you'd think, Mathematica wouldn't switch order between an expression and its conversion to TeX.
 Logged
kram1032
Fractal Senior

Posts: 1863

 « Reply #47 on: August 12, 2014, 01:02:03 PM »

So did you already edit it to correct the ordering?
In other words, is this correct?

$
PseudoMult\left(\left(a_0+i a_1+j a_2 +k a_3 \right), \left(b_0+i b_1+j b_2 +k b_3 \right)\right) =
a_0 b_0 - a_1 b_1 + i \left(a_0 b_1+a_1 b_0 \right) + j \left(a_0 b_2 + a_2 b_0 - a_1 b_3 - a_3 b_1 \right) + k \left( a_0 b_3+a_3 b_0 + a_1 b_2 + a_2 b_1 \right)
$
 « Last Edit: August 12, 2014, 01:06:25 PM by kram1032 » Logged
Roquen
Iterator

Posts: 180

 « Reply #48 on: August 12, 2014, 09:34:35 PM »

I have about zero free time for the next couple of day.  A quick look at it appears correct.  Note that dual-complex product does commute so no special work is required..I was assuming you were thinking about GA.  I just used replacements:
Code:
exp /: lhs -> rhs
to convert the rules.  If you want to toy around with basic ops then you could define the rule:

Code:
e /: e^2 := 0
that only works in simple cases, it could be beefed up to be even integer powers instead...or somebody probably has a dual number package (or see other equivalent systems below)

One thing to note about dual-complex forms is (that I'm aware of) they are naturally 2D systems embedded in 4D.  See here:

http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/other/dualComplex/

Has links to other interpretations like SE(2) and Clifford/GA
 Logged

All code submitted by me is in the public domain. (http://unlicense.org/)
kram1032
Fractal Senior

Posts: 1863

 « Reply #49 on: August 12, 2014, 11:53:13 PM »

you mean they are 2D embedded in 4D in that they are describing translation?

I actually was talking about GA before, and that TeX I gave below simply was what you gave before, rearranged to be more sensible

I still gotta learn a lot about all the pattern matching abilities in Mathematica. It seems to be really powerful but thus far I always have to look up stuff and it's hard for me to find applications from the samples they give in the documentation, even if that is actually rather well done.
 Logged
Alef
Fractal Supremo

Posts: 1174

 « Reply #50 on: August 13, 2014, 05:54:57 PM »

Great work David, very interesting to follow.

I like the shapes of the Cos version (even z^2) very much...

I wish Luca would do his magic with these to include them in Mandelbulb3D...

As I understand writing a formula for M3D is kind of hacking. Could be not so hard, just need to have a hex editor but then it alsou needs assembly language. Xe Xe maybe in some hacking forums you can find right guys. Or if you had even created some PC game trainer.

p.s.
Maybe an odd powers of 3,5,7 and sincos formula as it looks as imagined 3D mandelbrot. In 2D complex power mandelbrot is discontinious, so I think adding two more number components in power could make it just more discontinious. Throught it would be interesting in 2D to observe Z=Z^(x,y,z,w) +C even if it would not be very smooth.

 Logged

fractal catalisator
phtolo
Navigator

Posts: 79

 « Reply #51 on: August 14, 2014, 08:02:53 AM »

Has anyone tried to hybridize the 2d-Mandelbrot into 3d ?

Using the standard z = z^2+c
On even iterations use c = x+yi
On odd iterations use c = z+yi

Or any onther combination of x,y and z. The one above will have the 2d M-set on the x=z plane.

Just a thought, would try it out myself if I wasn't travelling.

Keep up the good work!
 Logged
Roquen
Iterator

Posts: 180

 « Reply #52 on: August 14, 2014, 12:30:39 PM »

Code:
r     i    j     k
r    r     i    j     k
i    i    -r    k    -j
j    j     k   -r     i
k    k    -j    i  +/-r
This is related to bicomplex (http://en.wikipedia.org/wiki/Bicomplex_number).  Note the sign difference on j2.  So is one reflection if k2=-1 and two if +1.

Also same as:  http://mathworld.wolfram.com/HypercomplexNumber.html when k2=1, otherwise one reflection (note mathworld mentions a povray function julia_fractal) and some authors call this version bicomplex as well:
http://www.3dfractals.com/docs/Article01_bicomplex.pdf
http://arxiv.org/pdf/1304.0781v1.pdf
http://www.scielo.cl/pdf/cubo/v14n2/art04.pdf

But then again, can also be expressed by a quaternion or split-quaternion expression as well.

Is this of any use...don't know.
 Logged

All code submitted by me is in the public domain. (http://unlicense.org/)
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #53 on: August 14, 2014, 10:30:27 PM »

What software are we using for these?

Dunno about Alef but I'm just testing then in my Wip3D formula for Ultrafractal - I've added an extra "4D" option with a "func" call to make it easy to try any new formulas - but haven't released it publicly yet partly because I want to add convergent bailout first.
 « Last Edit: August 14, 2014, 10:33:45 PM by David Makin » Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #54 on: August 14, 2014, 10:32:12 PM »

It's a bit tricky to get Mathematica to do non-commutative multiplication.
It states that "**" is supposed to be just that, but that operator doesn't seem to be particularly well-defined.

Actually that unit vector multiplication table is commutative - *but* mathematica probably dislikes the zeroes
 « Last Edit: August 14, 2014, 10:34:05 PM by David Makin » Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #55 on: August 14, 2014, 10:48:31 PM »

OK back to the sin and cos combined version - I worked out a seemingly perfect reciprocal and decided to try doing some 3D/4D Newton renders - though as yet just using my old brite-force 3D/4D render formula coz my wip3D one still isn't updated to handle convergence.

For the combined sin/cos version the (unoptimised) reciprocal is as follows using complex values (note that |z| returns the *square* of the magnitude as per normal Fractint and UF behaviour):

func inv(complex &z, complex &w)
float t = 1.0/(|z|+|w|)
complex we = t*w
complex ze = -t*z
float ms = |ze|*|z|
float mt = |we|*|w|
complex nz
if mt>ms
nz = 1.0/(we*w)
else
nz = 1.0/(ze*z)
endif
z = ze*nz
w = we*nz
endfunc

If you examine the above you'll see that when w is (0,0) on entry the reciprocal becomes 1/z for z and (0,0) for w as it should be (and vice-versa).

And in the next post will be 2 views of each of the standard degree 3 and 5 Newton's for the roots of (+x,0,0,0).
 « Last Edit: August 14, 2014, 11:04:23 PM by David Makin » Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #56 on: August 15, 2014, 02:54:17 AM »

deleted that last post and the 4 pics coz I found a bug - fortunately it means the solid non-planer surfaces have gone - problem is the Newton though now correct is a little more complicated than I anticipated - it'll take a while to get decent renders.
For those interested I messed up when copying and then forgetting to change some variable names !!
 Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
youhn
Fractal Molossus

Posts: 696

Shapes only exists in our heads.

 « Reply #57 on: August 15, 2014, 01:19:38 PM »

Has anyone tried to hybridize the 2d-Mandelbrot into 3d ?

Using the standard z = z^2+c
On even iterations use c = x+yi
On odd iterations use c = z+yi

Or any onther combination of x,y and z. The one above will have the 2d M-set on the x=z plane.

Just a thought, would try it out myself if I wasn't travelling.

Keep up the good work!

Interesting idea.

Few days ago I had about the same thought on alternating the formulas in 2D for the Mandelbrot set and Burning Ship fractal. Does anyone know if there is software that already does this alternating-hybrid thing?
 Logged
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #58 on: August 15, 2014, 08:50:15 PM »

There are alternating formulas in most software listed here in the forums I think - the first were probably done in Fractint like most things fractal

The next step is escape-time IFS where the "transforms" can be any escape-time formulas.....plus added controls for which "transforms" are allowed where etc.

There are also formulas that implement rising polynomials over iterations - such as expanding the sequence of Lucas Polynomials on each iteration - see:

http://mathworld.wolfram.com/LucasPolynomialSequence.html

The recurrence relation can simply be used as an iterative method.
 Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
David Makin
Global Moderator
Fractal Senior

Posts: 2286

 « Reply #59 on: August 16, 2014, 11:32:47 PM »

OK I've now done some videos showing the structure of the Newton for the cube roots of 1 using the 4D sincos combined method.

Newton XYz starts with the clip window (limited z slice) showing the complex equivalent view then slides along the z axis....

Newton xYZ starts with the limited x slice at -8 and slides along the x axis to +8...

Newton XyZ starts with the limited y slice at -8 and slides along the y axis to +8....