• January 17, 2022, 04:53:44 PM

Author Topic:  Some old stuff, maybe fractal nostalgia  (Read 6009 times)

0 Members and 1 Guest are viewing this topic.

Offline gerson

  • 3c
  • ***
  • Posts: 823
Re: Some old stuff, maybe fractal nostalgia
« Reply #30 on: September 18, 2021, 11:50:08 PM »
each time more interesting...

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Swirls and Mirrors
« Reply #31 on: September 22, 2021, 01:37:53 AM »
Swirls and Mirrors (swirlbox)
Removed unecessary items from the formula. It came out of 3D (and buddhabrot).
It is mutch like Ducks or glyph fractal with chaotic ring based parameter space and symmetric (if mirror is present) julia sets. Works nicely with inside coloring method: Lyapunov (Lyapunov Forduckin), Mega Discrete Lagrangian Descriptors, wave trichrome or exponent smoothing (color methods that sums up iterations) and some 10 iterations. (or else it gets too dense).

Like this, consecutive transformations:

1. Mirror function (realy not necesary, but good for art)
Code: [Select]
;continiuous and seamless fold
zx = abs(zx-@Fold) - abs(zx+@Fold) + zx
zy = abs(zy-@Fold) - abs(zy+@Fold) + zy

or just
Code: [Select]
zx = abs(zx)
zy = abs(zy)

Or none
Code: [Select]
//...

Or spiral of complex z*c

Code: [Select]
;spiral, same as in complex numbers z=z*c
zzx=(zx*cx-zy*cy)
zzy=(zy*cx+zx*cy)
zx=zzx
zy=zzy
ENDIF


2. Scaling
Code: [Select]
zx = zx*@scale
zy = zy*@scale

3. Swirl transformation. This was a formula for gravitation waves of coliding black holes or something like that suggested by "kram1032" but maybe there are some changes now.
Code: [Select]
radius = sqrt( sqr(zx) + sqr(zy) )

angx=atan2(radius+1i*zx)
angy=atan2(zx+1i*zy)

zx= cos(@frequency*radius + @spin*angx)*radius + Cx
zy= sin(@frequency*radius + @spin*angy)*radius + Cy


4. Make complex z from zx and azy
Code: [Select]
z=zx+flip(zy)
with default
scale       = 0.75
Frequency  = 4
Spin       = 4
FoldLenght = 1


