Slightly extended Newton method fractals

  • 6 Replies
  • 253 Views

0 Members and 1 Guest are viewing this topic.

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« on: September 11, 2019, 02:57:39 PM »
When reading the current threads about root finding methods and Newton fractals,
   https://fractalforums.org/fractal-mathematics-and-new-theories/28/finding-all-roots-of-a-polynomial-with-mathematical-guarantee/2959 , and
   https://fractalforums.org/fractal-mathematics-and-new-theories/28/newton-hines-fractals/2737
I remembered that I wanted to write something about own experiences on variations an mutations on Newton style fractals.

Since I have now a bit more time than usual I would like to start a loose series about several variations in that area.

My approach contains much less mathematics than for instance the above linked threads. It is more "try it, and look what happens".
In several cases one may even doubt a matematical meaningfulness.
But anyway - as long as the resulting pictures are nice enough it doesn't matter to me ;-)

In fact the root of these variations goes back to times where calculation was  still expensive.
The thought was: 
Take a simple method that shows fast results, and then extend it systematically.
After such extension it may be possible to vary a parameter, or to change a power of the polynomial - without disturbing the complete picture (which is usually the problem with mutating simple formulas).

You will find extensions that contain for instance applications of the Newton methods on functions with multiple variables, some use of n-dimensional numbers, or matrices, or cases in which the Newton method is applied to the result of a Newton method, applied to the result of...

There is one hint which may look a bit mathematically though:
To explain what I have done I will use a specific notation.
When I write
   \( x \leftarrow N[N[f(x,y) , x] - x , y] \)
then I mean:
   1.  Take a function with two variables ( \( f(x,y) \) ) , apply the Newton method with respect to x when it comes to the differentiation ( \( N[... , x]  \) )
   2.  Subtract x from the resulting formula
   3.  Take the function you have received in 2. , and apply the Newton method with respect to y when it comes to the differentiation ( \( N[... , y]  \) )
   4.  Iterate the resulting formula (only x in this case) and look whether you get a fractal.

I will add formulas and parameters created in UF5. 
I will attach those files to each of my entries. Each will contain the params/formulas from the previous entries. This is because I had difficulties to replace attachments in existing entries.

Please do not hesitate to add your own examples, or other variations. - Have fun :-)

Linkback: https://fractalforums.org/fractal-mathematics-and-new-theories/28/slightly-extended-newton-method-fractals/3067/

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« Reply #1 on: September 11, 2019, 03:00:30 PM »
Double variable variation.

In this answer I want to show a quite simple variation: 
The start is a function with two variables.
There are two flavors. Either just one variable is iterated (the other is used like a fix parameter);
or both variables are iterated in parallel, and a combination of both is checked for bailout/epsilon.

For today there are four examples:
dv002 -
   \( z \leftarrow N[N(sin(k*z)-r,k)-k,z] \) , only z is calculated; k remains fix during the iterations

dv006 -
   \( z \leftarrow N[N((z^j)-r-j,j)-j,z] \) , only z is calculated; j remains fix during the iterations

dv008 -
   \( z \leftarrow N[N((z-k)^j-r*z,k),z] \), only z is calculated; j remains fix during the iterations
   NOTE: 
   The attached sample is already a (simple) mutation: 
   One of the parameters in the resulting rational function is multiplied by a free parameter.
   You can see that the resulting picture has not anymore much to do with a Newton fractal - but has still a good looking spiral pattern.
   Hence it is a good example of what I want to reach....

dv010 -
   \( x \leftarrow N[(x-1/y)^j - 1 , x] \)
   \( y \leftarrow N[(x-1/y)^j - 1 , y] \)
   \( z \leftarrow x + y \) -- and z is checked for bailout respective epsilon.

   NOTE: 
   In a ceratin way this last example may show already a variation.
   I have recalculated the formulas to check something.
   And I came to a different result which does not look equivalent.
   In result we have in the UF formula doublevar-010 four types:
   - "dv10+a"  -  N[(x-1/y)^j-1], derived for x and y parallel
   - "dv10b+c"  -  N{N[(x-1/y)^j-1]} ,x]-x,y}-y; and ...,y]-y,x}-x, parallel
   - "dv10 new"  -  Recalculated formulas of N{N[(x-1/y)^j-1]} ,x]-x,y}-y; and ...,y]-y,x}-x, parallel
   - "dv10 new mut1"  -  Same as before, with a trivial variation
