
// FordCircles.java
// Andrew Davison, ad@coe.psu.ac.th, Nov. 2022

/* Compute Ford froth
    From "Keys to Infinity", Clifford A. Pickover,
    Chapter 14,
    Java version of his BASIC code.

   Usage:
     > compile FordCircles.java
     > run FordCircles
*/


public class FordCircles
{

  public static void main(String[] args)
  {
    StdDraw.setCanvasSize(1000, 500);
    StdDraw.setXscale(0, 4);
    StdDraw.setYscale(-1, 1);

    for (int h=1; h <= 15; h++)
      for (int k=1; k <= 15; k++) {
        double r = 1.0/(2.0*k*k);
        StdDraw.circle(((double)h)/k, r, r);
      }
  }  // end of main()


}  // end of FordCircles class