OFFSET
0,3
COMMENTS
Due to the symmetry and periodicity of the square lattice it is sufficient to explore possible circles with center belonging to the triangle with vertices (0,0), (1/2,0), and (1/2,1/2).
The different regions for the centers producing constant numbers of lattice points inside circles of radius n seem to become very complex and irregular as n increases (see density plots in Links).
LINKS
Robert G. Wilson v, Table of n, a(n) for n = 0..125
Andres Cicuttin, Plots of regions for centers of circles of several radii n enclosing constant number of lattice points
Eric Weisstein's World of Mathematics, Circle Lattice Points
FORMULA
a(n) ~ Pi*n^2.
a(n) <= A051132(n). - Joerg Arndt, Oct 03 2017
EXAMPLE
From Arkadiusz Wesolowski, Dec 18 2017 [Corrected by Andrey Zabolotskiy, Feb 19 2018]: (Start)
For a circle centered at the point (x, y) = (1/2, 0) with radius 6, there are 108 lattice points inside the circle.
Possible (but not unique) choices for the centers of the circles for radii up to 20 are given below.
.
. Poss. center Points in
. x y Radius the circle
. ----- ----- ------ ----------
. 0 0 1 1
. 0 0 2 9
. 0 0 3 25
. 0 0 4 45
. 0 0 5 69
. 1/2 0 6 108
. 0 0 7 145
. 0 0 8 193
. 1/5 0 9 248
. 0 0 10 305
. 0 0 11 373
. 0 0 12 437
. 0 0 13 517
. 1/4 0 14 608
. 0 0 15 697
. 0 0 16 793
. 0 0 17 889
. 0 0 18 1005
. 1/2 1/2 19 1124
. 0 0 20 1245
(End)
MATHEMATICA
(* A291259: Minimum number of points of the square lattice falling strictly inside a circle of radius n. *)
(* The three vertices of the Explorative Triangle (ET) *)
P1={0, 0}; P2={1/2, 0}; P3={1/2, 1/2};
dd2=SquaredEuclideanDistance;
(* candidatePointQ[p, n] gives True if "p" is a candidate point, and False otherwise. A candidate point is a point belonging to a circle of radius "n" with center in the ET *)
candidatePointQ[p_, n_] := With[{dds={dd2[p, P1], dd2[p, P2], dd2[p, P3]}}, Max[dds]>=n^2>=Min[dds]];
(* Check if point "p" falls inside any circle with radius "n" and center in the ET *)
innerPointQ[p_, n_] := With[{dds={dd2[p, P1], dd2[p, P2], dd2[p, P3]}}, Max[dds]<n^2];
(* The function "candidatePoints[n]" gives the list of points with distance "n" from some point of the ET *)
candidatePoints[n_] := Select[Table[{i, j}, {i, -n, n+1}, {j, -n, n+1}]//Flatten[#, 1]&, candidatePointQ[#, n]&];
(* The function "centersFromTwoPoints[{{x1, y1}, {x2, y2}}, n]" gives the centers of the two circles with radius "n" and tangent to the pair of points {x1, y1} and {x2, y2} *) (* Note: if the distance between the two points is less than 2n then the coordinates of the centers are not integers *)
centersFromTwoPoints[{{x1_, y1_}, {x2_, y2_}}, n_] :=
Which[x1==x2,
Block[{sqrtTerm=Sqrt[4*n^2-(y1-y2)^2]/2}, {{x1-sqrtTerm, (y1+y2)/2},
{x1+sqrtTerm, (y1+y2)/2}}],
y1==y2,
Block[{sqrtTerm=Sqrt[4*n^2-(x1-x2)^2]/2}, {{(x1+x2)/2, -sqrtTerm+y1},
{(x1+x2)/2, sqrtTerm+y1}}], True,
Block[{ddxy2=dd2[{x1, y1}, {x2, y2}], sqrtTerm}, sqrtTerm=Sqrt[-(ddxy2*(-4*n^2+ddxy2)*(y1-y2)^2)]; Table[{((x1+x2)*ddxy2-sqrtTerm)/(2*ddxy2), (ddxy2*(y1^2-y2^2)+sign*(x1-x2)*sqrtTerm)/(2*ddxy2*(y1-y2))}, {sign, {1, -1}}]]];
(* The function "explorativeCenters[pairc, n]" selects the centers of circles of radius "n" of the list "pairc" lying inside the ET *)
explorativeCenters[pairc_, n_] := Select[Table[centersFromTwoPoints[pair, n], {pair, pairc}]//Flatten[#, 1]&, 0<=#[[1]]<=1/2 && 0<= #[[2]]<=#[[1]]&];
a[n_] := If[n==0, 0, Module[{points, pairc, expcent, innerpoints},
points = candidatePoints[n];
pairc = Select[Subsets[points, {2}], dd2@@#<4n^2&];
expcent = explorativeCenters[pairc, n];
innerpoints = Count[Table[{i, j}, {i, -n, n+1}, {j, -n, n+1}]//Flatten[#, 1]&, _?(innerPointQ[#, n]&)];
Min[Table[Count[points, _?(dd2[#, center]<n^2&)], {center, expcent}]] + innerpoints]];
Table[a[n], {n, 0, 20}] (* Andres Cicuttin & Andrey Zabolotskiy, Nov 14 2017 *)
CROSSREFS
KEYWORD
nonn
AUTHOR
Andres Cicuttin, Aug 21 2017
EXTENSIONS
More terms from Andrey Zabolotskiy, Nov 17 2017
STATUS
approved