πQR = {
const values = new Float32Array(n);
const phi2 =
Math.pow(1 / 2 + Math.sqrt(69) / 18, 1 / 3) +
Math.pow(1 / 2 - Math.sqrt(69) / 18, 1 / 3);
const a = [1.0 / phi2, 1.0 / (phi2 * phi2)];
let p = [0.5, 0.5];
let q = 0;
for (let i = 0; i < n; ++i) {
p = [(p[0] + a[0]) % 1, (p[1] + a[1]) % 1];
q += p[0] ** 2 + p[1] ** 2 < 1;
values[i] = (q / (i + 1)) * 4;
}
return values;
}