comment { Carr3300.ufm Version 1.6 Ultra Fractal conversions of Robert Carr's formulas Carr3300 - Carr3399 by Erik Reckase, February 25, 2000 History: Version 1.6 - Minor optimization tweaks + cleanup Version 1.5 - Formulas 3381-3384 optimized Version 1.4 - major optimization overhaul Version 1.3 - bailout condition typo'd in 3383-3399 Version 1.2 - Modified whitesq code to eliminate warnings Version 1.1 - Removed unnecessary code in Carr2887-2899 for optimization Version 1.0 - Initial Release Original formulas pulled from 43eCarr.frm 43fCarr.frm 43gCarr.frm 43hCarr.frm Carr3300-3380,3386-3399 : pixel fix Carr3385 : |z|, cosxx fixes Carr3316-3320,3353 : variable used before defined Carr3337,3360,3373 : variables not used, removed } Carr3300 (YAXIS) {; Updated for UF2 by Erik Reckase, February 2000 ; Modified Sylvie Gallet frm. init: pixel2=-abs(real(pixel))+flip(imag(pixel)) b6=conj(.015/pixel2), b7=flip(.025/pixel2) b8=sin(.002/pixel2-flip(.002/pixel2)) b10=pixel2^10-conj(.01/pixel2-flip(.15/pixel2)) c=abs(pixel2^2)*b10-.01/pixel2 b5=cabs(pixel2^2)*abs(b10)^2*(.1-c)-(b8+b6+b7)/.65 \ -.002/pixel2-.19 IF (@p3==1) z = (b5)^.745 ELSEIF (@p3==0) c = -c, z = -(b5)/2 ELSE IF (whitesq) z = (b5)^.745 ELSE c = -c, z = -(b5)/2 ENDIF ENDIF cmod = .015 + (b8*b6)^3/1.5 c = c - cmod - .24 c1=1.5*z^1.2,c2=2.25*z,c3=3.375*z,c4=5.0625*z l1=round(real(p1)),l2=round(imag(p1)) l3=round(real(p2)),l4=round(imag(p2)) float bailout=16,int iter=0 loop: IF (iter==l1) c = c1 - cmod, z = 0 ELSEIF (iter==l2) c = c2 - cmod, z = 0 ELSEIF (iter==l3) c = c3 - cmod, z = 0 ELSEIF (iter==l4) c = c4 - cmod, z = 0 ENDIF z = z^2 + c iter=iter+1 bailout: |z|<=bailout default: title = "Carr 3300" periodicity = 0 maxiter = 700 magn = 1.4 center = (0,0) method = multipass param p1 caption = "Iter Limits 1,2" default = (200,300) hint = "0< Re(P1) < Im(P1) < Re(P2) < Im(P2) =limit) c = p ENDIF ENDIF z=z*z+c iter=iter+1 compt=compt+1 bailout: |z|<=16 default: title = "Carr 3381" periodicity = 0 maxiter = 700 magn = 1.4 center = (0,0) method = multipass param p1 caption = "Reduc/Rot" default = (-1,0) hint = "The real part of this parameter is a reduction \ factor. The imagimary part is a rotation angle \ in degrees." endparam param p2 caption = "Newpixel Mod" default = (0,0) endparam param p3 caption = "Nextzoom" default = (256,0) hint = "The real part of this parameter is the number of \ iteration steps between value resets. The imag \ part is not used, but remains for Fractint compat." endparam param p4 caption = "Layer Option" enum = "Option 1" "Option 2" "Original" default = 2 hint = "Options 1 and 2 are the two separate layers of this \ formula. The 'Original' option uses the original \ PHC formula." endparam } Carr3382 {; Updated for UF2 by Erik Reckase, February 2000 ; MJM-PHC02 Brian E. Jones modified init: c=pixel^3-conj(.1/pixel) z=pixel^5+tanh(.1/pixel)-sinh(.1/pixel)-conj(.125/pixel) newpixel = pixel,int iter = 0 reduction = real(p1) IF (reduction==0) reduction = 1 ENDIF int nextzoom = round(real(p3)) IF (nextzoom<=0) int nextzoom=256 ENDIF int iterspace = nextzoom rotation=pi*flip(imag(p1))/180 int compt=0, int limit=100 p=(.255044,.5791) loop: IF (iter==nextzoom) nextzoom = nextzoom + iterspace newpixel = reduction*(newpixel-p2)*exp(rotation) z = 0 c = newpixel ENDIF IF ((@p4==0) || (@p4==2 && whitesq)) IF (compt>=limit) c = p ENDIF ENDIF z=z*z+c iter=iter+1 compt=compt+1 bailout: |z|<=16 default: title = "Carr 3382" periodicity = 0 maxiter = 700 magn = 1.4 center = (0,0) method = multipass param p1 caption = "Reduc/Rot" default = (-1,0) hint = "The real part of this parameter is a reduction \ factor. The imagimary part is a rotation angle \ in degrees." endparam param p2 caption = "Newpixel Mod" default = (0,0) endparam param p3 caption = "Nextzoom" default = (256,0) hint = "The real part of this parameter is the number of \ iteration steps between value resets. The imag \ part is not used, but remains for Fractint compat." endparam param p4 caption = "Layer Option" enum = "Option 1" "Option 2" "Original" default = 2 hint = "Options 1 and 2 are the two separate layers of this \ formula. The 'Original' option uses the original \ PHC formula." endparam } Carr3383 {; Updated for UF2 by Erik Reckase, February 2000 ; MJM-PHC02 Brian E. Jones modified init: c=pixel^5-conj(.15/pixel) z=pixel^4-conj(.01/pixel-flip(.01/pixel))-conj(.1/pixel)-.2 newpixel = pixel,int iter = 0 reduction = real(p1) IF (reduction==0) reduction = 1 ENDIF int nextzoom = round(real(p3)) IF (nextzoom<=0) int nextzoom=256 ENDIF int iterspace = nextzoom rotation=pi*flip(imag(p1))/180 int compt=0, int limit=100 p=(.255044,.5791) loop: IF (iter==nextzoom) nextzoom = nextzoom + iterspace newpixel = reduction*(newpixel-p2)*exp(rotation) z = 0 c = newpixel ENDIF IF ((@p4==0) || (@p4==2 && whitesq)) IF (compt>=limit) c = p ENDIF ENDIF z=z*z+c-conj(.01/c) iter=iter+1 compt=compt+1 bailout: real(z)<=16 default: title = "Carr 3383" periodicity = 0 maxiter = 700 magn = 1.4 center = (0,0) method = multipass param p1 caption = "Reduc/Rot" default = (-1,0) hint = "The real part of this parameter is a reduction \ factor. The imagimary part is a rotation angle \ in degrees." endparam param p2 caption = "Newpixel Mod" default = (0,0) endparam param p3 caption = "Nextzoom" default = (256,0) hint = "The real part of this parameter is the number of \ iteration steps between value resets. The imag \ part is not used, but remains for Fractint compat." endparam param p4 caption = "Layer Option" enum = "Option 1" "Option 2" "Original" default = 2 hint = "Options 1 and 2 are the two separate layers of this \ formula. The 'Original' option uses the original \ PHC formula." endparam } Carr3384 {; Updated for UF2 by Erik Reckase, February 2000 ; MJM-PHC02 Brian E. Jones modified init: z=pixel^4-conj(.1/pixel)-flip(.01/pixel)+sin(.1/pixel)-.1/pixel c=pixel^4-tanh(.1/pixel) newpixel = pixel,int iter = 0 reduction = real(p1) IF (reduction==0) reduction = 1 ENDIF int nextzoom = round(real(p3)) IF (nextzoom<=0) int nextzoom=256 ENDIF int iterspace = nextzoom rotation=pi*flip(imag(p1))/180 int compt=0, int limit=100 p=(.255044,.5791) loop: IF (iter==nextzoom) nextzoom = nextzoom + iterspace newpixel = reduction*(newpixel-p2)*exp(rotation) z = 0 c = newpixel ENDIF IF ((@p4==0) || (@p4==2 && whitesq)) IF (compt>=limit) c = p ENDIF ENDIF z=z*z+c iter=iter+1 compt=compt+1 bailout: real(z)<=16 default: title = "Carr 3384" periodicity = 0 maxiter = 700 magn = 1.5 center = (0,0) method = multipass param p1 caption = "Reduc/Rot" default = (-1,0) hint = "The real part of this parameter is a reduction \ factor. The imagimary part is a rotation angle \ in degrees." endparam param p2 caption = "Newpixel Mod" default = (0,0) endparam param p3 caption = "Nextzoom" default = (256,0) hint = "The real part of this parameter is the number of \ iteration steps between value resets. The imag \ part is not used, but remains for Fractint compat." endparam param p4 caption = "Layer Option" enum = "Option 1" "Option 2" "Original" default = 2 hint = "Options 1 and 2 are the two separate layers of this \ formula. The 'Original' option uses the original \ PHC formula." endparam } Carr3385 {; Updated for UF2 by Erik Reckase, February 2000 ; Modified Sylvie Gallet frm. init: d=sqrt(1/pixel-conj(cos(1/pixel))) z=pixel*cabs(pixel)-flip(.01/pixel)-conj(.1/pixel)-.1 zmod = (-.7556,-.117)+flip(|d/70*pixel|)-.001 l1=round(real(p1)),l2=round(imag(p1)) l3=round(real(p2)),l4=round(imag(p2)) float bailout=16,int iter=0 loop: IF (iter==l1) z = 0 ELSEIF (iter==l2) z = 0 ELSEIF (iter==l3) z = 0 ELSEIF (iter==l4) z = 0 ENDIF z=|z|/30+z^2+zmod iter=iter+1 bailout: |z|<=bailout default: title = "Carr 3385" periodicity = 0 maxiter = 700 magn = 1.5 center = (0,0) method = multipass param p1 caption = "Iter Limits 1,2" default = (200,300) hint = "0< Re(P1) < Im(P1) < Re(P2) < Im(P2)