News: Did you know ? you can use LaTex inside Postings on fractalforums.com!

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

 Pages: [1]   Go Down
 Author Topic: Polynomial Menger Sponge  (Read 411 times) Description: 0 Members and 1 Guest are viewing this topic.
mclarekin
Fractal Senior

Posts: 1739

 « on: May 11, 2016, 01:52:13 AM »

Polynomial Menger Sponge

http://www.fractalforums.com/index.php?action=gallery;sa=view;id=19047

Polynomial Menger Sponge
 Logged
mclarekin
Fractal Senior

Posts: 1739

 « Reply #1 on: May 11, 2016, 07:16:14 AM »

Lately for Mandelbulber dev V2.08 we have been exploring Polynomials

z^2  +  z  +  c;

or written with some variable parameters added

newZ =  A * z^2  +  B * z  +  C;

The case, when A = 1 and B = 0, we get      z = z^2 + C ,     mandelbrot julia;

Collatz fractal is  also a  polynomial,  refer:

Wiki/Claude/Zebastian
https://en.wikipedia.org/wiki/Collatz_conjecture#Iterating_on_real_or_complex_numbers
http://www.fractalforums.com/fragmentarium/collatz-fractal/

Each  “z”   can be made conditionally unique by modification,

The polynomial  can be re-written  as:    newZ =  ( Za * Zb)    +   Zc  +  C;

examples of unique "z" conditions:
Za = (VectA + ScaleA * z )
Zb =  cos( pi * ScaleB * z)
Zc = fabs(z)
Zd = Box Offset
or infinitely more  complicated,    Ze =  (  Za + Zg + Zp  ……)

however, the more complicated functions,  require  longer render times and can make distance estimation  difficult.

In Mandelbulber dev V2.08  we currently have  a transform, Transf_Pwr2_Polynomial, which is coded as

newZ =   - (partA * fn(z))   + part B,  where

partA =  Za = (VectA + ScaleA * z )

fn(z) is various z_function options    e.g  Zb =  cos( pi * ScaleB * z) (default = Collatz)

partB  =  Zc + C   =    ScaleC * z + VectC.

Exploration to date, finds the easiest  usage is as a single iteration pre-transform,  and works very well with IFS especially Menger_Sponge, using analytic linear DE.
 Logged
 Pages: [1]   Go Down