Ultra Fractal:
Quote
Swirlbox1 {
; Used this to test 3D Swirlbox.
; Patterns with inside colouring
; such as exponent smoothing or
; wave trichrome.
; or better Lyapunov Forducking and
; Mega Discrete Lagrangian Descriptors.


init:
float cx=0
float cy=0
float zx=0
float zy=0
float zzx=0
float zzy=0
float angx=0
float angy=0
float radius=0

IF (@settype=="Mandelbrot")
cx=real(#pixel)
cy=imag(#pixel)

ENDIF

IF (@settype=="Julia")
cx=real(@julia)
cy=imag(@julia)

zx=real(#pixel)
zy=imag(#pixel)
ENDIF

loop:
; consecutive transformations

   ;1
IF (@mirror=="Fold")
;continiuous and seamless fold
zx = abs(zx-@Fold) - abs(zx+@Fold) + zx
zy = abs(zy-@Fold) - abs(zy+@Fold) + zy
ELSEIF (@mirror=="Abs")
zx=abs(zx)
zy=abs(zy)
ELSEIF (@mirror=="None")
;nothing
ELSEIF (@mirror=="Spiral Z*C" )
;spiral, same as in complex numbers z=z*c
zzx=(zx*cx-zy*cy)
zzy=(zy*cx+zx*cy)
zx=zzx
zy=zzy
ENDIF

    ;2
;scaling
zx=zx*@scale
zy=zy*@scale


     ;3
;swirl transform.
radius = sqrt( sqr(zx)+sqr(zy) )

angx=atan2(radius+1i*zx)
angy=atan2(zx+1i*zy)

zx= cos(@frequency*radius+ @spin*angx)*radius +cx
zy= sin(@frequency*radius+ @spin*angy)*radius +cy

      ;4
; make complex z
z=zx+flip(zy)

bailout:
(abs(zx)+abs(zy)) <= @bailout
default:
title = "Swirls and Mirrors"
maxiter = 10
magn = 0.4

heading
caption = "Cosmos"
text="Circular patterns appears with good inside colouring, minimal max iterations like 10 and zooming in. Formula originated from equation for gravitation waves of collision of rotating neutron stars or something like that."
endheading

float  param scale
    caption = "Scale"
    default = 0.75
  endparam

float param  frequency
caption="Frequency"
default=4
endparam

float param   spin
caption="Spin Number"
default=4
endparam

param mirror
caption = "Mirror"
default = 0
enum="Fold" "Abs" "None" "Spiral Z*C"
endparam

float param Fold
caption = "Fold lenght"
default = 1
visible = (@mirror=="Fold")
endparam

  float param bailout
  caption = "Bailout value"
  default = 12
  endparam

heading
caption = "Julia Block"
endheading

param settype
caption="Set type"
default=0
enum="Mandelbrot" "Julia"
endparam

param switchsettype
caption = "switch to"
default = 1
enum = "Mandelbrot" "Julia"
visible = false
endparam

  complex param julia
    caption="Julia Seed"
    default=(0.3, 0.6)
    visible = (@settype=="Julia")
  endparam


switch:
type="Swirlbox1"
julia = #pixel
bailout=bailout
settype=switchsettype
switchsettype=settype
Fold=Fold
frequency=frequency
spin=spin
scale=scale
mirror=mirror
}
« Last Edit: September 22, 2021, 03:03:39 AM by Alef »
by Edgar Malinovsky aka Edgars Malinovskis.

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Some old stuff, maybe fractal nostalgia
« Reply #32 on: September 24, 2021, 12:56:08 AM »
Julia sets of swirl just with a scale and swirl additionaly rotated by z*c. Fun to explore. It was a formula for gravitational waves.

https://www.fractalforums.com/fractal-programs/problems-with-implementing-budhabrot-in-uf/msg55233/#msg55233
https://www.fractalforums.com/mandelbrot-and-julia-set/swirlbrot/
https://www.fractalforums.com/new-theories-and-research/swirlbox/

Swirl with scale


Swirl alsou with Z*C (in complex numbers this is additional rotation and scaling)

I guess some phisical process could look like that.


Next in TODO list is Orgform formulas of Fractint. Not all of them works in UF, throught. But there are lot of them and some have some merit. In Fractint there are even 3D formulas for mandelbrot set.

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Some old stuff, maybe fractal nostalgia
« Reply #33 on: September 25, 2021, 10:27:45 PM »
Before getting into Orgform there are some more swirls (with unecesary formula comlexity).

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: (mega)Cubic of Fractint
« Reply #34 on: October 10, 2021, 07:17:05 PM »
The original version is called "Cubic":

Code: [Select]
initialisation:
;Lee H. Skinner
  t=#pixel
  t3=3*t
  t2=t*t
  a=(t2+1)/t3
  b=2*a*a*a+(t2-2)/t3
  aa3=a*a*3
  z=-a

iteration loop:
  z=(z*z*z)-aa3*z+b


This could be rewriten in deoptimised form:

Code: [Select]
initialisation for the parameter space:
C= #pixel
Z= -C/3 - 1/(C*3)
Initialisation for Julia set:
Z= #pixel
C= @julia_seed


iteration loop:
z = z^3 -z*c^2/3 - 2*z/3 - z/(3*c^2) + 2*c^3/27 + 15*c/27 - 12/(27*c) + 2/ (27*c^3)


Suprisingly enought I had writen this equation on the 1st try without any error. I have no idea about math behind this, or else this transformation could be expanded to power 2. Is it something geometrical/topological? This formula was found in many formula files (maybe becouse of interesting shape but alsou zooms are OK) including ik.ufm under the name CBAP. What is CBAP anyway?

Julia sets - pretty uninteresting, just a version of power 3.
dual bailout version ( convergent and divergent ) - unremarkable. (pic2)
Abs version - very interesting. (pic3)

p.s.
Search for a fractal gives
https://web.archive.org/web/20120123105029/http://klippan.seths.se/ik/CubTut/cubictut.html
and
Quote
The sub-modules, all dealing with cubics, are divided
into two groups. In the first group I have replaced the standard formula, z -> p(z)
= z^3 - 3a^2 z + b with some other variants used by the great mathematicians.
....

The second group. Other methods of displaying 2D images of the standard-
formula:

1) CBAP and 2) CCAP: These variants of cubics occur in some of the applications
of Ferguson. He has obtained the formulas from a Professor Holger Jaenisch who,
I suspect has obtained them from the very big mathematicians on the field of
iteration of cubic polynomials. The reason for this assumption is that I've seen
details of both in a slide series from Art Matrix in the early nineties. In one of the
scenes in the two hours video-show "MANDELBROT SETS and JULIA SETS"
from the above company, there is a deep zoom sequence in CBAP. Asking
Ferguson for the source code of these variants, he displayed the CBAP code along
with some of his images on abpf. Later he sent this and the below formulas to me
by email (thanks Steve!). The quasi-code runs as:

....
In the cubic case there are two complex parameters, “a” and “b”, i e there are the axis a_real, a_imag, b_real, and b_imag.
That means that the cubic parameter space is a four dimensional hyper space!!!
....
The last picture (figure 7) is a two-dimensional slice from cubic parameter space

...
That part of cubic parameter space for which one critical point has an orbits that escapes to infinity and the other critical point has a bounded orbit, i e that belongs to either M+ or M- but not both,
is called B-locus (I guess B stands for boundary).
So this is 2D representation of mathematical object from higher dimensions, I guess.
« Last Edit: October 10, 2021, 08:54:28 PM by Alef »

Offline 3DickUlus

  • Administrator
  • *******
  • Posts: 2698
Re: Some old stuff, maybe fractal nostalgia
« Reply #35 on: October 11, 2021, 11:46:41 AM »
Lee H. Skinner Cubic

...added to MDLD frag  :thumbs:

edit: Cubic Ducks?
« Last Edit: October 11, 2021, 12:07:30 PM by 3DickUlus »

Offline marcm200

  • 3e
  • *****
  • Posts: 1107
Re: (mega)Cubic of Fractint
« Reply #36 on: October 11, 2021, 04:33:21 PM »
This could be rewriten in deoptimised form:

iteration loop:
z = z^3 -z*c^2/3 - 2*z/3 - z/(3*c^2) + 2*c^3/27 + 15*c/27 - 12/(27*c) + 2/ (27*c^3)[/code]
Interesting c-transformation. I especially like the large hole-y, multiply connected sets ("normal_dualbailout", left).

I experiemnted a bit and encountered a set that surprised me: c=0.8+0.32*i using your expanded form, using a full abs computed in the 2-square.
Code: [Select]
w = |Re(z)| + i*|Im(z)|;
z_new = w^3+(-1.171000435988902133+0.13898454221165271183i)*w+(0.033436348763786892524+0.30713923580606311559i)

It shows a 2-cycle (yellow, upper left image); red are the immediate and attraction basins; black is escaping, nothing special there.  What surprised me was the gray area. It is bounded, but does not converge to this cycle or forms a different one.

So I was wondering: Is this just a numerical effect (50,000 maxit, double precision) and it will enter a cycle?
Or an obvious implementation problem (I coded the routine twice from scratch)?
Is this a common behaviour with abs()-treated functions? The set seems to be multiply connected (there are some black (=escaping) slits in the red region). Maybe the gray area is just a very large not-yet-escaped part?

I checked the orbit of a point from the red region (upper right), which shows the expected trajectory of an iteration circling into a 2-cycle. A buddha-style heatmap only depicted one hot spot at the periodic point (not shown).

Looking at the orbit of one pixel from the gray area, however turned out differently (lower left). Two large extended spots, and a heatmap of how often a pixel was hit in the orbit showed a more smeared-out behaviour  (lower right), so as if the orbit jumps around there, slowly drifting outwards (to the blue cold region) but not converging to anything.

Usually, bounded area in the polynomial case for me means interior of a Fatou component of the filled-in Julia set. Or does the abs-version have Julia set boundaries with buried area-bearing components?

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Lyapunov Mandelbrot
« Reply #37 on: October 15, 2021, 10:22:32 PM »
Lyapunov Mandelbrot. Idea is as follows.
Start with 2 initial conditions, original and perturbed using polar coordinates:
Code: [Select]
Mandelbrot set:
  Z0= 0
  C0= #pixel
  Z1= 0
  C1= #pixel + magnitude*( cos(argument) + 1i*sin(argument) )

Julia set:
  Z0= #pixel
  C0= @julia
  Z1= #pixel
  C1= @julia + magnitude*( cos(argument) + 1i*sin(argument) )

Iterate 2 formulas, original and perturbed:
Code: [Select]
Z0 = Z0^@power + C0
Z1 = Z1^@power + C1

Calculate Z value for color algorithms:
Code: [Select]
Z = (Z1+Z0)*0.5
Bail out iterations on reaching margin of difference between formulas:
Code: [Select]
bailout:
|Z0-Z1|<@bailout


Original formula did not worked with most of color methods (It did not had a Z value) and not had exact corespondence bewteen (mandelbrot set) parameter space and julia set say for burning ship fractal.

Quote
LyapunovMandel        { ; Morgan L. Owens <......@nznet.gen.nz>
                        ; Thu, 25 Jul 2002 20:49:19
  narg=real(p2)
  nmag=imag(p2)
  bailout=4*(real(p3)==0)+real(p3)*(real(p3)!=0)
  z0=c0=pixel
  z1=c1=pixel+nmag*(cos(narg)+(0,1)*sin(narg))
:
  z0=z0*z0+c0
  z1=z1*z1+c1
  cabs(z0-z1)<bailout
}
Quote
LyapunovJulia         { ; Morgan L. Owens <pac****@nznet.gen.nz>
                        ; Thu, 25 Jul 2002 20:49:19
  narg=real(p2)
  nmag=imag(p2)
  perturb=nmag*(cos(narg)+(0,1)*sin(narg))
  bailout=4*(real(p3)==0)+real(p3)*(real(p3)!=0)
  z0=pixel
  c0=p1
  z1=z0+perturb
  c1=c0+perturb
:
  z0=z0*z0+c0
  z1=z1*z1+c1
  cabs(z0-z1)<bailout
}

In this way different formulas could be put together creating hybrid sets but they need to be numericaly simmilar. Mandelbrot set and Mandelbrot set, Burning Ship, Buffalo, Minkowski space (split complex) mandelbrot.


Ultra Fractal:
Quote
LyapunovMandelbrot {
;from Fractint
; Morgan L. Owens <******@nznet.gen.nz>
; Thu, 25 Jul 2002 20:49:19
;...
; corrected and expanded by Edgars Malinovskis
; https://fractalforums.org/share-a-fractal/22/some-old-stuff-maybe-fractal-nostalgia/

global:
float argument=real(@polarC)
float magnitude=imag(@polarC)

init:

IF (@settype=="Mandelbrot")
  Z0= 0
  C0= #pixel
  Z1= 0
  C1= #pixel + magnitude*( cos(argument) + 1i*sin(argument) )

ELSE
  Z0= #pixel
  C0= @julia
  Z1= #pixel
  C1= @julia + magnitude*( cos(argument) + 1i*sin(argument) )

ENDIF

loop:

; core algorithm
IF (@sets=="2 Mandelbrot sets")
Z0 = Z0^@power + C0
Z1 = Z1^@power + C1

ELSEIF (@sets=="Mandelbrot N BurningShip")
Z0 = Z0^@power + C0
Z1 = abs(Z1^@power + C1)

ELSEIF (@sets=="Mandelbrot N Buffalo")
Z0 = Z0^@power + C0
Z1 = abs(Z1^@power) + C1

ELSEIF (@sets=="2 Minkowski space sets")
;split complex
;zzx=sqr(zx) + sqr(zy)
;zzy=2*zx*zy

Z0= sqr(real(Z0)) + sqr(imag(Z0)) + flip(2*real(Z0)*imag(Z0)) + C0
Z1= sqr(real(Z1)) + sqr(imag(Z1)) + flip(2*real(Z1)*imag(Z1)) + C1
ELSEIF (@sets=="Minkowski and Mandelbrot")
Z0= sqr(real(Z0)) + sqr(imag(Z0)) + flip(2*real(Z0)*imag(Z0)) + C0
Z1 = Z1^@power + C1

ELSEIF (@sets=="Minkowski and Buffalo")
Z0= sqr(real(Z0)) + sqr(imag(Z0)) + flip(2*real(Z0)*imag(Z0)) + C0
Z1 = abs(Z1^@power) + C1

ENDIF



; adds more variety, not just typical mandelbrot set
IF (@function=="None")
ELSEIF (@function=="Burning Ship")
Z0= abs(Z0)
Z1= abs(Z1)
ELSEIF (@function=="Perpendicular")
Z0= abs(real(Z0))-flip(imag(Z0))
Z1= abs(real(Z1))-flip(imag(Z1))
ENDIF


;Calculate standart Z for color methods using Z value. (most)
Z = (Z1+Z0)*0.5

bailout:
|Z0-Z1|<@bailout

default:
title = "Lyapunov Mandelbrot"
periodicity = 0
method = multipass

complex param polarC
caption = "argument and magnitude"
default = (0,-0.45)
endparam

param sets
caption="Sets to calculate"
default=0
enum="2 Mandelbrot sets" "Mandelbrot N BurningShip" "Mandelbrot N Buffalo" "2 Minkowski space sets" "Minkowski and Mandelbrot" "Minkowski and Buffalo"
endparam

float param power
caption = "equation's power"
default = 2
min = 0
endparam

param function
caption="Post function"
default=0
enum="None" "Burning Ship" "Perpendicular"
endparam

float param bailout
caption = "Bailout Value"
default = 7200000
min = 0
hint = "This parameter defines how soon an orbit bails out while iterating."
endparam

param settype
caption="Set type"
default=0
enum="Mandelbrot" "Julia"
endparam

param switchsettype
caption = "switch to"
default = 1
enum = "Mandelbrot" "Julia"
visible = false
endparam

  complex param julia
    caption="Julia Seed"
    default=(-0.3, -0.1)
    visible = (@settype=="Julia")
  endparam

switch:
type="LyapunovMandelbrot"
bailout=bailout
julia = #pixel
polarC=polarC
function=function
power=power
sets=sets
settype=switchsettype
switchsettype=settype
}
« Last Edit: December 31, 2021, 10:01:50 PM by Alef »

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Richard's 11th
« Reply #38 on: October 17, 2021, 03:11:46 AM »
Richard's 11th. This is not very pretentious formula, but it was the most easy to reiplement from bunch of fractint's orgform picked formulas of visual merit.
Quote
This iteration of FRACTINT.FRM was first released with Fractint 19.0
{ These are the original "Richard" types sent by Jm Collard-Richard. Their
  generalizations are tacked on to the end of the "Jm" list below, but
  we felt we should keep these around for historical reasons.}
...
Richard11{; Jm Collard-Richard
  z=pixel:
   z=1/sinh(1/(z*z))
    |z|<=50
  }

Richard10 and Richard11 had nice flowery shapes (simmilar to e^z or z^z fractals). I treated them as julia set of (0,0). Richard11 had better parameter space and more variation on julia set shapes. (Richard10 is the same but using sin.) The flowers probably coresponds to minibrots.
These must be initialised with  Z= pixel or else first iteration is Z1 = 1/0 + C.

Mandelbrot set/ parameter space:
Code: [Select]
C= pixel
Z= pixel
Julia set:
Code: [Select]
Z=pixel
C=julia_seed
iteration loop:
Code: [Select]
Z=1/sinh(1/(Z*Z)) + C
Quote
{ ; first order gamma function from Prof. Jm
  ; "It's pretty long to generate even on a 486-33 comp but there's a lot
  ; of corners to zoom in and zoom and zoom...beautiful pictures :)"
This must had been a very advanced machine;)

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Pataki Magnet
« Reply #39 on: October 17, 2021, 02:52:50 PM »
Pataki Magnet

Iteration loop:
Code: [Select]
Z= (Z^2 + C  )/(Z^2 - 1)bailout:
Code: [Select]
|Z|<@bailout
This one is mostly lets say congruent with standart magnet type 1 exept that it is dislocated by (1,0). Ordinary bailout conditions means it works better with most color methods (not ideal, throught, see the lines). Alsou it's way simpler, benefitial for algebra heavy methods like perturbation.

"Keep it simple as possible but not simpler than that."

Jet the julia sets have 1/2 the size and 2x a density of standart sets, alsou considering dislocation. It can have solid non-escaping sets where standart Magnet 1 have escaping sets, but with the same ornamentation. Sets  (0,0) and standart (1,0). Actualy parameter space of this magnet is 1:1 corresponding to julia sets, but in standart magnet formula non-escaping regions of parameter space gives escaping julia sets.

Quote
; Made by Pusk s Istv n jr.  E-mail: pataki.v**@*****net.hu
***
magnet1m_fig2(XAXIS_NOIMAG) {
;needs floating point!
;p2 is the bailout (default=7)
;reacts different to p1
;this was found by accident
b=p2,b=b+(b==0)*7
z=c=pixel:
zx=z*z
z=(zx+c-p1)/(zx-1)
|z|<b
}
The parameter p1 there relies on Fractint's rendering optimisation, realy it just moves it around and then Fractint mirrors it.

The formula could be modified with different powers, creating interesting results.
Code: [Select]
Z= (Z^n + C  )/(Z^n - 1)
Julia set for n = 1.27 and seed =(2.23, 0) is particulary nice fractal ring.

Offline FractalAlex

  • Perturbation formula helper
  • Fractal Freak
  • **
  • Posts: 713
  • One step closer to victory
Re: Some old stuff, maybe fractal nostalgia
« Reply #40 on: October 17, 2021, 04:03:21 PM »
Definitely something worth checking out.

Keep up the great search!

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Pi 2,5 Sudarshana
« Reply #41 on: October 20, 2021, 10:30:24 AM »
Another small unpretentious formula. No explanation for foundations of universe, just a different kind of spirals generated. This time from some Kelly C UF formula collection and Setemkia FallingTree database file.
Quote
; By Godwin Vickers, January 2001
; Pi2: perimeter of a regular polygon circumbscribing a circle, Mandelbrot set
;  Pi5: Julia set of Pi2

Code: [Select]
Initialisation:
Mandelbrot set / Parameter space:
C= #pixel
Z= #pixel

Julia set:
Z=#pixel
C=@julia

Code: [Select]
Iteration loop:
Z = @N * Z * C *tan(Pi/z)

Pi - number Pi
@N - 2, 3, 2.5

Code: [Select]
Bailout:
|z| < @bailout && |z - zold| > 0.1/@bailout

Original version had N = 2, but with N=3 it unrolls more of spirals and mandelbrot like structures. So I chose compromise of 2.5 as a default.
Formula was implemented with mandelbrot bailout but then it needs low bailout value (or inside coloring). Maybe it better works with newton bailout. But the best is with dual bailout conditions (convergent and divergent). Then it shows more of the structure and larger value could be used for color algorithms. (No bailout alsou is good option for lots of more advanced color methods.)

Now in my TODO list I had left more complex orgform formulas, 2 newtons, 2 patern generating and fractints 3D formula I marked as valuable.
« Last Edit: October 21, 2021, 01:37:00 AM by Alef »

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Minkowski Newton set
« Reply #42 on: October 21, 2021, 05:24:36 PM »
I called it Minkowski becouse it looks like minkowski space (split complex) mandelbrot set stitched with mandelbrot or like julia and minkowski julia combined.
Quote
newton_elliptics_4    ; Morgan L. Owens <*****@nznet.gen.nz>
                         ; Tue, 14 Jan 2003 19:54:33
I heavily optimised the code as financist consider that and did structural reforms. There was a variable generating only ugliness, throwing it out and makeing it in single line allowed mutch compact equation. Alsou made it in the format mandelbrot/ parameter space <-> julia set.

initialisation:
Code: [Select]

IF "Mandelbrot type"
  z = pixel
  c = pixel
ELSE ;julia set
  z=pixel
  c=@julia
ENDIF

Cx = real(C)
Cy = imag(C)

iteration loop:
Code: [Select]
oldZ = z
X = real(Z)
Y = imag(Z)

;formula
  newX=  @A*X - X^3 - 2*Y^2  + Cx
  newY=  @A*Y - 3*Y*X^2      + Cy

;make complex
  Z= newX + flip(newY)
Default A = 2 generates nice julia sets, A = 1 have parameter space with embeded mandelbrot sets.

; modifications
Code: [Select]
IF (@function=="None")
ELSEIF (@function=="Abs")
z=abs(z)
ELSEIF (@function=="Conj")
z=conj(z)
ELSEIF (@function=="Square")
z= sqr(z)
ENDIF

This formula is magic with abs.

bailout:
Code: [Select]
Newton
  |Z - oldZ| > @bailout
Mandelbrot")
  |Z| < 1/@bailout
Dual
  |Z| < 1/@bailout && |Z - oldZ| > @bailout

Newton bailout conditions reveal slightly more but it works with mandelbrot bailout too. Some color methods work better with one or another bailout. "Twin lamps" here was the best method.


Quote
newton_elliptics_4   { ; Morgan L. Owens <*****@nznet.gen.nz>
                         ; Tue, 14 Jan 2003 19:54:33
  x=real(pixel)
  y=imag(pixel)
  A=real(p1)
  B=imag(p1)
  phi=tan(real(p2))
  t=imag(p2)
  z=x+flip(y)
  :
  oz=z
  x=real(z)
  y=imag(z)
  d=2*y*phi-(3*sqr(x)+A)
  f=(sqr(x)+A)*x+B-sqr(y)
  g=phi*x+t-y
  nx=x-f+2*y*g
  ny=y-phi*f+(3*x^2+A)*g
  z=nx+flip(ny)
  |z-oz|>0.0001
}

Offline 3DickUlus

  • Administrator
  • *******
  • Posts: 2698
Re: Some old stuff, maybe fractal nostalgia
« Reply #43 on: October 23, 2021, 04:45:29 AM »
this one has some really interesting stuff going on  :thumb_up:

Offline Alef

  • Fractal Frogurt
  • ******
  • Posts: 480
  • a catalisator / z=z*sinh(z)-c^2
    • My deviant art page
Re: Dualist function of a philosopher and chaos mathematician
« Reply #44 on: October 31, 2021, 05:12:34 AM »
I found a quite a popular at the time ducky like fractal from Fractint. It was called "Liar 4". What a name! There were other liars, 2, 3 but they were uninteresting. Alsou modifications called "Chaotic Dualist" and "Zeppo". Search for this formula led me to the publication on philosophy (!) and chaos theory.

1.
This formula is very mutch ducky/kaliset like but it was implemented well before colour methods which build up colour values as a summ of consequitive iterations (1/2 + 1/3 + 1/4 ->  sum <1) like Lyapunov, Exponent Smoothing, (Mega) Discrete Lagrangian Descriptors, twin lamps, wave trichrome (FE orbits) working great for Ducky fractals when used as inside colouring.

2.
This formula is absolutely bailout dependant. bailout 1 is different from 3 and different from 30. But alsou escaping areas of image depends on modulus function (of Lp spaces). I used pnorm p=1 , p=2 and p=4 and it gave different patterns. 

I treated Liar4 as a julia set of (0,0) thus with + C I got  parameter space /mandelbrot set <-> julia set. (Zeppo had it, too) And alsou I tried number of different transformations aplied to it. Scaling by complex number before a + C gave the best results.


Code: [Select]
float realScale = real(@scale)
float imagScale = imag(@scale)

initial conditions:
Code: [Select]
M set / parameter space z=0 C = pixel
Julia set z = pixel C = julia seed

Formula (my enchanced version):
Code: [Select]
  tempZ_x  =  1 - abs(Z_y - Z_x )
  tempZ_y  =  1 - abs(1 - Z_x - Z_y )

; complex scaling + C
Z_x =  tempZ_x*realScale -  tempZ_y*imagScale  + C_x
Z_y =  tempZ_y*realScale +  tempZ_x*imagScale  + C_y
 

;make complex Z (for color methods)
Z = Z_x + flip(Z_y)

This could alsou be written as complex Ultra Fractal equation:
z =( 1 - abs(Z_y - Z_x ) + flip(1 - abs(1 - Z_x - Z_y ) ) )*@scale + C

bailout:
I used bailout value = 3, Fractint's version had bailout = 1. For more ducks like behaviour bailout could be increased.
Escaping areas very mutch depends on how modulus is calculated
Code: [Select]
;p = 1, cool world of squares:
  abs(Z_x) + abs(Z_y) < @bailout

;p = 2, normal:
 cabs(z) < @bailout ; or (Z_x^2 +   Z_y^2)^0.5    < @bailout

;p = 4, supershapes:
 (Z_x^4 +   Z_y^4)^0.25   < @bailout

; or generalised for p
 ( abs(Z_x)^@p + abs(Z_y)^@p )^(1/@p) < @bailout





Quote
{--- CHUCK EBBERT & JON HORNER -------------------------------------------}

comment {
  Chaotic Liar formulas for FRACTINT. These formulas reproduce some of the
  pictures in the paper 'Pattern and Chaos: New Images in the Semantics of
  Paradox' by Gary Mar and Patrick Grim of the Department of Philosophy,
  SUNY at Stony Brook. "...what is being graphed within the unit square is
  simply information regarding the semantic behavior for different inputs
  of a pair of English sentences:"
  }

Liar1 { ; by Chuck Ebbert.
  ; X: X is as true as Y
  ; Y: Y is as true as X is false
  ; Calculate new x and y values simultaneously.
  ; y(n+1)=abs((1-x(n) )-y(n) ), x(n+1)=1-abs(y(n)-x(n) )
  z = pixel:
   z = 1 - abs(imag(z)-real(z) ) + flip(1 - abs(1-real(z)-imag(z) ) )
    |z| <= 1
  }

Liar3 { ; by Chuck Ebbert.
  ; X: X is true to P1 times the extent that Y is true
  ; Y: Y is true to the extent that X is false.
  ; Sequential reasoning.  P1 usually 0 to 1.  P1=1 is Liar2 formula.
  ; x(n+1) = 1 - abs(p1*y(n)-x(n) );
  ; y(n+1) = 1 - abs((1-x(n+1) )-y(n) );
  z = pixel:
   x = 1 - abs(imag(z)*real(p1)-real(z) )
   z = flip(1 - abs(1-real(x)-imag(z) ) ) + real(x)
    |z| <= 1
  }

Liar4[float=y] { ; by Chuck Ebbert.
  ; X: X is as true as (p1+1) times Y
  ; Y: Y is as true as X is false
  ; Calculate new x and y values simultaneously.
  ; Real part of p1 changes probability.  Use floating point.
  ; y(n+1)=abs((1-x(n) )-y(n) ), x(n+1)=1-abs(y(n)-x(n) )
  z = pixel, p = p1 + 1:
   z = 1-abs(imag(z)*p-real(z))+flip(1-abs(1-real(z)-imag(z)))
    |z| <= 1
  }

F'Liar1 { ; Generalization by Jon Horner of Chuck Ebbert formula.
  ; X: X is as true as Y
  ; Y: Y is as true as X is false
  ; Calculate new x and y values simultaneously.
  ; y(n+1)=abs((1-x(n) )-y(n) ), x(n+1)=1-abs(y(n)-x(n) )
  z = pixel:
   z = 1 - abs(imag(z)-real(z) ) + flip(1 - abs(1-real(z)-imag(z) ) )
    fn1(abs(z))<p1
  }