« Last Edit: September 11, 2019, 04:19:51 PM by gannjondal »

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« Reply #2 on: September 14, 2019, 06:20:48 PM »
Today I want to share part 3-5 of this series.

Topic is:  Extension by using higher dimensional numbers.

3D'ish triplex and quaternion variations are not discussed here (For these I had shared code for MB3D on another post).

Here I would here like to go back to the 2D roots.
In fact todays variations have their roots in my very first contact to this topic:
There is an ooold article (sorry, in German only; but the formulas should speak for themselves) that originally brought me to the idea:
Gabriele Buhren, Fraktale aus Polynomen

All of today's variations use a common calculation of root findings for \( z^3+1=0 \) . That was enough effort already ;-)

The shapes are not very spectacular. But I think the code provides a good start point for further mutations.

4-dimensional variation (not quaternion) of Newton calculation

The definition of the numbers has been discussed on other threads already. 
In short:
\( q = (a+bi) + (c+di)*j = z1+z2*j \)
\( j^2 = -i \)
\( ij = ji  \)


Code: [Select]
   zs1=z1,zs2=z2
   h=3*sqr(z1*z1-i*z2*z2)
   h1=z1-@mutil1*(z1/3+(c1*z1*z1+i*z2*(c1*z2-2*c2*z1))/h)
   z2=z2-@mutil2*(z2/3+(z1*(c2*z1-2*c1*z2)+i*c2*z2*z2)/h)
   z1=h1
   #z = @z1_weight*z1*z1+@z2_weight*z2*z2

The pictures that contain *mut* in their names are from a simple mutation that make a mistake in the calculation of the quotient q.

UF params will be attached to the last of today's posts...
« Last Edit: September 14, 2019, 08:26:07 PM by gannjondal »

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« Reply #3 on: September 14, 2019, 06:33:31 PM »
6-dimensional numbers, variant 1

