Logo by simon.snake - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Support us via Flattr FLATTR Link
 
*
Welcome, Guest. Please login or register. April 18, 2024, 07:32:30 PM


Login with username, password and session length


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


Pages: [1] 2 3   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Attempt at Unitary Mandelbrot Set  (Read 1848 times)
0 Members and 3 Guests are viewing this topic.
kram1032
Fractal Senior
******
Posts: 1863


« on: April 23, 2013, 12:09:15 AM »

(accidentally posted early, still editing, come back a bit later)
The classic (pre-bulb) extension of the Mandelbrot-Set used to be based on Quaternions, since those are a fairly straight-forward extension of complex numbers.
However, there is another extension, that, in the "1-Dimensional" case (where we deal with complex numbers as dimensions) reduces to the complex numbers of norm 1. That would be the unitary group.

The unitary group has multiple parametrizations, one of which is: \left(<br />\begin{array}\frac{2 e^{i q} \cos ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}} & -\frac{2 e^{i r} \sin ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}} \\ \frac{2 e^{i s} \sin ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}} & \frac{2 e^{i (-q+r+s)} \cos ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}}<br />\end{array}<br />\right)
with (p|q|r|s)\in \mathbb{R}.

I chose this parametrization, to make it easy to solve for the various variables. In this form, q, r and s are just phases, while the factors that involve p are between 0 and 1. There are more beautiful parametrizations, however, they make it harder to solve for p, because they are between -1 and 1 and thus mix with the three complex phases, making the seperation more complicated.

Despite that , I still have four different possible values for p after squaring. Solving for the other things isn't as hard.
The main issue I have is that some of the expressions will not reduce all too nicely

Here you go, for the squared case:
a\to a^2
p\to \left( 2 \tan ^{-1}\left(\frac{\sqrt{2} |\sin (p)| \sqrt{\left|\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right|}}{\sqrt[4]{(\cos (2 p)+3)^2-4 \sin ^4(p) \cos^2\left(q-\frac{r}{2}-\frac{s}{2}\right)}}\right) \vee -2 \tan ^{-1}\left(\frac{\sqrt{2} |\sin (p)| \sqrt{\left|\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right|}}{\sqrt[4]{(\cos (2 p)+3)^2-4 \sin ^4(p) \cos ^2\left(q-\frac{r}{2}-\frac{s}{2}\right)}}\right)\vee -2 \tan ^{-1}\left(\frac{2 |\sin (p)| \sqrt{\left|\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right|}}{\sqrt[4]{-8 \sin ^4(p) \cos (2 q-r-s)+28 \cos (2 p)+\cos (4 p)+35}}\right)\vee 2 \tan^{-1}\left(\frac{2 |\sin (p)| \sqrt{\left|\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right|}}{\sqrt[4]{-8 \sin ^4(p) \cos (2 q-r-s)+28 \cos (2 p)+\cos (4 p)+35}}\right) \right)
(where \vee is the symbol for "or", so it's one of the four possibilities. If you were to plot them, you'd see that they are different in just their phase and sign. They are almost the same functions)
q \to \arg \left(\frac{8 e^{2 i q} \cos ^4\left(\frac{p}{2}\right)-8 \sin ^4\left(\frac{p}{2}\right) e^{i (r+s)}}{\sqrt{-8 \sin ^4(p) \cos (2 q-r-s)+28 \cos (2 p)+\cos (4 p)+35}}\right)
r \to \frac{1}{2} (3 r+s) \text{sgn}\left(\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right)
s \to \frac{1}{2} (r+3 s) \text{sgn}\left(\cos \left(q-\frac{r}{2}-\frac{s}{2}\right)\right)

this works in four complex dimensions:
w=a \frac{2 e^{i q} \cos ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}}+c_1
x=-a \frac{2 e^{i r} \sin ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}}+c_2
y=a \frac{2 e^{i s} \sin ^2\left(\frac{p}{2}\right)}{\sqrt{\cos (2 p)+3}}+c_3
z=a \frac{2 \cos ^2\left(\frac{p}{2}\right) e^{i (-q+r+s)}}{\sqrt{\cos (2 p)+3}}+c_4