The original source call this function Dualist. (But I didn't read it whole.)

https://www.semanticscholar.org/paper/Pattern-and-chaos%3A-New-images-in-the-semantics-of-Mar-Grim/c14bbaa0cf8a198c6069eec278eea39ca0490374
or
http://www.pgrim.org/articles/patternandchaos.pdf

p=2 bailout with value =1 and julia set (0,0) gives figure 29 of publication.

(3D: This image is copy url from semanticscholar)


Quote
DOI:10.2307/2215637Corpus ID: 10847722
Pattern and chaos: New images in the semantics of paradox
G. Mar, P. Grim
Philosophy
Noûs, Vol. 25, No. 5 (Dec., 1991),

Quote
The paradox of the Liar and its kin are well known as recalcitrant puzzles, perennially resistant to perennial attempts at solution. There is also a tradition, however, in which such paradoxes are treated as more than mere puzzles: a tradition running at least from Russell (1903) through Godel (1931) and Tarski (1935) to Kripke (1975), Herzberger (1982), Gupta (1982), and Barwise and Etchemendy (1987). In such approaches, patterns of paradox are respectfully treated as possible keys to a better understanding of incompleteness phenomena and semantics in general. Our work here is intended as a part of this latter tradition.

......

8. FRACTALS IN THE SEMANTICS OF PARADOX
Here we finally want to offer another way of graphing the behavior
of the Dualist functions sketched in terms of attractors immediately
above. Though we consider the results that follow to be intriguingly
beautiful, we cannot at this point claim to understand fully the semantic
lessons they may have to teach.

.....


These images clearly exhibit an intricate fractal character, or
self-similarity under magnification. 23 Nonetheless what is being
graphed within the unit square is simply information regarding the
semantic behavior for different inputs of a pair of English sentences:
X": X" is true to the extent that Y" is true
Y": Y" is true to the extent that X" is false

....

The existence of such fractal images within an infinite-valued
semantic analysis of paradoxical sentences seems to offer beauty and
an intriguing promise of some deep truths. Nonetheless at present
we cannot say precisely what they may have to tell us about truth
and paradox.
 


It's not a sentences in english it is a philosophical paradox. https://en.wikipedia.org/wiki/Liar_paradox  I did not expected so mutch dept from this formula with a stupid name "liar4". All the pictures below are julia sets.

Some philosopher from Crete said that all the cretans are liars. Does this mean that he laid that all cretans are liars?

2 ancient philosophers had died seeking solution for this logical paradox. One made a wow, that he will not eat untill he will found a solution. And he eventualy starwed to death. Another one had poor health and had a lot of unsleeped nights seeking the solution leading to his demise.
« Last Edit: October 31, 2021, 10:48:07 PM by Alef »


xx
Some of my older stuff, only revisited this myself recently !

Started by FractalDave on Off Topic

1 Replies
396 Views
Last post December 07, 2018, 09:20:16 PM
by FractalDave
xx
Reviving an old topic and fractal from the old Fractalforums - Mobius Mandelbrot

Started by FractalAlex on Share a fractal

44 Replies
1663 Views
Last post June 23, 2020, 01:56:18 PM
by FractalAlex
clip
Maybe THE fractal of the universe.

Started by maadim on Fractal Mathematics And New Theories

0 Replies
411 Views
Last post April 02, 2018, 04:25:21 PM
by maadim
question
Fractal coin maybe

Started by Alef on Off Topic

3 Replies
319 Views
Last post May 04, 2021, 06:45:45 PM
by Alef
clip
A family of (maybe) infinite fractal patterns hiding in pascals triangle

Started by DeusDarker on Share a fractal

0 Replies
241 Views
Last post June 30, 2020, 04:33:40 AM
by DeusDarker