read "DField.txt";
with(DField);
K := x, [t1, t2, t3], [1/x, 1/(x + 1), 1/(x*t1)]:


g := [seq([seq(randpoly(t3, dense, degree = i, coeffs = (proc() randpoly([x,t1,t2])/randpoly([x,t1,t2]); end proc)),j = 1 .. 3)], i = 1 .. 6)]:
f := [seq([seq(Derivative(K, op(j, op(i, g))), j=1..3)], i = 1 .. nops(g))]:
save K, f, g, "data_fig1.txt";

g := [seq([seq(randpoly(t3, dense, degree = i, coeffs = (proc() randpoly([x,t1,t2], degree=1)/randpoly([x,t1,t2], degree=1); end proc)),j = 1 .. 3)], i = 6 .. 16, 2)]:
f := [seq([seq(Derivative(K, op(j, op(i, g))), j=1..3)], i = 1 .. nops(g))]:
save K, f, g, "data_fig2.txt";

g := [seq([seq(randpoly([t1, t2, t3], dense, degree = i, coeffs = (proc() randpoly(x)/randpoly(x); end proc)),j = 1 .. 3)], i = 1 .. 6)]:
f := [seq([seq(Derivative(K, op(j, op(i, g))), j=1..3)], i = 1 .. nops(g))]:
save K, f, g, "data_fig3.txt";


g := [seq([seq(randpoly([x, t1, t2, t3], dense, degree = i),j = 1 .. 3)], i = 5 .. 30, 5)]:
f := [seq([seq(Derivative(K, op(j, op(i, g))), j=1..3)], i = 1 .. nops(g))]:
save K, f, g, "data_fig4.txt";

