Question: How to draw Ford's circles ?

with(plottools):F := proc (N) local a, b, L; L := NULL; L := sort([op({seq(seq(a/b, a = 0 .. b), b = 1 .. N)})]); return L end proc; F(6);
            [   1  1  1  1  2  1  3  2  3  4  5   ]
            [0, -, -, -, -, -, -, -, -, -, -, -, 1]
            [   6  5  4  3  5  2  5  3  4  5  6   ]
Ford6 := proc (i) local d, k, n, r; k := i; n := numer(F(6)[k]); d := denom(F(6)[k]); r := (1/2)/d^2; return [n/d, r], r end proc; nops(F(6));
                               13
for i to 13 do C || i := Ford6(i) end do;

display(circle(C1), circle(C2), circle(C3), circle(C4), circle(C5), circle(C6), circle(C7), circle(C8), circle(C9), circle(C10), circle(C11), circle(C12), circle(C13), axes = normal, scaling = constrained, color = blue, size = [800, 800]);

Please Wait...