Since all of those are complex numbers, you also can use four complex constants rather than real ones.

This still needs a bit of work, particularly, I haven't yet shown the inverses for the last four functions yet, which are the actual iteration functions, but it's late now. If anyone is willing to test out this right now admittedly rather messy set, it shouldn't be too hard to find the corresponding inverses.

You'd first have to convert from w, x, y, z to a, p, q, r, s, then replace the four by their squared analogues, then back-convert to w, x, y, z and add constants. This is directly analogous to how you'd do it with any mandelbulb variant, converting between polar and rectangular coordinates.

I'm not sure how best to visualize it as it's effectively an 8-dimensional space to search, but trying out all the major planes sure is a good start.
« Last Edit: April 23, 2013, 01:18:53 AM by kram1032 » Logged
Tglad
Fractal Molossus
**
Posts: 703


WWW
« Reply #1 on: April 23, 2013, 05:01:32 AM »

I can't say I understand... if we're taking the norm 1 complex numbers then the z^2 works but the +C will take the value outside of the group.
Logged
simon.snake
Fractal Bachius
*
Posts: 640


Experienced Fractal eXtreme plugin crasher!


simon.fez SimonSideBurns
« Reply #2 on: April 23, 2013, 03:51:07 PM »

Whoosh!

That was the sound of that going over my head extremely fast!
Logged

To anyone viewing my posts and finding missing/broken links to a website called www.needanother.co.uk, I still own the domain but recently cancelled my server (saving £30/month) so even though the domain address exists, it points nowhere.  I hope to one day sort something out but for now - sorry!
kram1032
Fractal Senior
******
Posts: 1863


« Reply #3 on: April 23, 2013, 07:28:06 PM »

Tglad. Correct and that +C part is what I'm working on right now.
Logged
KRAFTWERK
Global Moderator
Fractal Senior
******
Posts: 1439


Virtual Surreality


WWW
« Reply #4 on: April 24, 2013, 10:23:01 AM »

Those formulas are as beautiful as a close up of the mandelbulb!
Love the look of it, understand none of it!  afro

I hope it will lead to something interesting Kram!  A Beer Cup
Logged

kram1032
Fractal Senior
******
Posts: 1863


« Reply #5 on: April 25, 2013, 03:17:33 PM »

I've investigated further and as Tglad hinted at, it's not at all trivial to find a way to "add" in this group without leaving it.
What I need now is a way to have a unitary matrix around any center, rather than around the origin. I'm not quite sure about how to do this.

Just as a comparison:

\left(<br />\begin{array}{cc} w+i x & y+i z \\ -y+i z & w-i x<br />\end{array}<br />\right)
This is a generic quaternion, written as a matrix. If you add any matrix of the same form to it, it will still be a quaternion, and the same is true for multiplication.
Furthermore, if you take the conjugate transpose of this matrix, that is, you mirror it along the \-diagonal and flip the signs of all imaginary values, if you take this new matrix and multiply it to your original matrix, you end up with the squared norm of your quaternion.

Writing this in polar form would be:
r \left(<br />\begin{array}{cc} e^{i p} \cos (a) & e^{i q} \sin (a) \\ -e^{-i q} \sin (a) & e^{-i p} \cos (a)<br />\end{array}<br />\right)<br />
which is close to some forms of the general unitary matrix.

Here I would have:
\begin{array}{cc} r=\sqrt{w^2+x^2+y^2+z^2} & w=r \cos (a) \cos (p) \\ a=\arg \left(\sqrt{w^2+x^2}+i \sqrt{y^2+z^2}\right) & x=r \cos (a) \sin (p) \\ p=\arg (w+i x) & y=r \sin (a) \cos (q) \\ q=\arg (y+i z) & z=r \sin (a) \sin (q)<br />\end{array}
There is a little problem here: a could have been from any quadrant of the complex unit circle, however, this reverse mapping suggests, it only comes from the first (This is analogous to what I tried to prevent to happen in the unitary matrix).