Definition of the numbers:
\( s = z1 + z2*j + z3*j^2 \)
\( j^3=-i \)
conjugate: \( s'=(z1^2+i*z2*z3) + j*(-i*z3^2-z1*z2) + j^2*(z2^2-z1*z3) \)

Calculation (main part):
Code: [Select]
    zs1=z1, zs2=z2, zs3=z3
    z1q=z1*z1, z2q=z2*z2, z3q=z3*z3
    q= z1*z1q-i*z2*z2q-z3*z3q+3*i*z1*z2*z3, q=3*q*q
    h1= i*z2*z3+z1q
    h2= -i*z3q-z1*z2
    h3= z2q-z1*z3
    s1= h1*h1-2*i*h2*h3
    s2= 2*h1*h2-i*h3*h3
    s3= 2*h1*h3+h2*h2
    z1= z1 - @mutil1*(z1/3+(c1*s1-i*c2*s3-i*c3*s2)/q)
    z2= z2 - @mutil2*(z2/3+(c1*s2+c2*s1-i*c3*s3)/q)
    z3= z3 - @mutil3*(z3/3+(c1*s3+c2*s2+c3*s1)/q)
    #z = @z1_weight*z1*z1 + @z2_weight*z2*z2 + @z3_weight*z3*z3

The pictures that contain -m0*- in their names are from a simple mutation that make a configurable change in the calculation of the quotient q.

All UF formulas and paramenters are attached in the last of the three today's posts
« Last Edit: September 14, 2019, 08:28:39 PM by gannjondal »

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« Reply #4 on: September 14, 2019, 06:41:12 PM »
6-dimensional numbers, variant 2

Definition of the numbers:
  \( s = z1 + j*z2 + k*z3 \)
  \( j^2= -(1+i); k^2= (1+i) \)
   limited commutativity:  \( jk=-kj= 1-i \)
   conjugate: \( s' = z1 - j*z2 - k*z2 \)
   definition of the division:  \( c/s = (s`*c)/(s`*s) \)

Calculation.
Use it with care. I think  there is a mistake - I don't get the 9-color basic star as for version 1.
So if anyone is bored, and want to try to re-calculate, please feel free...   :P

Code: [Select]
    zs1=z1, zs2=z2, zs3=z3
    z1q=z1*z1, z2q=(1+i)*z2*z2, z3q=(1+i)*z3*z3
    q= z1q+z2q-z3q, q=3*q*q
    s1= z1q-z2q+z3q
    s2= -2*z1*z2
    s3= -2*z1*z3
    z1= z1 - @mutil1*(z1/3+(c1*s1+(1+i)*(c3*s3-c2*s2)-(1-i)*(c2*s3-c3*s2))/q)
    z2= z2 - @mutil2*(z2/3+(c2*s1+c1*s2)/q)
    z3= z3 - @mutil3*(z3/3+(c3*s1+c1*s3)/q)
    #z = @z1_weight*z1*z1 + @z2_weight*z2*z2 + @z3_weight*z3*z3
[\code]

Offline gannjondal

  • *
  • Fractal Fanatic
  • ***
  • Posts: 20
« Reply #5 on: September 29, 2019, 05:56:45 PM »
Here another variation of Newton method calculation, somehow related to the previous:

It again extends the number space, this time by calculating 2x2 matrices filled with complex values.
Again, the basic variation is nothing revolutionary and does not much more than to add some symmetry, but it opens new spaces for mutations.

Basic calculation of the 'correct' variant:

Code: [Select]
   det1=det, detq=det*det
   sp=z11+z22
   s1=z12*z21+z22*z22, s2=z11*z11+z12*z21
   a11=z11-@mutil11*(z11/3+(c11*s1-z12*c12*sp)/detq)
   a12=z12-@mutil12*(z12/3+(c12*s2-z21*c11*sp)/detq)
   a21=z21-@mutil21*(z21/3+(c21*s1-z12*c22*sp)/detq)
   z22=z22-@mutil22*(z22/3+(c22*s2-z21*c21*sp)/detq)
   z11=a11, z12=a12, z21=a21
   det=z11*z22-z12*z21

I am attaching again some samples.
The zip file contains *.upr, and *.ufm files that contain also the previous variations.

For the new samples:
- The new params matrix_2-2_complex-01-0* use the formula matrix_2-2_complex-01.
- The new params called matrix_2-2_complex-mut01-* use the formula matrix_2-2_complex-mut01, that adds some configurable yet simple mutations in the helper variables.

Offline gerrit

  • *
  • 3f
  • ******
  • Posts: 1840
« Reply #6 on: September 29, 2019, 10:18:01 PM »
Very nice images. These generalized Newton methods are very fertile.


clip
Neat variation of Newton's method

Started by Ebanflo on Share a fractal

1 Replies
325 Views
Last post April 17, 2018, 04:34:13 PM
by mrrudewords
clip
Brand New Method for True 3D Fractals.

Started by TylerSmith on Fractal Mathematics And New Theories

45 Replies
1088 Views
Last post November 26, 2019, 07:21:59 AM
by mclarekin
xx
UF extended/arbitrary precision

Started by FractalDave on UltraFractal

0 Replies
83 Views
Last post September 13, 2018, 06:14:36 PM
by FractalDave
clip
Newton-Hines fractals

Started by gerrit on Fractal Mathematics And New Theories

38 Replies
1732 Views
Last post October 01, 2019, 08:28:25 PM
by gerrit
clip
Slightly altered MandelBox

Started by kosalos on Programming

0 Replies
302 Views
Last post October 03, 2018, 07:15:22 AM
by kosalos