Loading ...
Sorry, an error occurred while loading the content.

Mandelbrot Hough transform

Expand Messages
  • Roger Bagula
    Essentially this is an unrolling transform or conformal transform in which it is necessary to find the center of the set. That center finding was easy with
    Message 1 of 1 , Jun 17, 2007
    View Source
    • 0 Attachment
      Essentially this is an unrolling transform or conformal transform
      in which it is necessary to find the "center" of the set.
      That center finding was easy with most 2d IFS, but not so easy with the
      Mandelbrot set.
      I don't think anyone has done this for a Julia set yet.

      A google search show that no one else seems to have published anything
      to do with this in terms of the Mandelbrot set besides me.

      I never got this to work in Mathematica,
      but the true basic code was based on a pixel counting program
      for the Mandelbrot plateau:
      1000 PRINT "input 1920 for slow 120 for fast"
      1010 DECLARE DEF parity_b, cmod
      1020 INPUT m
      1030 SET MODE "color"
      1040 SET WINDOW 0,1920,0,1024
      1050 FOR i=0 to 63 step 4
      1060 LET j=i/64
      1070 SET COLOR MIX (i) j,1-j, 1-j
      1080 NEXT i
      1090 FOR i=64 to 127 step 4
      1100 LET j=(64-i)/64
      1110 SET COLOR MIX (i) 1-j, j, 1-j
      1120 NEXT i
      1130 FOR i=128 to 191 step 4
      1140 LET j=1-(128-i)/64
      1150 SET COLOR MIX (i) j,1-j, 1-j
      1160 NEXT i
      1170 FOR i=192 to 255 step 4
      1180 LET j=1-(192-i)/64
      1190 SET COLOR MIX (i) 1- j, j, 1-j
      1200 NEXT i
      1210 REM rainbow LUT(look up table)
      1220 FOR j=31 to 0 step -2
      1230 LET k=j/31
      1240 REM intensity levels
      1250 FOR red0=0 to 1
      1260 FOR green0=0 to 1
      1270 FOR blue0=0 to 1
      1280 REM colors of eight different kinds in 32 intensities
      1290 SET COLOR MIX (count) k*red0,k*green0, k*blue0
      1300 LET count=count+1
      1310 NEXT blue0
      1320 NEXT green0
      1330 NEXT red0
      1340 REM color bits
      1350 NEXT j
      1360 SET BACKGROUND COLOR "white"
      1370 LET n=m*1024/1920
      1380 REM by R.L.Bagula 15 Nov 2005© copy rights reserved
      1390 PRINT "input power of z'=z^s +c"
      1400 INPUT s
      1410 CLEAR
      1420 LET E=Sqr(256)
      1430 LET E1=E/7
      1440 FOR I=-E1-0.75 To E1-0.75 Step 2*E1/(N+0.5)
      1450 LET D=D+1
      1460 FOR J=-E1 To E1 Step 2*E1 /(M+0.5)
      1470 LET C=C+1
      1480 LET A=I
      1490 LET B=J
      1500 LET K=0
      1510 LET D0=Sqr(A^2+B^2)
      1520 LET R=D0
      1530 DO
      1540 IF K=0 Then
      1550 LET F=A
      1560 LET G=B
      1570 LET R=D0
      1580 END IF
      1590 LET K=K+1
      1600 LET L=R
      1610 LET X=F
      1620 LET Y=G
      1630 LET w=angle(x,y)
      1640 LET F=(R^S)*Cos(S*W)+A
      1650 LET G=(R^S)*Sin(S*W)+B
      1651 LET F0=Angle(A+0.2867683,B)
      1652 LET G0=((A+0.2867683)*Cos(F0)+B*Sin(F0))
      1660 LET R=Sqr(F*F+G*G)
      1670 LOOP Until Abs(L-R)<10^(-3) or K>Int(E*E)+1 or R>=E
      1680 IF k>= Int(E*E)+1 then LET kcount=kcount+1
      1690 LET count=count +1
      1700 LET KK=Mod(259+cmod(K,256),256)
      1710 SET COLOR mod(KK,256)
      1711 LET aa=1920*Angle(c/m,d/n)
      1712 LET bb=1920*Angle((c+1)/m,(d+1)/n)
      1713 LET
      cc=1024*((c/m)*Cos(Angle(c/m,d/n))+(d/n)*Sin(Angle(c/m,d/n)))
      1714 LET
      dd=1024*(((c+1)/m)*Cos(Angle((c+1)/m,(d+1)/n))+((d+1)/n)*Sin(Angle((c+1)/m,(d+1)/n)))
      1720 REM BOX AREA aa,bb,cc,dd
      1721 PLOT 275*f0+1920/2,225*g0+1024/8
      1730 IF C>M Then LET C=0
      1740 NEXT J
      1750 NEXT I
      1760 LET area=(2*e1)^2
      1770 LET areaM=area*kcount/count
      1771 SET COLOR 255
      1780 REM PRINT area, kcount,count
      1790 REM PRINT "estimate of Mandelbrot plateau area", areaM
      1800 END
      1810 DEF parity_b(i)
      1820 REM 100 digit binary OR function/16 bit integer
      1830 LET C=0
      1840 LET a=i
      1850 REM modulo power subtraction
      1860 REM binary parity
      1870 FOR j=0 to 16
      1880 LET ab=0
      1890 LET ab=int(mod(a,2^(j+1)))/2^j
      1900 LET a=a-ab*2^j
      1910 LET C=C+ab
      1920 NEXT j
      1930 LET parity_B=mod(C,2)
      1940 END DEF
      1950 DEF cmod(i,k)
      1960 LET C=0
      1970 LET a=mod(i,k)
      1980 DECLARE DEF parity_b
      1990 LET b=parity_b(i)
      2000 IF b=1 then LET c=-a else LET c=a
      2010 LET cmod=c
      2020 END DEF

      Respectfully, Roger L. Bagula
      11759Waterhill Road, Lakeside,Ca 92040-2905,tel: 619-5610814 :http://www.geocities.com/rlbagulatftn/Index.html
      alternative email: rlbagula@...
    Your message has been successfully submitted and would be delivered to recipients shortly.