Now, the typical way to write a Unitary matrix (a nicer form than I originally put) is this:
\left(<br />\begin{array}{cc} \cos (a) e^{i (p-s)} & \sin (a) e^{i (p-t)} \\ -\sin (a) e^{i (q-s)} & \cos (a) e^{i (q-t)}<br />\end{array}<br />\right)

If you compare the two, the quaternionic matrix in polar form and the unitary matrix, you'll notice that they are really similar. The unitary matrix essentially differs in that it has two more complex phases.
Now, all I need is to find a way how to rewrite this unitary matrix, which currently is in "polar" form (*), into the cartesian form of the original quaternion matrix.
Once I have that form in a way that's decent to work with, it should be trivial to define addition in a way exactly analogous to the quaternion case.

(*) note that the unitary matrix lacks a radius parameter. This is because unitary matrices are not supposed to change the length of vectors. Unitary matrices are analogous to unit-quaternions which can be used for rotation.
Extending to full quaternion space simply requires to add a radius. Equivalently, you can add a radius to the unitary matrix above and you're set.

What this extension will bring is the ability to have both rotations and reflections in a single generic operation, potentially giving rise to new pretty pictures we haven't seen before.
It will contain an infinite number of copies of the typical, boring Quaternion-Mandelbrot set, and thus an infinite number of Mandelbrot-sets, but maybe, reflections add in something nice we didn't have before.
« Last Edit: April 25, 2013, 03:22:46 PM by kram1032 » Logged
cKleinhuis
Administrator
Fractal Senior
*******
Posts: 7044


formerly known as 'Trifox'


WWW
« Reply #6 on: April 25, 2013, 03:38:19 PM »

i have no idea what you are talking about, do you have a clue where to find information on the unitary group !?
Logged

---

divide and conquer - iterate and rule - chaos is No random!
Alef
Fractal Supremo
*****
Posts: 1174



WWW
« Reply #7 on: April 25, 2013, 05:48:42 PM »

Isn't that an octonions?
Logged

fractal catalisator
kram1032
Fractal Senior
******
Posts: 1863


« Reply #8 on: April 25, 2013, 06:07:39 PM »

Alef, no, octonions are 8-real-dimensional and can "only" do 8-or-smaller-dimensional rotation.

Unitary transforms are those that preserve all angles and lengths. That's possible in various ways besides rotation. One of them being reflection.
In 2 (real) dimensional space, rotation and reflection are all the possibilities. In higher dimensions, even more complex things are possible.

Equivalently, they preserve the dot-product between two vectors. (Quaternions do this too but unitary transforms are the most general of that sort)
They also have nice properties like U^*U=UU^*=I meaning, that the inverse of a unitary matrix is simply its conjugate transpose. This also is true for quaternions and complex numbers.

Furthermore, these unitary matrices are the group that describes quantum-mechanics.

cKleinhuis:
Wikipedia on unitary matrices
Wikipedia on the unitary group
Wolfram MathWorld on unitary matrices

Quick crashcourse for those not familiar with symmetry groups, matrices and linear transformation:
Those are essentially synonymous.
Symmetry groups are systems that have elements which do not change under a given transformation.
Matrices are just a block of numbers. As far as I know, all finite groups can be represented as matrices.
A linear transformation is just a matrix multiplication. If you have a vector and multiply it with any matrix, you transformed it linearly. If that matrix corresponed to a given group, certain points will have remained unchanged.

For instance:
A planar reflection matrix will keep all points along a plane unchanged. Lengths and angles are not affected either.
A rotation matrix will rotate the system around an axis. This axis of rotation stays unchanged. Similarly, all lengths and angles stay the same.
A matrix that scales a linear system will preserve all angles as well as the center point of the transformation.
« Last Edit: April 25, 2013, 06:18:57 PM by kram1032 » Logged
fractower
Iterator
*
Posts: 173


« Reply #9 on: April 25, 2013, 07:36:37 PM »

