home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / f / fractal112 / !Fractal / Help / Henon < prev    next >
Text File  |  1996-10-09  |  2KB  |  58 lines

  1. Hénon Maps : An implementation of Hénon's strange attractor.
  2. ----------
  3. Two sub-functions are provided. The Original function shows a simple orbit,
  4. whilst the SIN/COS function is a fuller implementation. They both relate to
  5. orbits of asteroids and so on.
  6.  
  7. Henon plots points, the colours of which are set from the main Plot Options
  8. dialogue box in the Effects menu.
  9.  
  10. The menu options are greyed when not applicable to a particular function.
  11. The menu options are:
  12.  
  13. Original: selects the basic function. This function is infinite so you will
  14. need to manually stop it. See Chaos by J.Gleick p.141 for full details.
  15.  
  16. SIN(a)/COS(a): selects the full function. See J.Dewdney, Sc.American, July
  17. 1987.
  18.  
  19. Random a: The value of a is chosen at random by the program when ticked.
  20. Random b: The value of a is chosen at random by the program when ticked.
  21.  
  22. Auto Step: When on, the number of points calculated will be increased as you
  23. zoom in, to give greater resolution, though this will take longer.
  24.                                                          
  25. Original Algorithm:
  26. ------------------
  27. The default value for a is 1.4 and b is 0.3. The best
  28. results come from slightly altering these values rather than choosing random
  29. figures.
  30.  
  31.    px=1
  32.    py=1
  33.    do
  34.        z=px
  35.        px=py+1-a*z*z
  36.        py=b*z
  37.        plot px,py
  38.    until (x>1.0e10 or y>1.0e10)
  39.  
  40. SIN(a)/COS(a) Algorithm:
  41. -----------------------
  42. Here the main control is the data variable a. The step rate is decreased
  43. when zooming in. Thanks to Joyce Haslam for passing on this algorithm.
  44.  
  45.    for i=-0.8 to 0.8 step 0.05
  46.      for j=-0.8 to 0.8 step 0.05
  47.        c=0; x=i; y=j
  48.        repeat
  49.          c+=1
  50.          xx=x*COSa-(y-x*x)*SINa
  51.          y=x*SINa+(y-x*x)*COSa
  52.          x=xx
  53.          plot x,y
  54.        until (i>100 or x>1000 or y>1000)
  55.      next
  56.    next
  57.  
  58.