;All formulae Ronnie Jay Sefton 2003 ;Adaptations of the rjs.ufm ;All formulae here carry the Morph parameter ;The morph param takes the Starting point ;of Z from the minus imaginary pixel value ;All formulae are essentialy the same otherwise ;With the parameter left unchecked ;Backwards compats are non existant ;As none of the defaults have been changed ;Try Morphing first then making a switch ;It should be noted that periodicity, ;should be turned off for best results ;Some formula have this command already tho' ;Hope you find something useful.. ;In adition to these formulae there are studies and, ;adaptations of the kscope and kspirals1.ufm's ;The original author of these is unknown. I have included ;one function and a morph to minus imaginary Z ;If the author of the K's is disagreeable about, ;My publishing I will take them down forthwith ;I can be contacted at r.sefton@btopenworld.com Crudenova{ ;Ronnie Jay init: z=pixel f=z f2=f loop: f=fn1(z) f2=fn2(pixel) zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1))+f+f2 ;Newton if(@invert==true) z=1/z else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif bailout: |zold-z|>@bailout default: title = "CrudenovaM" heading caption="F7 or spacebar to switch" endheading Center=(0.4,0.01) magn=1.5 maxiter=50000 periodicity=0 param p1 caption="Exponent" ;use this to perturb the fractal. default=(3,0) endparam func fn1 caption="Variable function 1" default=zero() endfunc func fn2 caption="Variable function 2" default=log() endfunc param r caption="Root" default=(1,0) endparam param bailout caption="Bailout" default=0.00001 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="CrudenovaJ" @p1=@p1 bailout=bailout fn1=fn1 fn2=fn2 @invert=@invert @morph=@morph @r=@r seed=pixel } CrudenovaJ { ;Ronnie Jay init: z=pixel f=z f2=f loop: f=fn1(z) f2=fn2(@seed) zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1))+f+f2 ;Newton if(@invert==true) z=1/z else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif bailout: |zold-z|>@bailout default: title = "CrudenovaJ" heading caption="F7 or spacebar to switch" endheading Center=(0.4,0.01) magn=1.5 periodicity=0 maxiter=50000 param p1 caption="Exponent" default=(3,0) endparam func fn1 caption="Variable function 1" default=zero() endfunc func fn2 caption="Variable function 2" default=log() endfunc param seed caption="Julia seed" default=(-1.25,0) endparam param r caption="Root" default=(1,0) endparam param bailout caption="Bailout" default=0.00001 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Crudenova" @p1=@p1 bailout=bailout fn1=fn1 fn2=fn2 @invert=@invert @morph=@morph @r=@r seed=pixel } Jellybeans{ ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed z=@power/tan(z) if (@invert==true) z=1/z else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Jellybeans" magn=.5 param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.1,0.55) endparam param bailout caption="Bailout" default=8.0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula JuliaWheel2{ ;Ronnie Jay ;Generalization of Julia wheel ;Original formula by Ronnie Sefton ;Modified by Bradley Beacham init: if @ThisMode == "Mandelbrot" c = @CFunc(#pixel) else ;Julia c = @CFunc(@seed) endif z = #pixel^@InitPower - @ZInitFunc(c) loop: z = z^@power + c if(@invert==true) z=1/z else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z| < @bailout default: title = "Julia Wheel 2" heading caption = "F7 or spacebar to switch" endheading maxiter = 250 param ThisMode caption = "Current Mode" default = 1 enum = "Mandelbrot" "Julia" enabled = False endparam param NextMode caption = "Mode to switch to" default = 0 enum = "Mandelbrot" "Julia" visible = False endparam param seed caption = "Julia Seed" default =(0.3141,-0.5) visible = (@ThisMode == 1) endparam param InitPower caption = "Init. Exponent" default =(8,0) endparam param power caption = "Exponent" default = (2,0) endparam param bailout caption = "Bailout Value" default = 4.0 min = 0 endparam param invert caption="Z inversion" default=false endparam param morph caption="Morph to imag -Z" default=false endparam func CFunc caption = "C Function" default = ident() endfunc func ZInitFunc caption = "Z Init. Function" default = sin() endfunc switch: type = "JuliaWheel2" ThisMode = NextMode NextMode = ThisMode seed = #pixel InitPower = InitPower Power = Power bailout = bailout CFunc = CFunc ZInitFunc = ZInitFunc invert=@invert @morph=@morph } ;endformula Crossover { ;Ronnie Jay init: z=pixel f=z g=z loop: z=tan(z)-0.01+sin(e)*0.2+f^g f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Crossover" param bailout caption="bail" default =4.0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula Variable Function { ;Ronnie Jay init: z=pixel^2 f=z c=z sf=c loop: zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1)) z=z^@power+@seed/f+c-sf c=fn1(z) sf=fn2(z^c) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z-zold|>@bailout default: title = "Variable fuction" magn=0.25 maxiter=100 func fn1 caption="Varifunc 1" default=atanh() endfunc func fn2 caption="Varifunc 2" default=cotanh() endfunc param bailout caption="Bailout" default=0.1 endparam param r caption="Root Value" default =(1,0) endparam param p1 caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default= (-1.25,0) endparam param power caption="Init Power" default=(1,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula wurly{ ;Ronnie Jay init: z=pixel f=cabs(@seed) loop: z=z^@power+@seed/f f=fn1(z-@seed) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Curly wurly" func fn1 default=log() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bail" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-0.07,-1 ) endparam switch: type="wurlyM" fn1=fn1 @morph=@morph @invert=@invert bailout=bailout power=power seed=pixel } wurlyM{ ;Ronnie Jay init: z=pixel f=cabs(pixel) loop: z=z^@power+pixel/f f=fn1(z-pixel) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Curly wurlyM" func fn1 default=log() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bail" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-0.07,-1 ) endparam switch: type="wurly" fn1=fn1 @morph=@morph @invert=@invert bailout=bailout power=power seed=pixel } ;endformula Pageant(XYAXIS){ ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "Pageant" maxiter=150 center=(0.04,-0.01) magn=1 param seed caption="Julia seed" Default=(-0.105,0.790) endparam param power caption="Exponent" default=(3,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula Bubbles { ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed z=z^@seed if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Bubbles" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="2func2" seed=pixel bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula 2func2 { ;Ronnie Jay init: z=pixel f=z g=z loop: z=z*z+(pixel) z=z+sin(f+g) f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "2func2" center=(-0.5,0) magn=2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout Value" default=4.0 min=0 endparam param power caption="Exponent" default=(1e2,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Bubbles" seed=pixel bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Jazz { ;Ronnie Jay ;A Bubbly eggy Julia ;Try altering the max/Iterations. ;and use the switch to and from ;The Mentalbrot ;Please be aware that the switch in ;the Mentalbrot is a delicate business ;A trackball will win over a mouse init: z=#pixel loop: z=z^z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Jazz" maxiter=1000 magn=0.8 heading caption = "F7 or spacebar to switch" endheading param seed caption="Julia seed" default=(1.07,0.7175) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout value" default=4 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam switch: Type="Mentalbrot" seed=pixel bailout=bailout @morph=@morph } ;endformula Mentalbrot { ;Ronnie Jay init: z=pixel f=(z+pixel) loop: z=z^@power+pixel+f f=fn1(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|>@bailout default: title = "Mentalbrot" heading caption = "F7 or spacebar to switch" endheading center=(0.01,0) param power caption="Power" default=(1,0) endparam param bailout caption="Bail Value" default=4 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Jazz" seed=pixel bailout=bailout invert=@invert @morph=@morph } ;endformula Switchabletriad{ ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "Switchabletriad" heading caption = "F7 or spacebar to switch" endheading center=(0.04,-0.01) magn=1 param seed caption="Julia seed" Default=(-0.105,0.790) endparam param power caption="Exponent" default=(3,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Mand" seed=pixel power=power bailout=bailout invert=@invert @morph=@morph } Mand{ ;Ronnie Jay init: z=pixel^4 loop: z=z*z+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "Mand" heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam center=(-0.54,0.02) switch: type="Switchabletriad" seed=pixel power=power bailout=bailout invert=@invert @morph=@morph } ;endformula 2FuncJ { ;Ronnie Jay init: z=pixel c=z sf=c loop: z=z^@power+@seed+c*sf c=fn1(z) sf=fn2(z^c) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "2FuncJ" heading caption = "F7 or spacebar to switch" endheading param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param bailout caption="Bail Value" default=4.0 min=1 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam maxiter=100 magn=1 center=(0.01,0) switch: type="Crosswitch" seed=pixel bailout=bailout power=power fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Crosswitch { ;Ronnie Jay init: z=pixel/e f=z g=z loop: z=tan(z)-0.01+sin(e)*0.2+f^g f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Crosswitch" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout value" default =8.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="2FuncJ" seed=pixel power=power bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Julishapes { ;Ronnie Jay ;A reversed Julia for UPR Shapes ;similar to Andrea Spinozzi's ;Brotshapes, I have left most parameters ;At Zero, experimentation is the key here ;Fiddle with the bailout,seed, and exponent ;values for different results init: z=pixel c=tanh (e) loop: z=z^@power+@seed-c if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|>@bailout default: title = "Julishapes" heading caption="Eye drop or enter values here" endheading magn=0.69 center=(0.03,-0.0) maxiter=100 periodicity=0 param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(0,0) endparam param bailout caption="Bailout" default= 1.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula Yam { ;Yet another Mandelbrot ;Ronnie Jay init: z=pixel loop: z=z*z+pixel z=z^@power(1)+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|< 4 default: title ="Yam" heading caption = "F7 or spacebar to switch" endheading center=(-0.53,-0.0) Magn=0.9 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Yaj" seed=pixel bailout=bailout power=power invert=@invert @morph=@morph } Yaj{ ;Yet another Julia ;Ronnie Jay Init: z = pixel f1 =@power Loop: z = z^@power+@seed-z^3+fn1(z)/f1 if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif Bailout: |z|<@bailout default: Title = "Yaj" heading caption = "F7 or spacebar to switch" endheading maxiter=500 magn=1.20 center=(-0.013,-0.02) param power caption= "exponent" default= (22,0) endparam param seed caption="JuliaSeed" default=(-0.764,0.049) endparam Func fn1 caption="func1" default=atan() endfunc param bailout caption="bailout Value" default=4.0 min = 0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Yam" seed=pixel bailout=bailout power=power @morph=@morph } ;endformula Superchaos1{ ;Ronnie Jay ;This is the sister fractal to sc2 ;both are switchable and have functions ;During the switch the resultant, ;fractals become extremely chaotic ;hope you find something usefull here, ;for UPR's init: z=pixel^@seed c=z sf=c loop: z=z^@power+@seed+c*sf c=fn1(sf) sf=fn2(z^c) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Superchaos1" heading caption = "F7 or spacebar to switch" endheading magn=0.2 center=(-2.02,-0.12) param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Superchaos2" seed=pixel bailout= bailout power=power fn1=fn1 @morph=@morph fn2=fn2 invert=@invert } Superchaos2{ ;Ronnie Jay init: z=Pixel f=z g=f loop: z=z+sin(e)*0.2-f^g f=fn1(f) g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Superchaos2" heading caption = "F7 or spacebar to switch" endheading center=(0.017,0.017) magn=0.6 param bailout caption="Bailout" default =4.0 min =0 endparam func fn1 default=asin() endfunc func fn2 default=asinh() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Superchaos1" seed=pixel bailout=bailout power=power fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Julijewels{ ;Ronnie Jay init: z=pixel^@seed c=z sf=c loop: z=z^@power+@seed+c*sf c=fn1(z) sf=fn2(z^c) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Julijewels" magn=0.29 center=(-0.139,0.022) param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bail" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula Asyoulikeit { ;Ronnie Jay ;A julibrot you can use the eyedropper ;on to choose different seed also there is ;a function selector for more scope ;similar to the Julia wheel but a little ;different in some aspects init: z=pixel^6 f=z loop: z=z^@power+@seed+f f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Asyoulikeit" center=(0.026,0.014) magn=1.2 maxiter=250 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-0.3,0.72) endparam } ;endformula Kayotix1{ ;Ronnie Jay ;This is the functionated Madelbrot ;of the two formula. ;Use the switch function for, ;the Julia set of the sister fractal, ;Kayotix2.... init: z=pixel f=z loop: z=z*z+pixel^4+f f=fn1(f)+@power if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<=4 default: title = "Kayotix1" heading caption = "F7 or spacebar to switch" endheading angle=-90.0862 center=(-0.16,0.005) magn=1.5 maxiter=250 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Kayotix2" seed=pixel bailout=bailout invert=@invert @morph=@morph fn1=fn1 } ;endformula Kayotix2{ ;Ronnie Jay ;This is the functionated Julia, ;of the Kayotix twins again use the, ;Switch to go back to the Mandelbrot init: z=pixel c=cos(@power)/e f=z loop: z=z^@power+@seed+c*f f=fn1(f)+@power if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Kayotix2" heading caption = "F7 or spacebar to switch" endheading maxiter=250 param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Kayotix1" seed=pixel bailout=bailout invert=@invert @morph=@morph fn1=fn1 } ;endformula J{ ;Ronnie Jay ;A dedication fractal to Gordon Stefanik ;For his love of the Mandala UPR init: z=pixel^4 c=z sf=c loop: z=z^@power+@seed+c*sf c=fn1(z) sf=fn2(z^c) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Gordon Stefanik J" angle=.1 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param bailout caption="Bail Value" default=4.0 min=1 endparam maxiter=100 magn=1 center=(0.01,0) } ;endformula JigsawM{ ;Ronnie Jay ;A switchable twinset with the ;JigsawJ and vice versa ;Also the functions are useful ;You can also mess with the, ;Exponents seed and Bailout init: z=0 c=z sf=c loop: Z=z*z+pixel-c+sf c=fn1(z) sf=fn2(c) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "JigsawM" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bail value" default=4.0 endparam func fn1 caption="Function 1" default=ident() endfunc func fn2 caption="Function 2" default=atan() endfunc param power caption="Exponent" default=(2,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="JigsawJ" power=power bailout=bailout seed=pixel fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula JigsawJ{ ;Ronnie Jay ;A switchable twinset with the ;JigsawM and vice versa ;Also the functions are useful ;You can also mess with the, ;Exponents seed and Bailout init: c=z sf=c z=pixel loop: c=fn1(z) sf=fn2(c) z=z^z+@power+@seed-c+sf if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "JigsawJ" heading caption = "F7 or spacebar to switch" endheading center=(0.08,-0.06) angle=90.1 magn=0.4 maxiter=250 func fn1 caption="Function 1" default=ident() endfunc func fn2 caption="Function 2" default=atan() endfunc param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param bailout caption="Bailout" default=8.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="JigsawM" power=power bailout=bailout seed=pixel fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Psycho{ ;Ronnie Jay ;My first formula with operators ;Thanks go to Andrea Spinozzi ;For paving the way on Operators ;Cheers Spizz! init: z=pixel c=@seed d=c loop: z=z/@power+@Zinit(1) z=z*z^((real(pixel)))+@Pixels(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+d elseif(@op1=="-") z=z-c-d elseif(@op1=="*") z=z*c*d elseif(@op1=="/") z=z/c/d elseif(@op1=="^") z=z^c^d endif bailout: |z|<@bailout default: title = "Psycho" maxiter=500 magn=.3 center=(-3.8,-0.16) angle=90 param op caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param bailout caption="Bailout" default=8.0 min=0 endparam param power caption="Exponential" default=(3,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula Zen1{ ;Ronnie Jay ;Two fractals that are switchable ;with functions; ;Thanks to Toby Marshall for pointing, ;the way to the correct use of the switch init: z=pixel f=z g=z h=cos(z) loop: z=z*z+(pixel) z=z+sin(f+g) f=fn1(f)+pixel+h g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Zen1" center=(-0.5,0) magn=2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout Value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Zen2" seed=pixel bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } Zen2 { ;Ronnie Jay ;The sister of Zen1 init: z=pixel f=z g=z loop: z=z^@power+@seed/f*g z=z^@seed f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Zen2" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Zen1" seed=pixel bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Bill{ ;Ronnie Jay ;Hi I'm Bill S Preston Esq, ;and I am a mandelbrot dudes init: z =@start loop: z = @FuncZInit(z)+Pixel z=sinh(+ident(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="Bill" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="Functions" endheading switch: type="Ted" seed=pixel bailout=bailout @start=@start @FuncZInit=@FuncZInit @invert=@invert @morph=@morph } ;endformula Ted{ ;Ronnie Jay ;And I'm Ted Theadore Logan... ;And I'm a Julia dudes ;And together we are Wild Fractals!!!! init: z = #pixel loop: z = @FuncZInit(z)*@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="Ted" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout" default=4.0 min=0 endparam param seed caption="Julia seed" default =(0.086,1.01) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="Functions" endheading switch: type="Bill" seed=pixel bailout=bailout @start=@start @FuncZInit=@FuncZInit @invert=@invert @morph=@morph } ;endformula ;endformula LindaMcMand{ ;Ronnie Jay init: z = 0 z = @OptionalPower(pixel) loop: z = @FuncZInit(z) / (pixel) z = pixel^@FuncZPower(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="LindaMcMand" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout" default=4.0 endparam heading caption="Functions" endheading func @OptionalPower caption = "Optional Power" default = sin() endfunc func @FuncZInit caption = "FuncZInit" default = sin() endfunc func @FuncZPower caption = "FuncZPower" default = sin() endfunc switch: type = "LindaMcJulia" @FuncZInit=@FuncZInit @FuncZPower=@FuncZPower @OptionalPower=@OptionalPower bailout=bailout @seed=pixel @invert=@invert @morph=@morph } ;endformula LindaMcJulia{ ;Ronnie Jay ;Another dedication formula, ;for a special and dear friend. ;Get well soon (((Linda))) init: z = #pixel z=@OptionalPower(z) loop: z = @FuncZInit(z) / (@seed) z=@seed^@FuncZPower(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="LindaMc(Julia)" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout" default=4.0 endparam heading caption="Functions" endheading param seed caption="Julia seed" default =(-1.25,0) endparam func @OptionalPower caption = "Optional Power" default = sin() endfunc func @FuncZInit caption = "FuncZInit" default = sin() endfunc func @FuncZPower caption = "FuncZPower" default = sin() endfunc switch: type ="LindaMcMand" @FuncZInit=@FuncZInit @FuncZPower=@FuncZPower @OptionalPower=@OptionalPower bailout=bailout seed=pixel @invert=@invert @morph=@morph } ;endformula FunM { ;Ronnie Jay ;Dedicated to Andrea Spinozzi ;A fine and dear friend init: z=pixel loop: z=z^@power+pixel /@FuncZInit(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "FunM" heading caption = "F7 or spacebar to switch" endheading Center=(-0.0,-0.05) magn=0.70 maxiter=100 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @FuncZInit caption = "FuncZInit" default = acos() endfunc param bailout caption="Bail value" default=3.0 min=0 endparam param power caption="Exponent" default=(1,0) endparam switch: type="FunJ" bailout=bailout power=power seed=pixel @FuncZInit=@FuncZInit @invert=@invert @morph=@morph } FunJ { ;Ronnie Jay ;Dedicated to Andrea Spinozzi ;A fine and dear friend init: z=pixel loop: z=z^@power+@seed /@FuncZInit(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "FunJ" heading caption = "F7 or spacebar to switch" endheading Center=(-0.0,-0.05) magn=0.70 maxiter=100 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @FuncZInit caption = "FuncZInit" default = acos() endfunc param bailout caption="Bail value" default=3.0 min=0 endparam param seed caption="Julia seed" default=(0.0096,0.65) endparam param power caption="Exponent" default=(1,0) endparam switch: type="FunM" bailout=bailout power=power seed=pixel @FuncZInit=@FuncZInit @invert=@invert @morph=@morph } ;endformula Demon{ ;Ronnie Jay ;A four function brot ;With a spooky theme :-) init: z=pixel loop: z=z^@Function1(@Power) z=pixel^@Function2(z) z=@Function4(z) z=@Function3(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Demon" center=(-0.2,0.009) magn=1 angle=-90 heading caption="Functions" endheading heading caption="Power select" endheading float param bailout caption="Bailout" default=4 min=0 endparam param @Power caption="ZPower" default=(1,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func Function3 caption="Function3" default=sinh() endfunc } ;endformula Manglebrot{ ;Ronnie Jay init: Z=#pixel c=z d=c loop: z=@FuncZinit(z) z=#pixel^@FuncZPower(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+d elseif(@op1=="-") z=z-c-d elseif(@op1=="*") z=z*c*d elseif(@op1=="/") z=z/c/d elseif(@op1=="^") z=z^c^d endif bailout: |z|<@bailout default: title = "Manglebrot" heading caption="Functions" endheading float param bailout caption="Bailout Value" default=4 min=0 max=1e5 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param op caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam heading caption="Inversion and Operators" endheading } ;endformula BalaMandy{ ;Ronnie Jay ;A switchable pair with one function init: z=0 f=z loop: z=z^@power+pixel+f f=fn1(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "BalaMandy" center=(-0.8,-0.003) magn=0.9 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam func fn1 caption="Function" default=tan() endfunc switch: type="Balajulie" seed=pixel bailout=bailout power=power fn1=fn1 invert=@invert @morph=@morph } ;endformula Balajulie{ ;Ronnie Jay ;A switchable pair with one function init: z=pixel f=z loop: z=z^@power+@seed+f f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Balajulie" center=(0.026,0.014) magn=1.2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(0.5079,-0.36) endparam func fn1 caption="Function" default=tan() endfunc switch: type="BalaMandy" seed=pixel bailout=bailout power=power fn1=fn1 invert=@invert @morph=@morph } ;endformula Lale'sDelightJ{ ;Original fomula called Bubbles by Ronnie Jay ;This is an adaptation of the bubbles formula ;That is a work between myself and Lale Erguner ;My thanks to Lale for the building blocks :-) init: z=pixel loop: z=z^@power+@seed+fn1(z^2) z=z^@seed+fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Lale'sDelightJ" heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Lale'sDelightM" seed=pixel bailout=bailout fn1=fn1 fn2=fn2 invert=@invert @morph=@morph } ;endformula Lale'sDelightM{ ;Original fomula called 2Func2 by Ronnie Jay ;This is an adaptation of the 2Func2 formula ;That is a work between myself and Lale Erguner ;My thanks to Lale for the building blocks :-) init: z=pixel^2 f=z g=z loop: z=z*z+(pixel) z=z+sin(f+g) f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Lale'sDelightM" center=(-0.5,0) magn=2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param bailout caption="Bailout Value" default=4.0 min=0 endparam param power caption="Exponent" default=(1e2,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Lale'sDelightJ" seed=pixel bailout=bailout fn1=@fn1 fn2=@fn2 invert=@invert @morph=@morph } ;endformula MedusaM{ ;For Cindy Meyers init: z=0 a=pixel loop: z=z^@power+pixel-@function(z+a) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "MedusaM" center=(-0.47,0) magn=1 maxiter=250 param morph caption="Morph to imag -Z" default=false endparam Param invert caption="Z inversion" default=false endparam param power caption="Exponent" default=(2,0) endparam heading caption = "F7 or spacebar to switch" endheading switch: type="MedusaJ" bailout=bailout @function=@function @morph=@morph power=power seed=pixel invert=@invert } ;endformula MedusaJ{ ;Ronnie Jay ;For Cindy Meyers init: z=pixel a=z loop: z=z^@power+@seed-@function(z+a) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "MedusaJ" heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam Param invert caption="Z inversion" default=false endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam switch: type="MedusaM" bailout=bailout @function=@function power=power seed=pixel invert=@invert @morph=@morph } ;endformula Benjy1 { ;Ronnie Jay ;Dedicated to Susan Benjamin, ;For all her help in the early days with UPR's :-) ;Thanks Susan ;A switchable twinset ;I thank Andrea Spinozzi for all his help, ;with this formulae it is a colaboration, ;between us both thanks a lot Spizzy friend init: z=#pixel c=z*#pixel loop: z=z^@power+@Function2(@Function(@seed)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+c elseif(@op1=="-") z=z-c-c elseif(@op1=="*") z=z*c*c elseif(@op1=="/") z=z/c/c elseif(@op1=="^") z=z^c^c endif bailout: |z|<@bailout default: title = "Benjy1" magn=0.6 center=(0.0,0.0) float param bailout caption="Bailout Value" default=2 min=0 endparam float param power caption="Exponent" default=(2) endparam heading caption="Inversion and Operators" endheading param op caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param seed caption="Julia seed" default =(1.58,-0.0345) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam Heading caption="F7 or spacebar to switch" endheading func @function caption="Function1" default=sin() endfunc func @function2 caption="Function2" default=sin() endfunc switch: type="Benjy2" bailout=@bailout power=@power seed=#pixel @function=@function @function2=@function2 invert=@invert op=@op op1=@op1 @morph=@morph } ;endformula Benjy2 { ;Ronnie Jay ;Dedicated to Susan Benjamin, ;For all her help in the early days with UPR's :-) ;Thanks Susan ;A switchable twinset ;I thank Andrea Spinozzi for all his help, ;with this formulae it is a colaboration, ;between us both thanks a lot Spizzy friend init: z=pixel c=z*@seed loop: z=z^@power+@Function2(@Function(@seed)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+c elseif(@op1=="-") z=z-c-c elseif(@op1=="*") z=z*c*c elseif(@op1=="/") z=z/c/c elseif(@op1=="^") z=z^c^c endif bailout: |z|<=@bailout default: title = "Benjy2" angle=90 magn=0.8 float param bailout caption="Bailout Value" default=2 min=0 endparam float param power caption="Exponent" default=(2) endparam heading caption="Inversion and Operators" endheading param op caption="Operator 1" enum="+""-""*""/""^" default= 3 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=2 endparam param seed caption="Julia seed" default =(1.58,-0.0345) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam Heading caption="F7 or spacebar to switch" endheading func @function caption="Function1" default=sin() endfunc func @function2 caption="Function2" default=sin() endfunc switch: type="Benjy1" bailout=@bailout power=@power seed=#pixel @function=@function @function2=@function2 op=@op op1=@op1 invert=@invert @morph=@morph } ;endformula MVFoe1{ ;Ronnie Jay ;My tribute to Marc Viviene Foe ;A great premiership footballer ;Who sadly died,of a heart attack ;On the pitch during a game init: z=@start c=pixel+@power loop: if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if (@op1==1) z = c+(z*#pixel) elseif (@op1==2) z = c*(z*#pixel) elseif (@op1==3) z = c-(z*#pixel) elseif (@op1==4) z = c/(z*#pixel) elseif (@op1==5) z = c^(z*#pixel) elseif (@op1==6) z = -(c)-(z*#pixel) elseif (@op1==7) z = -(c)+(z*#pixel) elseif (@op1==8) z = -(c)*(z*#pixel) endif z=z^c*@Function(c+z) bailout: |z|<4 default: title = "MVFoe1" heading caption="Shape" endheading center=(-2.090,0.055) magn=0.9 param power caption="Exponent" default=(2,0) endparam param @op1 caption = "Type" enum= "1""2""3""4""5""6""7""8" default= 0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param start caption="Z Start" default=(2,0) endparam switch: type="MVFoe2" power=power bailout=bailout seed=pixel @Function=@function @invert=@invert @op1=@op1 @morph=@morph } ;endfomula MVFoe2{ ;Ronnie Jay ;My tribute to Marc Viviene Foe ;A great premiership footballer ;Who sadly died,of a heart attack ;On the pitch during a game init: z=@start c=pixel loop: if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif z=z^@power+@seed if (@op1==1) z = c+(z*#pixel) elseif (@op1==2) z = c*(z*#pixel) elseif (@op1==3) z = c-(z*#pixel) elseif (@op1==4) z = c/(z*#pixel) elseif (@op1==5) z = c^(z*#pixel) elseif (@op1==6) z = -(c)-(z*#pixel) elseif (@op1==7) z = -(c)+(z*#pixel) elseif (@op1==8) z = -(c)*(z*#pixel) endif z=z^c*@Function(c+z) bailout: |z|<4 default: title = "MVFoe2" heading caption="Shape" endheading param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param @op1 caption = "Type" enum= "1""2""3""4""5""6""7""8" default= 0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param start caption="Z Start" default=(2,0) endparam switch: type="MVFoe1" power=power bailout=bailout seed=pixel @Function=@function @invert=@invert @op1=@op1 @morph=@morph } ;endformula Starfish{ ;No Sniggering please :-) ;Ronnie Jay init: z=pixel^4 c=@Shape(z+pixel/1) loop: z=z^@power+@seed*c if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Starfish" center=(0.015,-0.07) magn=0.5 param morph caption="Morph to imag -Z" default=false endparam param seed caption="Julia Seed" default =(-1.25,0) endparam float param bailout caption="Bailout" default=1000 min=1 max=100000 endparam float param power caption="Exponent" Default=(1) endparam } ;endformula ClusterM { ;Ronnie Jay ;A switchable invertable twinset ;Use the functions and invert to find useful, ;fractals also you can play with the bailout, ;and other params ;Hope you enjoy this formula init: z=pixel loop: z=z^@power+pixel/2 Z=@ZFunction(z) z=@ZFunction2(z) z=@ZFunction3(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "ClusterM " center=(0.019,-0.006) magn=0.59 angle=90 heading Caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @Zfunction Caption="Z Function" default=asin() endfunc func @Zfunction2 Caption="Z Function 2" default=ident() endfunc func @Zfunction3 Caption="Z Function 3" default=abs() endfunc float param bailout caption="Bail" default=8 min=0 endparam param power caption="Exponent" default=(2,0) endparam switch: type="ClusterJ" bailout=bailout power=power @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @ZFunction3=@ZFunction3 @invert=@invert seed=pixel @start=@start @morph=@morph } ClusterJ{ ;Ronnie Jay ;A switchable invertable twinset ;Use the functions and invert to find useful, ;fractals also you can play with the bailout, ;and other params ;Hope you enjoy this formula init: z=pixel loop: z=z^@power+@seed^2 Z=@ZFunction(z) z=@ZFunction2(z) z=@ZFunction3(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "ClusterJ" heading Caption="F7 or spacebar to switch" endheading center=(0.019,-0.006) magn=0.59 angle=90 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z Inversion" default=false endparam func @Zfunction Caption="Z Function" default=asin() endfunc func @Zfunction2 Caption="Z Function 2" default=ident() endfunc func @Zfunction3 Caption="Z Function 3" default=abs() endfunc float param bailout caption="Bail" default=8 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(0.78,0.163) endparam switch: type="ClusterM" bailout=bailout power=power @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @ZFunction3=@ZFunction3 @invert=@invert seed=pixel @start=@start @morph=@morph } ;endformula Mandymania{ ;Ronnie Jay init: z=@Zfunction(pixel) z=@Zfunction2(z) loop: z=z*z+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "Mandymania" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @Zfunction caption="Z function 1" default=tan() endfunc func @Zfunction2 caption="Z function 2" default = tan() endfunc switch: type="Spriomania" seed=pixel bailout=bailout power=power @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @invert=@invert @morph=@morph } ;endformula Spriomania{ ;Ronnie Jay init: z=@Zfunction(pixel) z=@Zfunction2(z) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "Spriomania" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param seed caption="Julia seed" default=(-0.038,-0.68) endparam float param power caption="Exponent" default=2 endparam float param bailout caption="Bailout value" default = 8 min=0 endparam func @Zfunction caption="Z function 1" default=tan() endfunc func @Zfunction2 caption="Z function 2" default = tan() endfunc switch: type="Mandymania" seed=pixel bailout=bailout power=power @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @invert=@invert @morph=@morph } ;endformula ChoicesM{ ;Ronnie Jay ;This fractal formula has many choices ;It has z inversion to turn it insideout ;two function params ;an operator function to go Juliebrot ;And a switch to the sister choicesJ init: z=@Zfunction(pixel) z=@Zfunction2(z) c=z+cos(z) loop: z=z*z+pixel+tan(5*z+c) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if (@op1==1) z = c+(z*#pixel) elseif (@op1==2) z = c*(z*#pixel) elseif (@op1==3) z = c-(z*#pixel) elseif (@op1==4) z = c/(z*#pixel) elseif (@op1==5) z = c^(z*#pixel) elseif (@op1==6) z = -(c)-(z*#pixel) elseif (@op1==7) z = -(c)+(z*#pixel) elseif (@op1==8) z = -(c)*(z*#pixel) endif bailout: |z|<@bailout default: title = "ChoicesM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout" default=20 max=100 min=0 endparam param @op1 caption = "Go>>Juliebrot" enum= "1""2""3""4""5""6""7""8" default= 0 endparam switch: type="ChoicesJ" seed=pixel bailout=bailout power=power @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @op1=@op1 @invert=@invert @morph=@morph } ChoicesJ{ ;Ronnie Jay ;This fractal formula has many choices ;It has z inversion to turn it insideout ;two function params ;an operator function to go Juliebrot ;And a switch to the sister choicesM init: z=@Zfunction(pixel) z=@Zfunction2(z) c=z loop: z=z^@power+@seed+tan(@power) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if (@op1==1) z = c+(z*@seed) elseif (@op1==2) z = c*(z*@seed) elseif (@op1==3) z = c-(z*@seed) elseif (@op1==4) z = c/(z*@seed) elseif (@op1==5) z = c^(z*@seed) elseif (@op1==6) z = -(c)-(z*@seed) elseif (@op1==7) z = -(c)+(z*@seed) elseif (@op1==8) z = -(c)*(z*@seed) endif bailout: |z|<@bailout default: title = "ChoicesJ" angle=0.1 heading caption="F7 or spacebar to switch" endheading param seed caption="Julia seed" default=(0.96,0.424) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param @op1 caption = "Go>>Juliebrot" enum= "1""2""3""4""5""6""7""8" default= 0 endparam float param power Caption="Exponent" default=(2) endparam float param bailout Caption="Bailout value" default =20 max =100 min=0 endparam switch: type="ChoicesM" seed=pixel bailout=bailout power=power @morph=@morph @Zfunction=@Zfunction @Zfunction2=@Zfunction2 @op1=@op1 @invert=@invert } ;endformula Juliana{ ;Ronnie Jay init: z=@function1(pixel) a=@function2(@seed) loop: z=z^a*1+@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Juliana" func @function1 caption="Function 1" default=sin() endfunc func @function2 caption="Function 2" default=sinh() endfunc heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout" default=8 endparam float param power caption="Exponent" default=1 endparam param seed caption="Jukia seed" default=(-1.25,0) endparam switch: type="Brotski" bailout=bailout power=power seed=pixel @invert=@invert @function1=@function1 @function2=@function2 @morph=@morph } Brotski{ ;Ronnie Jay init: z=@function1(pixel) a=@function2(z) loop: z=z^a*1+pixel+@power if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Brotski" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout" default=8 endparam float param power caption="Exponent" default=1 endparam switch: type="Juliana" bailout=bailout power=power seed=pixel @invert=@invert @function1=@function1 @function2=@function2 @morph=@morph } ;endformula lambdaM { ;Ronnie Jay init: z=pixel a=@Function(pixel) b=@Function2(@power) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif loop: z = pixel*z*(1-z)^(@power-1)+a-b bailout: |z|<@bailout default: title = "lambdaM" center=(0.50,0.03) magn=0.90 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="z inversion" default=false endparam func @Function2 default=acosh() endfunc float param power caption="Exponent" default=(2) endparam float param bailout caption="Bailout value" default =8 min=0 endparam switch: type="LambdaJ" bailout=bailout power=power seed=pixel @Function=@Function @Function2=@Function2 @invert=@invert @morph=@morph } lambdaJ { ;Ronnie Jay init: z=pixel a=@Function(@seed) b=@Function2(@power) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif loop: z = @seed*z*(1-z)^(@power-1)+a*b bailout: |z|<@bailout default: title = "lambdaJ" heading caption="F7 or spacebar to switch" endheading center=(0.50,0.03) magn=0.90 param morph caption="Morph to imag -Z" default=false endparam param invert caption="z inversion" default=false endparam func @Function2 default=acosh() endfunc param seed caption="Julia seed" default=(0.95,0.08) endparam float param power caption="Exponent" default=(2) endparam float param bailout caption="Bailout value" default =8 min=0 endparam switch: type="LambdaM" bailout=bailout power=power seed=pixel @Function=@Function @Function2=@Function2 @invert=@invert @morph=@morph } ;endformula Mystro_M{ ;Ronnie Jay init: z=pixel^@function(pixel) loop: z=z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<=@bailout default: title = "Mystro_M" maxiter=500 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param power caption="Exponential" default=(2,0) endparam heading caption="F7 or spacebar to switch" endheading float param bailout default= 8 min=0 endparam switch: type="Mystro_J" seed=pixel power=power bailout=bailout @function=@function @invert=@invert @morph=@morph } ;endformula Mystro_J{ init: z=pixel^@function(pixel) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<=@bailout default: title = "Mystro_J" maxiter=500 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param power caption="Exponential" default=(2,0) endparam param seed caption="Julia Seed" default=(-0.7,0.3) endparam float param bailout default= 8 min=0 endparam switch: type="Mystro_M" seed=pixel power=power bailout=bailout @function=@function @invert=@invert @morph=@morph } ;endformula Julia Party{ ;Ronnie Jay init: z=pixel z=@Function1(z*z) z=@Function2(z) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Julia Party" maxiter=250 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=true endparam float param bailout caption="Bailout value" default = 8 endparam float param power caption="Exponent" default =2 endparam param seed caption="Julia seed" default=(0.626,-0.2409) endparam func @function1 default=sinh() endfunc func @function2 default=cos() endfunc } ;endformula DorothyM{ ;Ronnie Jay init: z=pixel a=cos(z) loop: z=z^@function1(pixel-a) z=z+@function2(@power) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "DorothyM" heading caption="F7 or spacebar to switch" endheading float param bailout caption="Bailout value" default=2 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param power caption="Exponent" default=2 endparam func @function1 default=asinh() endfunc func @function2 default=sin() endfunc switch: type="DorothyJ" power=power seed=pixel bailout=bailout @function1=@function1 @function2=@function2 @invert=@invert fn1=fn1 fn2=fn2 @morph=@morph } ;endformula DorothyJ{ ;Ronnie Jay init: z=pixel loop: z=z^@function1(@power)+@function2(@seed) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "DorothyJ" heading caption="F7 or spacebar to switch" endheading float param bailout caption="Bailout value" default=2 min=0 endparam param seed caption="Seed value" default=(0.90,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param power caption="Exponent" default=2 endparam func @function1 default=asinh() endfunc func @function2 default=atanh() endfunc switch: type="DorothyM" power=power seed=pixel bailout=bailout @function1=@function1 @function2=@function2 @invert=@invert fn1=fn1 fn2=fn2 @morph=@morph } ;endformula Emmy's Newton chains{ ;Ronnie Jay init: z=z+@Function1(pixel) z=z+@Function2(pixel) loop: if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1)) bailout: |z-zold|>=0.00001 default: title = "Emmy's Newton chains" maxiter=100 center=(0.06,0.050) magn=0.5 param p1 caption="Exponent" default=(3,0) endparam param r caption="Root value" default=(1,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam } ;endformula YahooM{ ;Ronnie Jay ;A switchable twinset, ;for my dear little friends, ;Dorothy & Emily....:-) init: z=0 loop: z=z*z+@function(pixel) z=z*sin(z) if(@Morechaos==true) z=z^z*z+pixel else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "YahooM" heading caption="F7 or spacebar to switch" endheading param Morechaos caption="More Chaos" default=false endparam param morph caption="Morph to imag -Z" default=false endparam param invert Caption="Z inversion" default=false endparam func @function caption="Function" default =sin() endfunc switch: type="YahooJ" @function=@function @morechaos=@morechaos @invert=@invert bailout=bailout seed=pixel @morph=@morph } YahooJ{ ;Ronnie Jay init: z=pixel loop: z=z*z+@function(@seed) z=z*sin(z) if(@Morechaos==true) z=z^z*z+@seed else z=z endif if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "YahooJ" heading caption="F7 or spacebar to switch" endheading param Morechaos caption="More Chaos" default=false endparam param morph caption="Morph to imag -Z" default=false endparam param invert Caption="Z inversion" default=false endparam param seed caption="Julia seed" default=(-1.25,0) endparam func @function caption="Function" default =sin() endfunc switch: type="YahooM" @function=@function @morechaos=@morechaos @invert=@invert bailout=bailout seed=pixel @morph=@morph } ;endformula SpiderM{ ;Ronnie Jay init: z=pixel z=@Function1(z*z) z=@Function2(z) loop: z=z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "SpiderM" maxiter=250 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout value" default = 8 endparam float param power caption="Exponent" default =1.5 endparam func @function1 default=sinh() endfunc func @function2 default=cos() endfunc switch: type="SpiderJ" @function1=@function1 @function2=@function2 power=power bailout=bailout seed=pixel @invert=@invert @morph=@morph } ;endformula SpiderJ{ ;Ronnie Jay init: z=pixel z=@Function1(z*z) z=@Function2(z) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "SpiderJ" maxiter=250 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=true endparam float param bailout caption="Bailout value" default = 8 endparam float param power caption="Exponent" default =1 endparam param seed caption="Julia seed" default=(-0.057,0.0963) endparam func @function1 default=sinh() endfunc func @function2 default=cos() endfunc switch: type="SpiderM" @function1=@function1 @function2=@function2 power=power bailout=bailout seed=pixel @morph=@morph @invert=@invert } ;endformula VortexMandel { ;Ronnie Jay ;For John the Bishop :-) init: z=@start loop: z=z^@power+pixel z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "VortexMandel" center=(-0.06,-0.12) magn=0.51 heading caption="F7 or spacebar to switch" endheading float param start caption="Z init" default=1 endparam param power caption="Exponent" default=(2,0) endparam float param bailout caption="Bailout value" default =8 min=0 max=100000 endparam func @Function caption="Function" default=asinh() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="VortexJulia" seed=pixel power=power @fn1=@fn1 @invert=@invert @morph=@morph } ;endformula VortexJulia { ;Ronnie Jay ;For John the Bishop :-) init: z=pixel loop: z=z^@power+@seed z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=z else z=1/z endif bailout: |z|<@bailout default: title = "VortexJulia" center=(-0.06,-0.12) magn=0.51 heading caption="F7 or spacebar to switch" endheading param seed caption="Julia seed" default=(0.3368816443,0.6359650368) endparam param power caption="Exponent" default=(2,0) endparam float param bailout caption="Bailout value" default =8 min=0 max=100000 endparam func @Function caption="Function" default=asinh() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=true endparam switch: type="VortexMandel" seed=pixel power=power @fn1=@fn1 @invert=@invert @morph=@morph } ;endformula PhantomM{ ;Ronnie Jay init: z=pixel loop: z=z^@power+pixel z=@function(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "PhantomM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param Bailout caption="Bailout Value" default=4 endparam param power caption="Exponent" default=(2,0) endparam func @function caption="Function" default=abs() endfunc switch: type="PhantomJ" bailout=bailout seed=pixel power=power @function=@function @invert=@invert @morph=@morph } ;endformula PhantomJ{ ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed z=@function(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "PhantomJ" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param Bailout caption="Bailout Value" default=4 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-0.5301204819,0.1060240964) endparam func @function caption="Function" default=abs() endfunc switch: type="PhantomM" bailout=bailout seed=pixel power=power @function=@function @invert=@invert @morph=@morph } ;endformula WhirlygigJ{ ;Ronnie Jay init: z=pixel z=@ZFunction1(pixel) z=@ZFunction2(z+z) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "WhirlygigJ" heading caption="F7 or spacebar to switch" endheading func @ZFunction1 caption="Z Function 1" default=cosh() endfunc func @ZFunction2 caption="Z Function 2" default=cotan() endfunc param seed caption="Julia seed" default=(0.192,0.58) endparam float param power caption="Exponent" default=2 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param start caption="Z init" default=(-1.4,-0) endparam switch: type="WhirlygigM" bailout=bailout power=power @morph=@morph seed=pixel @zfunction1=@zfunction1 @zfunction2=@zfunction2 @invert=@invert } ;endformula WhirlygigM{ ;Ronnie Jay init: z=pixel z=@ZFunction1(pixel) z=@ZFunction2(z) loop: z=z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<4 default: title = "WhirlygigM" heading caption="F7 or spacebar to switch" endheading func @ZFunction1 caption="Z Function 1" default=cosh() endfunc func @ZFunction2 caption="Z Function 2" default=cotan() endfunc float param power caption="Exponent" default=2 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param start caption="Z init" default=(-1.4,-0) endparam switch: type="WhirlygigJ" bailout=bailout power=power seed=pixel @zfunction1=@zfunction1 @zfunction2=@zfunction2 @invert=@invert @morph=@morph } ;endformula ClusteredJ{ ;Ronnie Jay init: z=pixel z=@Adition(z) loop: z=z^@power+@seed z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "ClusteredJ" heading caption="F7 or spacebar to switch" endheading center=(-0.02,-0.07) magn=0.7 param morph caption="Morph to imag -Z" default=false endparam param seed caption="Julia seed" default=(-0.4055421687,0.7889156627) endparam float param power caption="Exponent" default=2 endparam float param bailout caption="Bailout value" default=10 min=0 max=1000 endparam func @Function caption="Function" default=asin() endfunc func @Adition caption="Additional perturb" default=cotan() endfunc switch: type="ClusteredM" bailout=bailout seed=pixel power=power @adition=@adition fn1=fn1 fn2=fn2 @morph=@morph } ;endformula ClusteredM{ ;Ronnie Jay init: z=@start z=@Adition(z) loop: z=z^@power+pixel z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "ClusteredM" center=(-0.02,-0.07) magn=0.7 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam float param power caption="Exponent" default=2 endparam float param bailout caption="Bailout value" default=10 min=0 max=1000 endparam param start caption="Z inint" default=1 endparam func @Function caption="Function" default=asin() endfunc func @Adition caption="Additional perturb" default=cotan() endfunc switch: type="ClusteredJ" bailout=bailout seed=pixel power=power @adition=@adition fn1=fn1 fn2=fn2 @morph=@morph } ;endformula Oooh!'N'Aaah!{ ;Ronnie Jay init: c=z sf=c z=pixel loop: c=fn1(conj(z+e)) sf=fn2(z) z=z^@power+@seed-c/sf if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Oooh!'N'Aaah!" heading caption="F7 or spacebar to switch" endheading center=(1.09,-0.009) magn=0.4 angle=0.1 func fn1 Caption="Oooh!" Default=cotan() endfunc func fn2 Caption="Aaah!" Default=cotan() endfunc param power caption="Exponent" default=(1,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param bailout caption="Bailout" default=8.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Oooh!'N'Aaah!M" fn1=fn1 fn2=fn2 power=power seed=pixel bailout=bailout @invert=@invert @morph=@morph } Oooh!'N'Aaah!M{ ;Ronnie Jay init: c=z sf=c z=pixel loop: c=fn1(conj(z+e)) sf=fn2(z) z=z^@power+pixel-c/sf if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Oooh!'N'Aaah!M" heading caption="F7 or spacebar to switch" endheading center=(1.09,-0.009) magn=0.4 angle=0.1 func fn1 Caption="Oooh!" Default=cotan() endfunc func fn2 Caption="Aaah!" Default=cotan() endfunc param power caption="Exponent" default=(1,0) endparam param bailout caption="Bailout" default=8.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Oooh!'N'Aaah!" fn1=fn1 fn2=fn2 power=power seed=pixel bailout=bailout @invert=@invert @morph=@morph } ;endformula Klatu Virada Niktu{ ;Ronnie Jay init: z=pixel f=cabs(pixel) loop: z=z^@power+pixel/f f=fn1(z-pixel) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Klatu Virada Niktu" center=(0.53,-0.01) magn=0.6 angle=90 func fn1 default=ident() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=true endparam param bailout caption="Bail" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam switch: type="Nik2" bailout=bailout power=power seed=pixel @fn1=@fn1 @invert=@invert @morph=@morph } } ;endformula GenesisJ{ ;Ronnie Jay ;Inverting the brot first then ;switching gives some nice results init: z=@Function1(pixel) z=@function2(z*cos(z)) loop: z=z^@power+@seed+tan(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "GenesisJ" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout value" default=20 min=0 max=1000 endparam param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam switch: type="GenesisM" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } GenesisM{ ;Ronnie Jay ;Inverting the brot first then ;switching gives some nice results init: z=@Function1(pixel) z=@function2(z*cos(z)) loop: z=z^@power+pixel+tan(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "GenesisM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout value" default=20 min=0 max=1000 endparam param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam switch: type="GenesisJ" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } ;endformula RazamatazJ{ ;Ronnie Jay init: z=#pixel f=fn1(z) loop: z=z^z^@power+@seed*f f=fn1(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "RazamatazJ" maxiter=1000 magn=0.8 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param seed caption="Julia seed" default=(1.07,0.7175) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout value" default=4 min=0 endparam switch: Type="RazamatazM" seed=pixel bailout=bailout fn1=fn1 @morph=@morph } ;endformula RazamatazM{ ;Ronnie Jay init: z=@start f=(z+pixel-z) loop: z=z^@power+pixel+f f=fn1(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|>@bailout default: title = "RazamatazM" heading caption = "F7 or spacebar to switch" endheading center=(0.01,0) param power caption="Power" default=(1,0) endparam param morph caption="Morph to imag -Z" default=false endparam float param start caption="Z init" default=1 endparam param bailout caption="Bail Value" default=4 min=0 endparam switch: type="RazamatazJ" seed=pixel bailout=bailout fn1=fn1 @morph=@morph } ShatteredM{ ;Ronnie Jay ;Raising the bailout will send this mental ;Also there is an additional Z peterbance ;experiment a little hereIE:Raise the bail, ;Then make a switch init: z=pixel p=@AdditionalZ(pixel) loop: z=z^@power+pixel -@FuncZInit(z+p) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "ShatteredM" heading caption = "F7 or spacebar to switch" endheading Center=(-0.09,0.44) magn=0.70 maxiter=100 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @FuncZInit caption = "FuncZInit" default = acos() endfunc float param bailout caption="Bail value" default=20 min=0 endparam param power caption="Exponent" default=(1,0) endparam switch: type="ShatteredJ" bailout=bailout power=power seed=pixel @FuncZInit=@FuncZInit invert=@invert @morph=@morph } ShatteredJ{ ;Ronnie Jay ;Raising the bailout will send this mental ;Also there is an additional Z peterbance ;experiment a little hereIE:Raise the bail, ;Then make a switch init: z=pixel p=@AdditionalZ(@seed) loop: z=z^@power+@seed -@FuncZInit(z+p) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "ShatteredJ" heading caption = "F7 or spacebar to switch" endheading Center=(-0.0,-0.05) magn=0.70 maxiter=100 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func @FuncZInit caption = "FuncZInit" default = acos() endfunc float param bailout caption="Bail value" default=20 min=0 endparam param seed caption="Julia seed" default=(-0.337,0.357) endparam param power caption="Exponent" default=(1,0) endparam switch: type="ShatteredM" bailout=bailout power=power seed=pixel @FuncZInit=@FuncZInit invert=@invert @morph=@morph } Clouded BrotNewt{ ;Ronnie Jay init: z=z+@Function1(pixel) z=z+@Function2(pixel) loop: if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==false) z=1/z else z=z endif z=z^@p1+pixel zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1)) bailout: |z-zold|<4 default: title = "Clouded BrotNewt" heading caption="F7 or spacebar to switch" endheading maxiter=100 center=(0.06,0.050) magn=0.5 param p1 caption="Exponent" default=(2,0) endparam param r caption="Root value" default=(1,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="JulieNewt" bailout=bailout seed=pixel @p1=@p1 @r=@r @invert=@invert @function1=@function1 @function2=@function2 @morph=@morph } ;endformula Clouded JulieNewt{ ;Ronnie Jay init: z=z+@Function1(pixel) z=z+@Function2(pixel) loop: if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==false) z=1/z else z=z endif z=z^@p1+@seed zold=z z=((p1-1)*z^p1+@r)/(p1*z^(p1-1)) bailout: |z-zold|<4 default: title = "Clouded JulieNewt" heading caption="F7 or spacebar to switch" endheading maxiter=100 center=(0.06,0.050) magn=0.5 param p1 caption="Exponent" default=(2,0) endparam param r caption="Root value" default=(1,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="BrotNewt" bailout=bailout seed=pixel @p1=@p1 @r=@r @invert=@invert @function1=@function1 @function2=@function2 @morph=@morph } ;endformula SnowflakeM { ;Ronnie Jay ;No black lines!!! init: z=pixel^4 c=cos(@power)/e f=z loop: z=z^@power+pixel+c*f f=fn1(f)+@power if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "SnowflakeM" heading caption="F7 or spacebar to switch" endheading angle=.1 ;This iliminates the converging ;black lines which were essentially, ;a feature of the fractal ;If you would like the black converging ;lines set the rotation angle value to zero param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="SnowflakeJ" bailout=bailout power=power seed=pixel @fn1=@fn1 @invert=@invert @morph=@morph } ;endformula SnowflakeJ { ;Ronnie Jay ;No black lines!!! init: z=pixel^4 c=cos(@power)/e f=z loop: z=z^@power+@seed+c*f f=fn1(f)+@power if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "SnowflakeJ" heading caption="F7 or spacebar to switch" endheading angle=.1 ;This iliminates the converging ;black lines which were essentially, ;a feature of the fractal ;If you would like the black converging ;lines set the rotation angle value to zero param seed caption="Julia seed" default=(-1.25,0) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="SnowflakeM" bailout=bailout power=power seed=pixel @fn1=@fn1 @invert=@invert @morph=@morph } ;endformula CameoJ{ ;Ronnie Jay init: z=pixel s=@seed p=@power loop: z=z^p+s+real(z) z=@function1(z) z=@function2(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<4 default: title = "CameoJ" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(1.608,0.504) endparam switch: type="CameoM" bailout=bailout seed=pixel power=power @morph=@morph @function1=@function1 @function2=@function2 } CameoM{ ;Ronnie Jay init: z=pixel p=@power loop: z=z^P+pixel+sqrt(z) z=@function1(z) z=@function2(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<4 default: title = "CameoM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param power caption="Exponent" default=(2,0) endparam switch: type="CameoJ" bailout=bailout seed=pixel power=power @function1=@function1 @function2=@function2 @morph=@morph } Serpaejulia{ ;Ronnie Jay init: z=pixel z=@Function(z) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Serpaejulia" center=(0.02,0.00) magn=0.7 heading caption="F7 or spacebar to switch" endheading heading caption="Parameters Function and Inversion" endheading param morph caption="Morph to imag -Z" default=false endparam param invert Caption="Z inversion" default=false endparam func @function caption="Function" default= cotan() endfunc float param bailout Caption="Bailout Value" default=4 min=0 max=10 endparam float param power caption="Exponent" default=2 endparam param seed caption="Julia seed" default=(0.4193115319,0.165232358) endparam switch: type="SerpaeMandel" bailout=bailout power=power seed=pixel @function=@function @invert=@invert @morph=@morph } ;endformula SerpaeMandel{ ;Ronnie Jay init: z=pixel z=@Function(z) loop: z=z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "SerpaeMandel" center=(0.02,0.00) magn=0.7 heading caption="F7 or spacebar to switch" endheading heading caption="Parameters Function and Inversion" endheading param morph caption="Morph to imag -Z" default=false endparam param invert Caption="Z inversion" default=false endparam func @function caption="Function" default= cotan() endfunc float param bailout Caption="Bailout Value" default=4 min=0 max=10 endparam float param power caption="Exponent" default=2 endparam switch: type="Serpaejulia" bailout=bailout power=power seed=pixel @function=@function @invert=@invert @morph=@morph } ;endformula RecipJ { ;Ronnie Jay init: z=pixel loop: z=z^@power+@seed+recip(z^z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "RecipJ" heading caption="F7 or spacebar to switch" endheading maxiter=250 magn=1 param bailout caption="Bailout" default=4.0 min=0.00001 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(-1.25,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="RecipM" bailout=bailout power=power seed=pixel @invert=@invert @morph=@morph } ;endformula RecipM { ;Ronnie Jay init: z=pixel loop: z=z^@power+pixel+recip(z^z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "RecipM" heading caption="F7 or spacebar to switch" endheading maxiter=250 magn=1 param bailout caption="Bailout" default=4.0 min=0.00001 endparam param power caption="Exponent" default=(2,0) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="RecipJ" bailout=bailout power=power seed=pixel @invert=@invert @morph=@morph } ;endformula GouramiM{ ;Ronnie Jay init: z =@start loop: z = @FuncZInit(z)+Pixel z=(z-sqrt(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="GouramiM" center=(0.35,-0.2) magn=0.2 heading caption = "F7 or spacebar to switch" endheading float param bailout caption="Bailout" default=20 min=0 endparam float param start caption="Starting point" default=1 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="Function" endheading switch: type="GouramiJ" seed=pixel bailout=bailout @start=@start @FuncZInit=@FuncZInit invert=@invert @morph=@morph } ;endformula GouramiJ{ ;Ronnie Jay init: z = #pixel loop: z = @FuncZInit(z)-@seed z=flip(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z| < @bailout default: title="GouramiJ" center=(0.64,0.06) magn=0.4 heading caption = "F7 or spacebar to switch" endheading float param bailout caption="Bailout" default=20 min=0 endparam param seed caption="Julia seed" default =(-0.4626506024,0.4144578313) endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="Function" endheading switch: type="GouramiM" seed=pixel bailout=bailout @start=@start @FuncZInit=@FuncZInit invert=@invert @morph=@morph } WBMc_Julie{ ;Ronnie Jay init: z=pixel p=@power s=@seed a=@Function(s) loop: z=z^p+s+tan(z*@ExtraPerterbance(z+a/s)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "WBMc_Julie" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout value" default = 20 endparam param power caption="Power" default=(2,0) endparam param seed caption="Julia Seed" default =(-1.25,0) endparam switch: type="WBMc_Mandy" bailout=bailout seed=pixel power=power @invert=@invert @function=@function @ExtraPerterbance=@ExtraPerterbance @morph=@morph } WBMc_Mandy{ ;Ronnie Jay init: z=0 p=@power s=pixel a=@Function(s) loop: z=z^p+s+tan(z*@ExtraPerterbance(z+a/s)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "WBMc_Mandy" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout value" default = 20 endparam param power caption="Power" default=(1,0) endparam switch: type="WBMc_Julie" bailout=bailout seed=pixel power=power @invert=@invert @function=@function @ExtraPerterbance=@ExtraPerterbance @morph=@morph } Lovesan lostJ{ ;Ronnie Jay init: z=z+@function1(cos(z)+pixel) loop: z=z^@power+@seed*3+imag(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Lovesan lostJ" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam float param bailout caption="Bail" default=20 endparam float param power caption="Exponent" default=2 endparam param seed caption="Julia seed" default=(-1.25,0) endparam switch: type="lostM" bailout=bailout power=power seed=pixel @function1=@function1 @morph=@morph } Lovesan lostM{ ;Ronnie Jay init: z=z+@function1(real(z)+pixel) loop: z=z^@power+pixel*3^z if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Lovesan lostM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam float param bailout caption="Bail" default=20 endparam float param power caption="Exponent" default=2 endparam switch: type="lostJ" bailout=bailout power=power seed=pixel @function1=@function1 @morph=@morph } Yin{ ;Ronnie Jay init: z =pixel loop: z = @func1(z)^@power+pixel z=@Harmony2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Yin" heading caption="F7 or spacebar to switch" endheading param power caption="Exponent" Default=(1,0) endparam Param @bailout caption="Bailout value" default=4.0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func func1 caption="Harmony 1" default=flip() endfunc switch: type="Yang" bailout=bailout power=power seed=pixel @func1=@func1 @function2=@function2 @invert=@invert @morph=@morph } Yang{ ;Ronnie Jay init: z =pixel loop: z = @func1(z)^@Power+@seed z=@Harmony2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Yang" heading caption="F7 or spacebar to switch" endheading param power caption="Exponent" Default=(1,0) endparam param seed caption="Julia seed" default=(-1.25,0) endparam Param @bailout caption="Bailout value" default=4.0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam func func1 caption="Harmony 2" default=flip() endfunc switch: type="Yin" bailout=bailout power=power seed=pixel @func1=@func1 @function2=@function2 @invert=@invert @morph=@morph } Mora flu_J{ ;Ronnie Jay ;Before someone gets ready to ask me ;Mora flu is simply an Anagram of Formula:-) ;And NOT a new strain of Flu init: z=pixel f=cabs(pixel) loop: z=z^@power+@seed/f f=fn1(z-@seed) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Mora flu_J" Heading caption="F7 or spacebar to switch" endheading center=(0.01,-0.01) magn=0.7 func fn1 default=conj() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Uncheck for true z" default=true endparam param seed caption="Julia seed" default=(1.908433735,0) endparam float param bailout caption="Bailout value" default=4 endparam param power caption="Exponent" default=(1,0) endparam switch: type="flu_M" bailout=bailout seed=pixel power=power fn1=fn1 @invert=@invert @morph=@morph } Mora flu_M{ ;Ronnie Jay ;Before someone gets ready to ask me ;Mora flu is simply an Anagram of Formula:-) ;And NOT a new strain of Flu init: z=pixel f=z loop: z=z^@power+pixel/f f=fn1(z+pixel) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Mora flu_M" Heading caption="F7 or spacebar to switch" endheading func fn1 default=sin() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Uncheck for true z" default=true endparam float param bailout caption="Bailout value" default=4 endparam param power caption="Exponent" default=(1,0) endparam switch: type="flu_J" bailout=bailout seed=pixel power=power fn1=fn1 @invert=@invert @morph=@morph } PannyJ{ ;Ronnie Jay ;For Panny Brawley:-) init: z=pixel loop: z=fn2(@seed*z) z=@ExtraZ(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title="PannyJ" heading caption="F7 or spacebar to switch" endheading float param bailout caption="bailout" default=4 max=1000 min=1 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=False endparam param seed caption="Julia seed" default=(-1.25,0) endparam switch: type="PannyJ" bailout=bailout seed=pixel fn2=fn2 @invert=@invert @ExrtaZ=@ExtraZ @morph=@morph } PannyM{ ;Ronnie Jay ;For Panny Brawley:-) init: z=pixel loop: z=fn2(pixel*z) z=@ExtraZ(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title="PannyM" heading caption="F7 or spacebar to switch" endheading float param bailout caption = "bailout" default = 4 max=1000 min=1 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=False endparam switch: type="PannyJ" bailout=bailout seed=pixel fn2=fn2 @invert=@invert @ExtraZ=@ExtraZ @morph=@morph } Paragon5M{ ;Ronnie Jay ;For my friends Vicky and William Stroud init: z=@start f=z g=f loop: z=z*z+(pixel) z=z+sin(f+g) f=fn1(f)+pixel g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Paragon5M" center=(-0.5,0) magn=2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam float param start caption="Zinit" default=0.5 endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam func fn1 caption="Function 1" default=asin() endfunc func fn2 caption="Function 2" default=cos() endfunc switch: type="Paragon5J" power=power seed=pixel bailout=bailout fn1=fn1 fn2=fn2 @morph=@morph } Paragon5J{ ;Ronnie Jay ;For my friends Vicky and William Stroud init: z=pixel f=z g=f loop: z=z^@power+@seed/f-g+z z=z^@seed f=fn1(f)+@power g=fn2(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Paragon5J" center=(1.16775,0.054375) magn=3.2 maxiter=250 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout value" default=4.0 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(0.45,0.41) endparam func fn1 caption="Function 1" default=tan() endfunc func fn2 caption="Function 2" default=acosh() endfunc switch: type="Paragon5M" power=power seed=pixel bailout=bailout fn1=fn1 fn2=fn2 @morph=@morph } PennylaneJ{ ;Ronnie Jay ;For pennylane ;For her warm enthusiasm ;and dedication to fractal art :-) init: z=pixel z=@Function1(z) z=@Function2(z*@seed) loop: z=z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "PennylaneJ" magn=1 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default= false endparam func @function1 caption="Function 1" default=sin() endfunc func @function2 caption="Function 2" default=atan() endfunc param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-1.55,0.01) endparam param bailout caption="Bailout" default=20 endparam switch: type="PennylaneM" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } PennylaneM{ ;Ronnie Jay ;For pennylane ;For her warm enthusiasm ;and dedication to fractal art :-) init: z=pixel z=@Function1(z*pixel) z=@Function2(z+z) loop: z=z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "PennylaneM" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default= false endparam func @function1 caption="Function 1" default=sin() endfunc func @function2 caption="Function 2" default=cotan() endfunc param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout" default=20 endparam switch: type="PennylaneJ" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } SpirosJ{ ;Ronnie Jay ;This is a low chaos formula. ;ideal for spirals... ;Use the switch from the mandy ;Also experiment with the function and, ;the exponent...Using an exponential of 2 ;Gives a more traditional structure Init: z = pixel c = 2 Loop: z = z^@power+@seed+fn1(z)/c if(@Morph==true) z=z-imag(z) else z=z endif Bailout: |z| <@bailout default: Title = "SpirosJ" magn=1 center=(-0.02,0.04) maxiter=250 param morph caption="Morph to imag -Z" default=false endparam param power caption = "exponent" default = (1,0) endparam param seed caption = "Julia Seed" default = (-0.3,-0.05) endparam Func fn1 caption = "function1" default = tanh() endfunc float param bailout caption = "bailout Value" default = 20 endparam switch: type="SpirosM" bailout=bailout power=power fn1=fn1 @morph=@morph seed=pixel } SpirosM{ ;Ronnie Jay ;Thw Usethe swfrom the mandy ;Also experiment with the function and, ;the exponent...Using an exponential of 2 ;Gives a more traditional structure Init: z = pixel c = 2 Loop: z = z^@power+pixel+fn1(z)/c if(@Morph==true) z=z-imag(z) else z=z endif Bailout: |z| <@bailout default: Title = "SpirosM" magn=1 center=(-0.02,0.04) maxiter=250 param morph caption="Morph to imag -Z" default=false endparam param power caption = "exponent" default = (1,0) endparam Func fn1 caption = "function1" default = tanh() endfunc float param bailout caption = "bailout Value" default = 20 endparam switch: type="SpirosJ" bailout=bailout power=power fn1=fn1 seed=pixel @morph=@morph } Ele_1M{ ;Ronnie Jay init: z=@start loop: c=fn1(pixel) z=fn1(z) sec=z-z third=z+z*2 z=1/fn2(sec+third+c) z=@AdditionalZ(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<=@bailout default: title ="Ele_1M" heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param start caption="Z Init" default=(1,0) endparam float param bailout caption="Bailout value" default=2 endparam func fn1 caption="Function 1" default=sin() endfunc func fn2 caption="Function 2" default=sin() endfunc switch: type="Ele_1J" bailout=bailout seed=pixel @AdditionalZ=@AdditionalZ @invert=@invert fn1=fn1 fn2=fn2 @morph=@morph } Ele_1J{ ;Ronnie Jay init: z=pixel loop: c=fn1(@seed) z=fn1(z) sec=z-z third=z+z*2 z=1/fn2(sec+third+c) z=@AdditionalZ(z) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<=@bailout default: title ="Ele_1J" param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="F7 or spacebar to switch" endheading param seed caption="Julia seed" default=(-1.25,0) endparam float param bailout caption="Bailout value" default=2 endparam func fn1 caption="Function 1" default=sin() endfunc func fn2 caption="Function 2" default=sin() endfunc switch: type="Ele_1M" bailout=bailout seed=pixel @AdditionalZ=@AdditionalZ @invert=@invert fn1=fn1 fn2=fn2 @morph=@morph } LaylaroseJ{ ;Ronnie Jay ;For my friend Kim :-) init: z=pixel f=cabs(@seed) loop: z=z^@power+@seed/f f=fn1(z+@seed) z=@Function2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "LaylaroseJ" center=(0.05,-0.01) magn=0.8 angle=43.3311 func fn1 default=acosh() endfunc func Function2 caption="Function 2" default=conj() endfunc heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout Value" default=20 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-0.07,-1 ) endparam switch: type="LaylaroseM" bailout=bailout power=power seed=pixel fn1=fn1 @Function2=@function2 @invert=@invert @morph=@morph } LaylaroseM{ ;Ronnie Jay ;For my friend Kim :-) init: z=pixel f=cabs(z) loop: z=z^@power+pixel/f f=fn1(z+z) z=@Function2(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "LaylaroseM" center=(0.05,-0.01) magn=0.8 angle=43.3311 func fn1 default=acosh() endfunc func Function2 caption="Function 2" default=conj() endfunc heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam float param bailout caption="Bailout Value" default=20 endparam param power caption="Exponent" default=(2,0) endparam switch: type="LaylaroseJ" bailout=bailout power=power seed=pixel fn1=fn1 @Function2=@function2 @invert=@invert @morph=@morph } Nebula1 { ;Ronnie Jay init: z=pixel f=z*3 loop: z=z^@power+@seed+f*z^3 f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Nebula1" center=(-0.11,-0.047) magn=1.28 maxiter=250 angle=90 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam float param bailout caption="Bailout value" default=20 min=0 endparam param power caption="Exponent" default=(3,0) endparam param seed caption="Julia Seed" default=(0.601,0.0556) endparam func fn1 caption="Z Function" default=asinh() endfunc switch: type ="Nebula2" bailout=bailout power=power fn1=fn1 seed=pixel @morph=@morph } Nebula2 { ;Ronnie Jay init: z=pixel f=z loop: z=z^@power-pixel+f f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Nebula2" center=(0.035,-0.044) magn=0.8 maxiter=250 heading caption="F7 or spacebar to switch" endheading func fn1 caption="Z Function" default=asinh() endfunc param morph caption="Morph to imag -Z" default=false endparam float param bailout caption="Bailout value" default=20 min=0 endparam param power caption="Exponent" default=(3,0) endparam switch: type ="Nebula1" bailout=bailout power=power fn1=fn1 seed=pixel @morph=@morph } Tresamie1{ ;Ronnie Jay ;Dedicated to Vivian :-) ;Use the switch from the tres2, ;to find some nifty julias... ;And use the function for some more scope. ;Also inverting the Z init first. ;Then switching gives some great shapes. init: z=pixel loop: z = z^@power+flip(z)*@seed z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Tresamie1" heading caption="F7 or spacebar to switch" endheading maxiter=1000 param seed caption="Julia seed" default=(1.14,-0.32) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Tresamie2" seed=pixel power=power bailout=bailout @invert=@invert @Function=@Function @morph=@morph } Tresamie2{ ;Ronnie Jay ;Dedicated to Vivian :-) ;Use the switch from the tres2, ;to find some nifty julias... ;And use the function for some more scope. ;Also inverting the Z init first. ;Then switching gives some great shapes. init: z=pixel a=cotan(z) loop: z = z^@power+real(z)*pixel+a z=@Function(cotan(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Tresamie2" heading caption="F7 or spacebar to switch" endheading maxiter=1000 param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Tresamie1" seed=pixel power=power bailout=bailout @invert=@invert @Function=@Function @morph=@morph } Spaniel_M{ ;Ronnie Jay ;Dedicated to CavalierLady ;for her friendship and help :-) ;Use the switch from the mandel, ;for some great shapes. init: z=pixel f=z loop: z=z*z+pixel/real(z)+f f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Spaniel_M" heading caption = "F7 or spacebar to switch" endheading angle=180 center=(-0.16,0.005) magn=2 maxiter=250 float param bailout caption="Bailout value" default=20 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Spaniel_J" bailout=bailout fn1=fn1 @invert=@invert seed=pixel @morph=@morph } Spaniel_J{ ;Ronnie Jay ;Dedicated to CavalierLady ;for her friendship and help :-) ;Use the switch from the mandel, ;for some great shapes. init: z=pixel f=z loop: z=z*z+@seed/real(z)+f f=fn1(f) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Spaniel_J" heading caption = "F7 or spacebar to switch" endheading angle=180 center=(-0.16,0.005) magn=2 maxiter=250 float param bailout caption="Bailout value" default=20 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param seed caption="Julia seed" default =(0.055,-0.085) endparam switch: type="Spaniel_M" bailout=bailout fn1=fn1 @function2=@function2 @morph=@morph @invert=@invert seed=pixel } Mini_GinsengJ{ ;Ronnie Jay ;A mini version of the giant init: z=pixel c=@seed d=c loop: z = z^@power+@seed z=@function(ident(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op1=="+") z=z+c elseif(@op1=="-") z=z-c elseif(@op1=="*") z=z*c elseif(@op1=="/") z=z/c elseif(@op1=="^") z=z^c endif if(@op2=="+") z=z+c+d elseif(@op2=="-") z=z-c-d elseif(@op2=="*") z=z*c*d elseif(@op2=="/") z=z/c/d elseif(@op2=="^") z=z^c^d endif bailout: |z|<@bailout default: title = "Mini_GinsengJ" heading caption="F7 or spacebar to switch" endheading maxiter=1000 angle=90 param op1 caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op2 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam func @function caption="Function" default=asin() endfunc param seed caption="Julia seed" default=(0.9,-0.02) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Mini_GinsengM" seed=pixel power=power bailout=bailout @invert=@invert @function=@function @morph=@morph } Mini_GinsengM{ ;Ronnie Jay ;A mini version of the giant init: z=pixel c=z d=c loop: z = z^@power+pixel z=@function(flip(z*3)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op1=="+") z=z+c elseif(@op1=="-") z=z-c elseif(@op1=="*") z=z*c elseif(@op1=="/") z=z/c elseif(@op1=="^") z=z^c endif if(@op2=="+") z=z+c+d elseif(@op2=="-") z=z-c-d elseif(@op2=="*") z=z*c*d elseif(@op2=="/") z=z/c/d elseif(@op2=="^") z=z^c^d endif bailout: |z|<@bailout default: title = "Mini_GinsengM" heading caption="F7 or spacebar to switch" endheading param op1 caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op2 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam maxiter=1000 angle=90 func @function caption="Function" default=asin() endfunc param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Mini_GinsengJ" seed=pixel power=power bailout=bailout @invert=@invert @function=@function @op1=@op1 @op2=@op2 @morph=@morph } Bambi (yaxis){ ;Ronnie Jay init: z=pixel^2 loop: z = z^@power+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Bambi" heading caption="F7 or spacebar to switch" endheading maxiter=1000 param seed caption="Julia seed" default=(0.3141,-0.5) endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="BambiM" bailout=bailout power=power seed=pixel @invert=@invert @morph=@morph } BambiM (yaxis){ ;Ronnie Jay init: z=pixel^2 loop: z = z^@power+pixel if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "BambiM" heading caption="F7 or spacebar to switch" endheading maxiter=1000 param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout Value" default=4.0 min=0 endparam param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam switch: type="Bambi" bailout=bailout power=power @morph=@morph seed=pixel @invert=@invert } Frax_1{ ;Ronnie Jay init: z=z+@Function1(pixel^3) z=z+@Function2(pixel) c=pixel d=c loop: zold=z z=((p1-1)*z^p1)/(p1*z^(p1-1)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+d elseif(@op1=="-") z=z-c-d elseif(@op1=="*") z=z*c*d elseif(@op1=="/") z=z/c/d elseif(@op1=="^") z=z^c^d endif bailout: |z-zold|>0.00001 default: title = "Frax_1" heading caption="F7 or spacebar to switch" endheading heading caption="Operators and functions" endheading maxiter=100 center=(0.06,0.050) magn=0.5 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param op caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param p1 caption="Exponent" default=(2,0) endparam switch: type="Frax_2" bailout=bailout seed=pixel p1=p1 @invert=@invert @r=@r @function1=@function1 @function2=@function2 op=op op1=op1 @morph=@morph } Frax_2{ ;Ronnie Jay init: z=z+@Function1(pixel) z=z+@Function2(pixel) c=@seed d=c loop: zold=z z=((p1-1)*z^p1)/(p1*z^(p1-1)) z=z^p1+@seed if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif if(@op=="+") z=z+c elseif(@op=="-") z=z-c elseif(@op=="*") z=z*c elseif(@op=="/") z=z/c elseif(@op=="^") z=z^c endif if(@op1=="+") z=z+c+d elseif(@op1=="-") z=z-c-d elseif(@op1=="*") z=z*c*d elseif(@op1=="/") z=z/c/d elseif(@op1=="^") z=z^c^d endif bailout: |z-zold|>=0.00001 default: title = "Frax_2" maxiter=100 center=(0.06,0.050) magn=0.5 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam heading caption="F7 or spacebar to switch" endheading heading caption="Operators and functions" endheading param op caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op1 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param p1 caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(0.96,0.03) endparam switch: type="Frax_1" bailout=bailout seed=pixel @invert=@invert p1=p1 @ivert=@invert @r=@r @function1=@function1 @function2=@function2 op=op op1=op1 @morph=@morph } Simplicity_M{ ;Ronnie Jay init: z=@start f=@function(pixel) loop: z=z*z-pixel+real(z*f) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<4 default: title = "Simplicity_M" center=(0.49,0.02) magn=.47 angle=90 periodicity=0 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param start caption="Z init" default=(0,0) endparam switch: type="Simplicity_J" seed=pixel @function=@function @function2=@function2 @morph=@morph } Simplicity_J{ ;Ronnie Jay init: z=pixel f=@function(@seed) loop: z=z^z-@seed+(z*f) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<4 default: title = "Simplicity_J" center=(0.49,0.02) magn=.47 angle=90 periodicity=0 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param seed caption="Julia seed" default=(-1.25,0) endparam switch: type="Simplicity_M" seed=pixel @function=@function @function2=@function2 @morph=@morph } Shapes of things{ ;This formula works well with PCT kcc3.ucl. ;Also with other colourings. ;The results can be pleasing. ;If you use other colourings. ;The center contains a glass sphere. ;Adjust the bailout for different sizes. ;setting the function to round gives a cube. init: z=pixel c=@Function(z) loop: z=z+z+z+c if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Shapes of things" param morph caption="Morph to imag -Z" default=false endparam float param bailout caption="Bailout value" default=4 endparam } Above{ ;Ronnie Jay ;My tribute to David Blain ;Who has successfully completed, ;44 days and nights in isolation' ;In his Above the Below endeavour. ;At London’s Tower bridge... ;Respect Dave! init: z=pixel a=tan(z+@Function(z)) c=a loop: z=z^@power+z/a if(@Morph==true) z=z-imag(z) else z=z endif if (@op==1) z = c+(z*pixel) elseif (@op==2) z = c*(z*pixel) elseif (@op==3) z = c-(z*pixel) elseif (@op==4) z = c/(z*pixel) elseif (@op==5) z = c^(z*pixel) elseif (@op==6) z = -c*c-(z*pixel) elseif (@op==7) z = -c+(z*pixel) elseif (@op==8) z = -c*(z*pixel) endif bailout: |z|<@bailout default: title = "Above" periodicity=0 param bailout caption="Bailout value" default =20 endparam heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param @op caption = "Shape shift" enum= "1""2""3""4""5""6""7""8" default= 0 endparam param power caption="Exponential" default=(2,0) endparam switch: type="Below" bailout=bailout power=power @function=@function @op=@op seed=pixel @morph=@morph } Below{ ;Ronnie Jay ;My tribute to David Blain ;Who has successfully completed, ;44 days and nights in isolation' ;In his Above the Below endeavour. ;At London’s Tower bridge... ;Respect Dave! init: z=pixel z=(z+@Function(z)) c=@seed loop: z=z^@seed+z if(@Morph==true) z=z-imag(z) else z=z endif if (@op==1) z = c+(z*@seed) elseif (@op==2) z = c*(z*@seed) elseif (@op==3) z = c-(z*@seed) elseif (@op==4) z = c/(z*@seed) elseif (@op==5) z = c^(z*@seed) elseif (@op==6) z = -c*c-(z*@seed) elseif (@op==7) z = -c+(z*@seed) elseif (@op==8) z = -c*(z*@seed) endif bailout: |z|<@bailout default: title = "Below" periodicity=0 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout value" default =20 endparam param @op caption = "Shape shift" enum= "1""2""3""4""5""6""7""8" default= 0 endparam param seed caption="Julia seed" default=(-1.25,0) endparam switch: type="Above" bailout=bailout power=power @function=@function @op=@op seed=pixel @morph=@morph } Kansas1{ ;Ronnie Jay ;For Marion Lyons ;For her warm and positive comments, ;on my images...Thank you Marion init: z=pixel c=@power loop: z=z*z*c^z if(@Morph==true) z=z-imag(z) else z=z endif if (@op==1) z = c+(z*pixel) elseif (@op==2) z = c*(z*pixel) elseif (@op==3) z = c-(z*pixel) elseif (@op==4) z = c/(z*pixel) elseif (@op==5) z = c^(z*pixel) elseif (@op==6) z = -c*c-(z*pixel) elseif (@op==7) z = -c+(z*pixel) elseif (@op==8) z = -c*(z*pixel) endif bailout: |z|<@bailout default: title = "Kansas1" heading caption="F7 or spacebar to switch" endheading periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout value" default =20 endparam param @op caption = "Change Shape" enum= "1""2""3""4""5""6""7""8" default= 0 endparam param power caption="Exponential" default=(2,0) endparam switch: type="Kansas2" bailout=bailout power=power @function=@function @op=@op seed=pixel @morph=@morph } Kansas2{ ;Ronnie Jay ;For Marion Lyons ;For her warm and positive comments, ;on my images...Thank you Marion init: z=pixel c=(@seed) loop: z=z^@seed if(@Morph==true) z=z-imag(z) else z=z endif if (@op==1) z = c+(z*@seed) elseif (@op==2) z = c*(z*@seed) elseif (@op==3) z = c-(z*@seed) elseif (@op==4) z = c/(z*@seed) elseif (@op==5) z = c^(z*@seed) elseif (@op==6) z = -c*c-(z*@seed) elseif (@op==7) z = -c+(z*@seed) elseif (@op==8) z = -c*(z*@seed) endif bailout: |z|<@bailout default: title = "Kansas2" periodicity=0 maxiter=250 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout value" default =20 endparam param @op caption = "Change Shape" enum= "1""2""3""4""5""6""7""8" default= 4 endparam param seed caption="Julia seed" default=(-1.043478261,-0.1003344482) endparam switch: type="Kansas1" bailout=bailout power=power @function=@function @op=@op seed=pixel @morph=@morph } Missouri_Julia{ ;Ronnie Jay ;Dedicated to Irene (missouri) ;The finest lady a man can have as a friend. ;Try a switch from the Missouri Mandel ;Please visit www.irenesimages.com init: z=pixel f=z loop: z=z^@power+@seed+f f=fn1(conj(f)) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Missouri_Julia" periodicity=0 magn=1.2 maxiter=250 center=(-0.53,0.016) angle =60 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout" default=4 min=0 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia Seed" default=(0.5079,-0.36) endparam func fn1 caption="Function" default =atan() endfunc switch: type="Missouri_Mandel" seed=pixel bailout=bailout power=power fn1=fn1 @morph=@morph } Missouri_Mandel{ ;Ronnie Jay ;Dedicated to Irene (missouri) ;The finest lady a man can have as a friend. ;Try a switch from the Missouri Julia ;Please visit www.irenesimages.com init: z=pixel^2 f=z loop: z=z^@power+@pixel+f f=fn1(conj(f)) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z|<@bailout default: title = "Missouri_Mandel" periodicity=0 magn=1.1 maxiter=250 center=(-0.01,0.040) angle =90 heading caption = "F7 or spacebar to switch" endheading param morph caption="Morph to imag -Z" default=false endparam param bailout caption="Bailout" default=4 min=0 endparam param power caption="Exponent" default=(2,0) endparam func fn1 caption="Function" default =atan() endfunc switch: type="Missouri_Julia" seed=pixel bailout=bailout power=power fn1=fn1 @morph=@morph } Melody{ ;Ronnie Jay ;For Melody ;Try the functions ;and experiment with the exponent init: z=pixel loop: z=z^@power+@seed /@Function1(flip(z)) z=@Function2(z*imag(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Melody" heading caption = "F7 or spacebar to switch" endheading Center=(-0.0,-0.05) magn=0.70 maxiter=100 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout value" default=4.0 endparam param seed caption="Julia seed" default=(0.0096,0.65) endparam param power caption="Exponent" default=(2,0) endparam switch: type="Amy" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } Amy{ ;Ronnie Jay ;For Amy ;Try the functions ;and experiment with the exponent init: z=pixel loop: z=z^@power+pixel /@Function1(flip(z)) z=@Function2(z*imag(z)) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Amy" heading caption = "F7 or spacebar to switch" endheading Center=(-0.0,-0.05) magn=0.70 maxiter=100 periodicity=0 param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param bailout caption="Bailout value" default=4.0 endparam param power caption="Exponent" default=(2,0) endparam switch: type="Melody" bailout=bailout seed=pixel power=power @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } Ginseng { ;Ronnie Jay ;Thanks to Andrea spinozzi, ;for his involvement, ;in the development of this formula :-) ;It is a joint effort between us... ;Much of the larger functions operators, ;and enumerators, ;are solely the work of spizz.. ;Our thaks to Daniele Lupo ;for heads up on the bailout function init: z=0 d=0 loop: if(@Morph==true) z=z-imag(z) else z=z endif IF @op3==0 ;__________________________________ IF @op2==0 ;--------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1+sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1+sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1+sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1+sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1+sqr(z))+fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1-sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1-sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1-sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1-sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1-sqr(z))+fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1*sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1*sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1*sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1*sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1*sqr(z))+fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1^sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1^sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1^sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1^sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1^sqr(z))+fn3(pixel) endif Endif ELSEIF @op2==1 ;-------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1+sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1+sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1+sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1+sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1+sqr(z))-fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1-sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1-sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1-sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1-sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1-sqr(z))-fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1*sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1*sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1*sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1*sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1*sqr(z))-fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1^sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1^sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1^sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1^sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1^sqr(z))-fn3(pixel) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1+sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1+sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1+sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1+sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1+sqr(z))*fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1-sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1-sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1-sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1-sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1-sqr(z))*fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1*sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1*sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1*sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1*sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1*sqr(z))*fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1^sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1^sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1^sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1^sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1^sqr(z))*fn3(pixel) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1+sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1+sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1+sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1+sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1+sqr(z))/fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1-sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1-sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1-sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1-sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1-sqr(z))/fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1*sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1*sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1*sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1*sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1*sqr(z))/fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel+fn2(pixel)+p1^sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel+fn2(pixel)-p1^sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel+fn2(pixel)*p1^sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel+fn2(pixel)/p1^sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel+fn2(pixel)^p1^sqr(z))/fn3(pixel) endif Endif Endif Elseif @op3==1 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1+sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1+sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1+sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1+sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1+sqr(z))+fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1-sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1-sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1-sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1-sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1-sqr(z))+fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1*sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1*sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1*sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1*sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1*sqr(z))+fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1^sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1^sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1^sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1^sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1^sqr(z))+fn3(pixel) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1+sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1+sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1+sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1+sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1+sqr(z))-fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1-sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1-sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1-sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1-sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1-sqr(z))-fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1*sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1*sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1*sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1*sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1*sqr(z))-fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1^sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1^sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1^sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1^sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1^sqr(z))-fn3(pixel) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1+sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1+sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1+sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1+sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1+sqr(z))*fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1-sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1-sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1-sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1-sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1-sqr(z))*fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1*sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1*sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1*sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1*sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1*sqr(z))*fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1^sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1^sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1^sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1^sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1^sqr(z))*fn3(pixel) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1+sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1+sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1+sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1+sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1+sqr(z))/fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1-sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1-sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1-sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1-sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1-sqr(z))/fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1*sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1*sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1*sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1*sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1*sqr(z))/fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel-fn2(pixel)+p1^sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel-fn2(pixel)-p1^sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel-fn2(pixel)*p1^sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel-fn2(pixel)/p1^sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel-fn2(pixel)^p1^sqr(z))/fn3(pixel) endif Endif Endif Elseif @op3==2 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1+sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1+sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1+sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1+sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1+sqr(z))+fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1-sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1-sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1-sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1-sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1-sqr(z))+fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1*sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1*sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1*sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1*sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1*sqr(z))+fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1^sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1^sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1^sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1^sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1^sqr(z))+fn3(pixel) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1+sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1+sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1+sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1+sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1+sqr(z))-fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1-sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1-sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1-sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1-sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1-sqr(z))-fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1*sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1*sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1*sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1*sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1*sqr(z))-fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1^sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1^sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1^sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1^sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1^sqr(z))-fn3(pixel) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1+sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1+sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1+sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1+sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1+sqr(z))*fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1-sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1-sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1-sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1-sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1-sqr(z))*fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1*sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1*sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1*sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1*sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1*sqr(z))*fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1^sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1^sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1^sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1^sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1^sqr(z))*fn3(pixel) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1+sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1+sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1+sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1+sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1+sqr(z))/fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1-sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1-sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1-sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1-sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1-sqr(z))/fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1*sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1*sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1*sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1*sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1*sqr(z))/fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel*fn2(pixel)+p1^sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel*fn2(pixel)-p1^sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel*fn2(pixel)*p1^sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel*fn2(pixel)/p1^sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel*fn2(pixel)^p1^sqr(z))/fn3(pixel) endif Endif Endif Elseif @op3==3 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1+sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1+sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1+sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1+sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1+sqr(z))+fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1-sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1-sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1-sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1-sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1-sqr(z))+fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1*sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1*sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1*sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1*sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1*sqr(z))+fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1^sqr(z))+fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1^sqr(z))+fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1^sqr(z))+fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1^sqr(z))+fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1^sqr(z))+fn3(pixel) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1+sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1+sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1+sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1+sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1+sqr(z))-fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1-sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1-sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1-sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1-sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1-sqr(z))-fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1*sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1*sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1*sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1*sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1*sqr(z))-fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1^sqr(z))-fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1^sqr(z))-fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1^sqr(z))-fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1^sqr(z))-fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1^sqr(z))-fn3(pixel) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1+sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1+sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1+sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1+sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1+sqr(z))*fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1-sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1-sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1-sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1-sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1-sqr(z))*fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1*sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1*sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1*sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1*sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1*sqr(z))*fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1^sqr(z))*fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1^sqr(z))*fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1^sqr(z))*fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1^sqr(z))*fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1^sqr(z))*fn3(pixel) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1+sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1+sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1+sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1+sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1+sqr(z))/fn3(pixel) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1-sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1-sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1-sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1-sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1-sqr(z))/fn3(pixel) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1*sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1*sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1*sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1*sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1*sqr(z))/fn3(pixel) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*pixel/fn2(pixel)+p1^sqr(z))/fn3(pixel) elseif @op=="Subtract" z=fn1(cabs(z)*pixel/fn2(pixel)-p1^sqr(z))/fn3(pixel) elseif @op=="Multiply" z=fn1(cabs(z)*pixel/fn2(pixel)*p1^sqr(z))/fn3(pixel) elseif @op=="Divide" z=fn1(cabs(z)*pixel/fn2(pixel)/p1^sqr(z))/fn3(pixel) elseif @op=="Elevate" z=fn1(cabs(z)*pixel/fn2(pixel)^p1^sqr(z))/fn3(pixel) endif Endif Endif ENDIF if (@invert==true) z=1/z else z=z endif if @type==0 if |z|<@bailout d=0 else d=1 endif elseif @type==1 if |real(z)+imag(z)|<@bailout d=0 else d=1 endif elseif @type==2 if |real(z)-imag(z)|<@bailout d=0 else d=1 endif elseif @type==3 if |real(z)*imag(z)|<@bailout d=0 else d=1 endif elseif @type==4 if |real(z)/imag(z)|<@bailout d=0 else d=1 endif elseif @type==5 if |imag(z)/real(z)|<@bailout d=0 else d=1 endif elseif @type==6 if |real(z)^imag(z)|<@bailout d=0 else d=1 endif elseif @type==7 if |imag(z)^real(z)|<@bailout d=0 else d=1 endif endif bailout: d==0 default: title="Ginseng" angle=90 Heading Caption="Bailout Parameters" endheading param bailout caption="Bailout Value" default=4.0 endparam param type caption="Bailout Mode" enum="|z|""|Real(z)+Imag(z)|""|Real(z)-Imag(z)|""|Real(z)*Imag(z)|"\ "|Real(z)/Imag(z)|""|Imag(z)/Real(z)|""|Real(z)^Imag(z)|""|Imag(z)^Real(z)|" default=0 endparam Heading Caption="Parameters" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param op1 caption="Select" enum="1""2""3""4" default=1 endparam param op3 caption="Function2" enum="Add""Subtract""Multiply""Divide" default=0 endparam param op2 caption="Function3" enum="Add""Subtract""Multiply""Divide" default=0 endparam param op caption="Parameter Value" enum="Add""Subtract""Multiply""Divide""Elevate" default=0 endparam param p1 caption="Parameter" default=(0.5,0.0) endparam Heading Caption="Functions" endheading func fn1 caption="Function 1" default=asin() endfunc func fn2 caption="Function 2" default=atanh() endfunc func fn3 caption="Function 3" default=atanh() endfunc switch: type="Ginseng2" Bailout=@Bailout seed=#pixel type=@type op=@op op1=@op1 op2=@op2 op3=@op3 invert=@invert @morph=@morph p1=@p1 fn1=fn1 fn2=fn2 fn3=fn3 } Ginseng2{ ;Ronnie Jay ;Thanks to Andrea spinozzi, ;for his involvement, ;in the development of this formula :-) ;It is a joint effort between us... ;Much of the larger functions operators, ;and enumerators, ;are solely the work of spizz.. ;Our thaks to Daniele Lupo ;for heads up on the bailout function init: z=pixel d=0 loop: if(@Morph==true) z=z-imag(z) else z=z endif IF @op3==0 ;__________________________________ IF @op2==0 ;--------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1+sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1+sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1+sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1+sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1+sqr(z))+fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1-sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1-sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1-sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1-sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1-sqr(z))+fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1*sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1*sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1*sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1*sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1*sqr(z))+fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1^sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1^sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1^sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1^sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1^sqr(z))+fn3(@seed) endif Endif ELSEIF @op2==1 ;-------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1+sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1+sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1+sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1+sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1+sqr(z))-fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1-sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1-sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1-sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1-sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1-sqr(z))-fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1*sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1*sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1*sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1*sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1*sqr(z))-fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1^sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1^sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1^sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1^sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1^sqr(z))-fn3(@seed) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1+sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1+sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1+sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1+sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1+sqr(z))*fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1-sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1-sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1-sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1-sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1-sqr(z))*fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1*sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1*sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1*sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1*sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1*sqr(z))*fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1^sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1^sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1^sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1^sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1^sqr(z))*fn3(@seed) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1+sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1+sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1+sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1+sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1+sqr(z))/fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1-sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1-sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1-sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1-sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1-sqr(z))/fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1*sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1*sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1*sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1*sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1*sqr(z))/fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed+fn2(@seed)+p1^sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed+fn2(@seed)-p1^sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed+fn2(@seed)*p1^sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed+fn2(@seed)/p1^sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed+fn2(@seed)^p1^sqr(z))/fn3(@seed) endif Endif Endif Elseif @op3==1 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1+sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1+sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1+sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1+sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1+sqr(z))+fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1-sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1-sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1-sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1-sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1-sqr(z))+fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1*sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1*sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1*sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1*sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1*sqr(z))+fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1^sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1^sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1^sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1^sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1^sqr(z))+fn3(@seed) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1+sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1+sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1+sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1+sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1+sqr(z))-fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1-sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1-sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1-sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1-sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1-sqr(z))-fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1*sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1*sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1*sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1*sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1*sqr(z))-fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1^sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1^sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1^sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1^sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1^sqr(z))-fn3(@seed) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1+sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1+sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1+sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1+sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1+sqr(z))*fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1-sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1-sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1-sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1-sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1-sqr(z))*fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1*sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1*sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1*sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1*sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1*sqr(z))*fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1^sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1^sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1^sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1^sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1^sqr(z))*fn3(@seed) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1+sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1+sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1+sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1+sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1+sqr(z))/fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1-sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1-sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1-sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1-sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1-sqr(z))/fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1*sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1*sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1*sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1*sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1*sqr(z))/fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed-fn2(@seed)+p1^sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed-fn2(@seed)-p1^sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed-fn2(@seed)*p1^sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed-fn2(@seed)/p1^sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed-fn2(@seed)^p1^sqr(z))/fn3(@seed) endif Endif Endif Elseif @op3==2 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1+sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1+sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1+sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1+sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1+sqr(z))+fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1-sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1-sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1-sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1-sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1-sqr(z))+fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1*sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1*sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1*sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1*sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1*sqr(z))+fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1^sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1^sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1^sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1^sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1^sqr(z))+fn3(@seed) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1+sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1+sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1+sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1+sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1+sqr(z))-fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1-sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1-sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1-sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1-sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1-sqr(z))-fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1*sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1*sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1*sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1*sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1*sqr(z))-fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1^sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1^sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1^sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1^sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1^sqr(z))-fn3(@seed) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1+sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1+sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1+sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1+sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1+sqr(z))*fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1-sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1-sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1-sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1-sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1-sqr(z))*fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1*sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1*sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1*sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1*sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1*sqr(z))*fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1^sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1^sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1^sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1^sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1^sqr(z))*fn3(@seed) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1+sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1+sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1+sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1+sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1+sqr(z))/fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1-sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1-sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1-sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1-sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1-sqr(z))/fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1*sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1*sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1*sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1*sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1*sqr(z))/fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed*fn2(@seed)+p1^sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed*fn2(@seed)-p1^sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed*fn2(@seed)*p1^sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed*fn2(@seed)/p1^sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed*fn2(@seed)^p1^sqr(z))/fn3(@seed) endif Endif Endif Elseif @op3==3 ;___________________________________ IF @op2==0 ;---------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1+sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1+sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1+sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1+sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1+sqr(z))+fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1-sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1-sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1-sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1-sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1-sqr(z))+fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1*sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1*sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1*sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1*sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1*sqr(z))+fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1^sqr(z))+fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1^sqr(z))+fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1^sqr(z))+fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1^sqr(z))+fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1^sqr(z))+fn3(@seed) endif Endif Elseif @op3==1 ;----------------------------------------- ELSEIF @op2==1 If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1+sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1+sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1+sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1+sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1+sqr(z))-fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1-sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1-sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1-sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1-sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1-sqr(z))-fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1*sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1*sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1*sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1*sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1*sqr(z))-fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1^sqr(z))-fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1^sqr(z))-fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1^sqr(z))-fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1^sqr(z))-fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1^sqr(z))-fn3(@seed) endif Endif Elseif @op2==2 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1+sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1+sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1+sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1+sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1+sqr(z))*fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1-sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1-sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1-sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1-sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1-sqr(z))*fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1*sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1*sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1*sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1*sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1*sqr(z))*fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1^sqr(z))*fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1^sqr(z))*fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1^sqr(z))*fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1^sqr(z))*fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1^sqr(z))*fn3(@seed) endif Endif Elseif @op2==3 ;---------------------------------------- If @op1=="1" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1+sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1+sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1+sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1+sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1+sqr(z))/fn3(@seed) endif Elseif @op1=="2" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1-sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1-sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1-sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1-sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1-sqr(z))/fn3(@seed) endif Elseif @op1=="3" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1*sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1*sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1*sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1*sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1*sqr(z))/fn3(@seed) endif Elseif @op1=="4" if @op=="Add" z=fn1(cabs(z)*@seed/fn2(@seed)+p1^sqr(z))/fn3(@seed) elseif @op=="Subtract" z=fn1(cabs(z)*@seed/fn2(@seed)-p1^sqr(z))/fn3(@seed) elseif @op=="Multiply" z=fn1(cabs(z)*@seed/fn2(@seed)*p1^sqr(z))/fn3(@seed) elseif @op=="Divide" z=fn1(cabs(z)*@seed/fn2(@seed)/p1^sqr(z))/fn3(@seed) elseif @op=="Elevate" z=fn1(cabs(z)*@seed/fn2(@seed)^p1^sqr(z))/fn3(@seed) endif Endif Endif ENDIF if (@invert==true) z=1/z else z=z endif if @type==0 if |z|<@bailout d=0 else d=1 endif elseif @type==1 if |real(z)+imag(z)|<@bailout d=0 else d=1 endif elseif @type==2 if |real(z)-imag(z)|<@bailout d=0 else d=1 endif elseif @type==3 if |real(z)*imag(z)|<@bailout d=0 else d=1 endif elseif @type==4 if |real(z)/imag(z)|<@bailout d=0 else d=1 endif elseif @type==5 if |imag(z)/real(z)|<@bailout d=0 else d=1 endif elseif @type==6 if |real(z)^imag(z)|<@bailout d=0 else d=1 endif elseif @type==7 if |imag(z)^real(z)|<@bailout d=0 else d=1 endif endif bailout: d==0 default: title="Ginseng2" angle=90 Heading Caption="Bailout Parameters" endheading param bailout caption="Bailout Value" default=4.0 endparam param type caption="Bailout Mode" enum="|z|""|Real(z)+Imag(z)|""|Real(z)-Imag(z)|""|Real(z)*Imag(z)|"\ "|Real(z)/Imag(z)|""|Imag(z)/Real(z)|""|Real(z)^Imag(z)|""|Imag(z)^Real(z)|" default=0 endparam Heading Caption="Parameters" endheading param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=false endparam param op1 caption="Select" enum="1""2""3""4" default=1 endparam param op3 caption="Function2" enum="Add""Subtract""Multiply""Divide" default=0 endparam param op2 caption="Function3" enum="Add""Subtract""Multiply""Divide" default=0 endparam param op caption="Parameter Value" enum="Add""Subtract""Multiply""Divide""Elevate" default=0 endparam param seed caption="Julia seed" default=(-0.34375,-2.702035102e-19) endparam param p1 caption="Parameter" default=(0.5,0.0) endparam Heading Caption="Functions" endheading func fn1 caption="Function 1" default=asin() endfunc func fn2 caption="Function 2" default=atanh() endfunc func fn3 caption="Function 3" default=atanh() endfunc switch: type="Ginseng" Bailout=@Bailout seed=#pixel type=@type op=@op op1=@op1 op2=@op2 op3=@op3 invert=@invert @morph=@morph p1=@p1 fn1=fn1 fn2=fn2 fn3=fn3 } =========================================================== +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ;Analysis of the Kscope.ufm ;(Original author unknown) ;This work includes the bailout parameter ;For pure UF3 compatibility ;This will ensure no error(8:3) appears ;Plus a function plus a morph to the imag Z ;Ronnie Jay Sefton ;Novenber 2003 ========================================================== kscope+rjs1{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c if(@Morph==true) z=z-(imag(z)) else z=z endif z=@function(z) bailout: |z| <=@bailout default: title = "kscope+rjs1" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } ========================================================== kscope+rjs14{ init: c = 0.15/sin(log(pixel^3 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7455,-0.132) + c/3 - 1/(c^z) z = (pixel - |sin(0.1/pixel)| - flip((0.5/pixel) ) )^3 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs14" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs15{ init: c = 0.15/(log ( |exp (pixel^4)| + |sin (pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs15" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs16{ init: c = 0.15/(log ( |cos (pixel^4)| + |tan (pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/200 - 1/(c*6000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs16" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs17{ init: c = 0.15/(log ( |cos (pixel^4)| + |tan (pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/200 - 5/(c*6000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs17" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs18{ init: c = 0.15/(log ( |cos (pixel^4)| + |tan (pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/200 - 5/(c*7000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs18" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs19{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - conj(0.1/pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs19" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs20{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs20" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs21{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01/pixel))^8 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs21" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs22{ init: c = 0.15/sqr(exp(pixel^4 + |sin(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01/pixel))^8 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs22" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs23{ init: c = 0.15/sqrt(exp(pixel^4 + |sin(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01/pixel))^8 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs23" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs24{ init: c = 0.15/sqrt(exp(pixel^4 + |cos(pixel^1.5)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01/pixel))^8 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs24" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs25{ init: c = 0.15/sqrt(exp(pixel^10 + |cos(pixel^1.05)| - 1) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - sqr(2^pixel) - flip(0.01*pixel))^8 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs25" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs2{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs2" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs3{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.75)| - 0.04) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs3" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs4{ init: c = 0.015/log(exp(pixel^4 + |sin(pixel^1.75)| - 0.04) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs4" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs5{ init: c = 0.015/tan(exp(pixel^4 + |sin(pixel^1.75)| - 0.04) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs5" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs6{ init: c = 1.2/tan(exp(pixel^4 + |cos(pixel^1.75)| - 0.04) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs6" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs7{ init: c = 1.2/tan(sin(pixel^4 + |cos(pixel^.38)| - 0.04) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - tan(0.1/pixel) - (0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs7" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs8{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel - |conj(0.1/pixel)| - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs8" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs9{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (0.005,0.003) + c^2 - 1/(c*3.14) z = (pixel - |conj(0.1/pixel)| - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs9" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs10{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7456,-0.132) + c/10 - 1/(c*6000) z = (pixel^2 - |conj(0.1/pixel)| - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs10" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs11{ init: c = 0.15/log(exp(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7455,-0.132) + c/3 - 1/(c*6000) z = (pixel - |sin(0.1/pixel)| - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs11" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs12{ init: c = 0.15/sin(log(pixel^4 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7455,-0.132) + c/3 - 1/(c*6000) z = (pixel - |sin(0.1/pixel)| - flip(0.01/pixel))^4 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs12" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== kscope+rjs13{ init: c = 0.15/sin(log(pixel^3 + |sin(pixel^1.5)| - 0.4) - 0.8) c = (-0.7455,-0.132) + c/3 - 1/(c*6000) z = (pixel - |sin(0.1/pixel)| - flip(0.01/pixel))^3 loop: z = z*z+ c z=@function(z) if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z| <=@bailout default: title = "kscope+rjs13" param bailout caption="Bailout value" default=16 endparam param morph caption="Morph to minus imag Z" default =false endparam func @function caption="Z Function" default =ident() endfunc } =========================================================== ;Analasys of the kspirals1 ;Original Author unknown ;with added function ;And morph z ;Ronnie Jay ;Novenber 2003 spirals+rjs1 { init: z = pixel loop: aa = (.9,.5) bb = z^2 z = 0.25*bb^2+(aa/3)*bb*z-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs1" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } ========================================================== spirals+rjs2 { init: z = pixel loop: aa = (1,.5) bb = z^2 z = 0.25*bb^2+(aa/3)*bb*z-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs2" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs3 { init: z = pixel loop: aa = (1,.4) bb = z^2 z = 0.25*bb^3+(aa/3)*bb*z-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs3" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs4 { init: z = pixel loop: aa = (1,.4) bb = z^2 z = 0.025*bb^3+(aa/3)*bb*z-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs4" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs5 { init: z = pixel loop: aa = (1,.4) bb = z^2 z = 0.25*bb^2+(aa/5)*bb*z^2-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs5" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs6 { init: z = pixel loop: aa = (1,.4) bb = z^2 z = 0.25*bb^2+(aa/5)*(bb*2)*z^2-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs6" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs7 { init: z = pixel loop: aa = (1,.4) bb = z^3 z = 0.25*bb^2+(aa/5)*(bb*2)*z^2-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs7" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs8 { init: z = pixel loop: aa = (1,.4) bb = z^3 z = 0.15*bb^2+(aa/9)*(bb*2)*z^2-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs8" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs9 { init: z = pixel loop: aa = (1,.4) bb = z^3 z = 0.15*bb^2+(aa/9)*(bb*3)*z^2-0.5*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs9" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } =========================================================== spirals+rjs10 { init: z = pixel loop: aa = (1,.4) bb = z^3 z = 0.15*bb^2+(aa/9)*(bb*4)*z^2-0.9*bb+aa*z z=@Function(z) if(@Morph==true) z=z-imag(z) else z=z endif bailout: |z-pixel|<@bailout default: title = "spirals+rjs10" param bailout caption="Bailout value" default=4 endparam param morph caption="Morph to minus imag Z" default=false endparam func @Function caption="Z Function" default=ident() endfunc } Klatu Virada Nik2{ ;Ronnie Jay init: z=pixel f=cabs(@seed) loop: z=z^@power+@seed/f f=fn1(z-pixel) if(@Morph==true) z=z-imag(z) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Klatu Virada Nik2" center=(0.53,-0.01) magn=0.6 angle=90 func fn1 default=ident() endfunc param morph caption="Morph to imag -Z" default=false endparam param invert caption="Z inversion" default=true endparam param bailout caption="Bail" default=4.0 min=0 endparam param seed caption="Julia seed" default=(0.7641137124,0.3913377927) endparam param power caption="Exponent" default=(2,0) endparam switch: type="Niktu" bailout=bailout power=power seed=pixel @fn1=@fn1 @invert=@invert @morph=@morph } Madrigal_Julia{ ;Ronnie Jay ;Try the functions and the operators ;Also you can adjust the inversion and, ;morph parameters, try a switch to the Julia ;And experiment, ;with the exponential and bailout ;Please enjoy this formula ;December 2003 init: z=pixel z=@Function1(z) z=@Function2(z) c=@seed d=c loop: z=z^@power+flip(@seed) if(@op1=="+") z=z+c elseif(@op1=="-") z=z-c elseif(@op1=="*") z=z*c elseif(@op1=="/") z=z/c elseif(@op1=="^") z=z^c endif if(@op2=="+") z=z+c+d elseif(@op2=="-") z=z-c-d elseif(@op2=="*") z=z*c*d elseif(@op2=="/") z=z/c/d elseif(@op2=="^") z=z^c^d endif if(@Morph==true) z=z-(imag(z)) else z=z endif if(@invert==true) z=1/z else z=z endif bailout: |z|<@bailout default: title = "Madrigal_Julia" magn=0.4 periodicity=0 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag-Z" default=false endparam param invert caption="Z inversion" default= false endparam func @function1 caption="Function 1" default=acos() endfunc func @function2 caption="Function 2" default=cotan() endfunc param op1 caption="Operator 1" enum="+""-""*""/""^" default= 3 endparam param op2 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param power caption="Exponent" default=(2,0) endparam param seed caption="Julia seed" default=(-0.8026755853,0.6772575251) endparam param bailout caption="Bailout" default=20 endparam switch: type="Madrigal_Mandelbrot" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @morph=@morph @invert=@invert @op1=@op1 @op2=@op2 } Madrigal_Mandelbrot{ ;Ronnie Jay ;Try the functions and the operators ;Also you can adjust the inversion and, ;morph parameters, try a switch to the Julia ;And experiment, ;with the exponential and bailout ;Please enjoy this formula ;December 2003 init: z=pixel z=@Function1(z) z=@Function2(z+z) c=z d=c loop: z=z^@power+flip(pixel) if(@op1=="+") z=z+c elseif(@op1=="-") z=z-c elseif(@op1=="*") z=z*c elseif(@op1=="/") z=z/c elseif(@op1=="^") z=z^c endif if(@op2=="+") z=z+c+d elseif(@op2=="-") z=z-c-d elseif(@op2=="*") z=z*c*d elseif(@op2=="/") z=z/c/d elseif(@op2=="^") z=z^c^d endif if(@invert==true) z=1/z else z=z endif if(@Morph==true) z=z-(imag(z)) else z=z endif bailout: |z|<@bailout default: title = "Madrigal_Mandelbrot" magn=0.4 periodicity=0 heading caption="F7 or spacebar to switch" endheading param morph caption="Morph to imag-Z" default=false endparam param invert caption="Z inversion" default= false endparam func @function1 caption="Function 1" default=cos() endfunc func @function2 caption="Function 2" default=cotan() endfunc param op1 caption="Operator 1" enum="+""-""*""/""^" default= 2 endparam param op2 caption="Operator 2" enum="+""-""*""/""^" default=3 endparam param power caption="Exponent" default=(2,0) endparam param bailout caption="Bailout" default=20 endparam switch: type="Madrigal_Julia" bailout=bailout power=power seed=pixel @function1=@function1 @function2=@function2 @morph=@morph @invert=@invert @op1=@op1 @op2=@op2 } SabredanceJ{ ;Ronnie Jay--------December 11th 2003 ;You can use the switch feature ;There are two parameter check boxes ;to alter the value of ;Plus a couple of Functions for more scope init: z=pixel loop: z=z^@power+@seed^2 z=@Function1(z) z=@function2(ident(z)) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=z else z=1/z endif bailout: |z|<@bailout default: title = "SabredanceJ" center=(-0.06,-0.12) magn=0.51 periodicity=0 heading caption="F7 or spacebar to switch" endheading param seed caption="Julia seed" default=(0.7269368484,-0.04130631516) endparam param power caption="Exponent" default=(2,0) endparam float param bailout caption="Bailout value" default =8 min=0 max=100000 endparam func @Function1 caption="Z Function 1" default=asinh() endfunc func @Function2 caption="Z Function 2" default=ident() endfunc param morph caption="Morph to True Z" default=true endparam param invert caption="Invert to true Z" default=true endparam switch: type="SabredanceM" seed=pixel power=power @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } SabredanceM{ ;Ronnie Jay--------December 11th 2003 ;You can use the switch feature ;There are two parameter check boxes ;to alter the value of ;Plus a couple of Functions for more scope init: z=pixel loop: z=z^@power+pixel^2 z=@Function1(z) z=@function2(ident(z)) if(@Morph==true) z=z-imag(z) else z=z endif if (@invert==true) z=z else z=1/z endif bailout: |z|<@bailout default: title = "SabredanceM" center=(-0.06,-0.12) magn=0.51 periodicity=0 heading caption="F7 or spacebar to switch" endheading param power caption="Exponent" default=(2,0) endparam float param bailout caption="Bailout value" default =8 min=0 max=100000 endparam func @Function1 caption="Z Function 1" default=asinh() endfunc func @Function2 caption="Z Function 2" default=ident() endfunc param morph caption="Morph to True Z" default=true endparam param invert caption="Invert to true Z" default=true endparam switch: type="SabredanceJ" seed=pixel power=power @function1=@function1 @function2=@function2 @invert=@invert @morph=@morph } A_pixel { ;Ronnie Jay init: z=pixel loop: ;******************;;No loop required bailout: @Turnaround default: title="A_Pixel" heading caption="Checkmark inside for most UCL's" endheading heading caption="Also use the inside tab of the colouring" endheading param Turnaround caption="Inside or out" default=false endparam } B_Pixel{ ;Ronnie Jay ;A pixel based formula with two functions init: z=pixel z=@Perturb1(z);Bend the results Z=@Perturb2(z);Even more influence loop: ;No loop required... bailout: @Turnaround default: title = "B_Pixel" heading caption="Checkmark inside for most UCL's" endheading param turnaround caption="Inside or out" default= false endparam } C_Pixel { ;Ronnie Jay ;A pixel based formula with four functions init: z=pixel z=@Perturb1(z);Bend the results z=@Perturb2(z);Even more influence z=@Perturb3(z);and then some z=@Perturb4(z);this is getting crazy loop: bailout: @Turnaround default: title = "C_Pixel" heading caption="Checkmark inside for most UCL's" endheading param turnaround caption="Inside or out" default= false endparam }