It seems that most if not all interesting escape time fractals have some non-reversible operation. For example the square in the Mandelbrot results in a 2 to 1 mapping of the complex plain. The M-box has folds that result in a 2 (or 3) to 1 mapping. Unitary transformations are reversible by definition. Are you panning to add something non-reversible. It will be interesting to see what you come up with in either case.
Logged
cKleinhuis
Administrator
Fractal Senior
*******
Posts: 7044


formerly known as 'Trifox'


WWW
« Reply #10 on: April 25, 2013, 07:59:21 PM »

Thx kram

addition is problematic with matrices as well. Hence the need for homogonous matrices
what about includinga modulus group? But why not allow the addition being outside?since we want the mset in the xy cutplane staying alive wink
Logged

---

divide and conquer - iterate and rule - chaos is No random!
kram1032
Fractal Senior
******
Posts: 1863


« Reply #11 on: April 26, 2013, 01:34:07 AM »

fractower, unitary matrices are reversible as long as you stick to multiplication. For that matter, so are quaternions and complex numbers.
The unitary group U(1), as already said, precisely is the unit-length complex numbers.
The quaternions of unit length also are a sub-group of the unitary group U(2) which is what I'm trying to use here, except, I want to add in a radius to the unitary matrix.
This radius might ultimately be what causes irregularity. Also, without it, there is no hope of allowing a flexible addition procedure, since all additions would have to land inside the group again, which severely limits what is allowed. (In fact, all allowed additions in that case could be directly and efficiently emulated using a multiplication instead, meaning, they would really just be multiplication in disguise)

cKleinhuis: Basic Matrix addition is very easy, actually. The tricky part really just is to stay inside the group you are currently traversing.
Also, since this is a direct generalization of quaternions as well as complex numbers, the xy-cutplane should be perfectly preserved.
Just remapping what ever you have to what ever is closest inside the group seems rather artificial. It is a possibility but I'd prefer to avoid that. Ideally, I want a direct representation like for the quaternions.
Logged
kram1032
Fractal Senior
******
Posts: 1863


« Reply #12 on: April 27, 2013, 12:25:13 PM »

Ok, so I found a new form of the unitary group with radius, and that should make it fairly simple.
I can't get rid of one of the phases, but I can seperate it out in a decent way.

So, any unitary matrix can be written in the form:
\left(<br />\begin{array}{cc} w+i x & y+i z \\ -e^{i p} (y-i z) & e^{i p} (w-i x)<br />\end{array}<br />\right)

Now, at least for w,x,y and z, it's obvious how to add a value to this. Just go with w1+w2=w3, etc.
For the phase factor p, it might not be possible to define a consistent, non-artificial addition.
This worries me a bit. All this does is interpolating between a whole bunch of quaternion-like structures, with the quaternions you know and love happening for p=2\pi n where n\in \mathbb{Z}.
For the opposing case with p=2\pi n+\pi where n\in \mathbb{Z}, you get what corresponds to a typical reflection, instead of rotation. All in between gives you some transforms that are somewhere between reflections and rotations. I can only hope, that something interesting lies in that space. I'm about to write down implementable square-M-Set equations for this, where summing over the p values isn't allowed. ALTHOUGH...
I could potentially add a way to also add phases. It would be slightly artificial but it would still not leave the space and might add some interesting extra dynamics. (It also would add another parameter to play with)
In any case, if nothing else, this probably will lead to some nice vary-the-p-parameter animations between possibly before unseen variants of the quaternion mandelbrot set.
« Last Edit: April 27, 2013, 03:58:40 PM by kram1032 » Logged
kram1032
Fractal Senior
******
Posts: 1863


« Reply #13 on: April 27, 2013, 01:03:17 PM »

Without phase addition (here, you have to always match the phase of c with the phase of z which changes during squaring, so it is also slightly artificial) :
\left(Z|C\right)\in \mathbb{U\left(2\right)}\times \mathbb{R}^+_0}, Z\to Z^2+C:
Z=\left(w,x,y,z,p\right)
C=\left(a,b,c,d,q\right)
Z\to Z^2=\\w\to w^2-x^2-\left(y^2+z^2\right)\cos\left(p\right)\\x\to 2 w x - \left(y^2+z^2\right)\sin\left(p\right)\\y\to w y - x z + \left( w y + x z \right)\cos\left(p\right)+\left(x y - w z\right)\sin\left(p\right)\\z\to x y + w z + \left(w z - x y\right)\cos\left(p\right)+\left(w y + x z\right)\sin\left(p\right)\\p\to 2p := q

and then

Z\to Z+C =\\w\to w+a\\ x\to x+b\\ y\to y+c\\ z\to z+d \\q = p

Repeat.

The q=p part is supposed to mean, that what ever the current phase of Z is, take it as phase for C.

Next I will try to give a form that allows C to have a phase independent of Z, even if, as already said, that definition will be slightly arbitrary.

Power n should also be easily possible, but as usual, the complexity of this will go up a lot in that case.
« Last Edit: April 27, 2013, 01:25:06 PM by kram1032 » Logged
kram1032
Fractal Senior
******
Posts: 1863


« Reply #14 on: April 27, 2013, 01:18:03 PM »

Ok, so keeping everything else the same, define the sum of phases (p|q) to be:

p+q := \arg \left(e^{i \phi} \left(e^{i p}+e^{i q}\right)\right)
with \phi being a tweak- /animatable parameter, defaulting to 0.

In that case, instead of setting C's current phase to what ever Z's phase is, you can set them to be independend.

\left(Z|C\right)\in \mathbb{U\left(2\right)}\times \mathbb{R}^+_0}, Z\to Z^2+C:
Z=\left(w,x,y,z,p\right)
C=\left(a,b,c,d,q\right)

Z\to Z^2=\\w\to w^2-x^2-\left(y^2+z^2\right)\cos\left(p\right)\\x\to 2 w x - \left(y^2+z^2\right)\sin\left(p\right)\\y\to w y - x z + \left( w y + x z \right)\cos\left(p\right)+\left(x y - w z\right)\sin\left(p\right)\\z\to x y + w z + \left(w z - x y\right)\cos\left(p\right)+\left(w y + x z\right)\sin\left(p\right)\\p\to 2p


Z\to Z+C =\\w\to w+a\\ x\to x+b\\ y\to y+c\\ z\to z+d \\p \to \arg \left(e^{i \phi} \left(e^{i p}+e^{i q}\right)\right)

If it helps, the complex argument function can be written in terms of real functions as
\tan ^{-1}(-\sin (a) \sin (p)+\cos (a) \cos (p)-\sin (a) \sin (q)+\cos (a) \cos(q),\sin (a) \cos (p)+\cos (a) \sin (p)+\sin (a) \cos (q)+\cos (a) \sin (q))
- Careful though: as written here, it's \tan ^{-1}(\mathbb{\R},\mathbb{\I}). In most implementations, Atan2 has the real and imaginary part filpped.

There is one more natural definition of phase addition that does not rely on any additional parameter, and you can find it in the next post, where the whole algebra is defined in terms of vectors instead of matrices, so it's easy to code them together.

In the end it turns out that this formulation is 5-dimensional.
« Last Edit: April 27, 2013, 02:36:51 PM by kram1032 » Logged
Pages: [1] 2 3   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
3D Mandelbrot (my 76. Attempt) 3D Fractal Generation trafassel 8 4372 Last post May 30, 2010, 09:17:58 PM
by kram1032
3D Mandelbrot (a newbies attempt) The 3D Mandelbulb gengis 4 4154 Last post January 03, 2011, 11:10:27 AM
by EvaB
Relocated: 3D Mandelbrot (a newbies attempt) 3D Fractal Generation Nahee_Enterprises 0 1271 Last post September 12, 2010, 11:23:01 PM
by Nahee_Enterprises
3d Mandelbrot attempt Theory « 1 2 » M Benesi 20 9358 Last post March 12, 2011, 02:36:42 AM
by M Benesi
Another 3-D mandelbrot attempt (new) Theories & Research msltoe 5 536 Last post January 11, 2013, 03:49:42 AM
by jehovajah

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.173 seconds with 24 queries. (Pretty URLs adds 0.01s, 2q)