This site is supported by donations to The OEIS Foundation.

 Hints (Greetings from The On-Line Encyclopedia of Integer Sequences!)
 A292060 Minimum number of points of the square lattice falling strictly inside an equilateral triangle of side n. 2
 0, 0, 0, 2, 4, 8, 12, 17, 23, 30, 37 (list; graph; refs; listen; history; text; internal format)
 OFFSET 0,4 COMMENTS Due to the symmetry and periodicity of the square lattice it is sufficient to explore possible equilateral triangles with center belonging to the triangular region with vertices (0,0), (1/2, 0), and (1/2, 1/2), and for every center the orientations between 0 and 2*Pi/3 radians must be explored. A simple strategy to obtain this sequence is to explore many triangles with centers and orientations in the previously described regions and count the points falling strictly inside the triangles, then picking the minimum number obtained. In the given Mathematica program the explored triangles are generated by regularly moving its center with constant increment in both main orthogonal directions, and for every center different orientations are generated with constant angular step increment. Is there any criterion to determine how small should be the pitch and the angular increment in order to catch an equilateral triangle with the smallest possible number of points for a given side length n? The different regions for the centers producing constant minimum numbers of lattice points inside equilateral triangles of side length n seem to become very complex and irregular as n increases (see density plots in Links). LINKS FORMULA a(n) ~ (1/4)*sqrt(3)*n^2. MATHEMATICA (* This gives a polar function of a "k" sides polygon with side length "sidelength" and vertical rigthmost side  *) PolarPolygonSide[sidelength_, theta_, k_] := ((sidelength/2)/Tan[Pi/k])/Cos[Mod[theta - Pi/k , 2 Pi/k] - Pi/k]; (* uncomment next to generate and plot different polygons *) (* Manipulate[PolarPlot[PolarPolygonSide[sidelength, theta + phase, sides], {theta, 0, 2 Pi}, PlotRange -> sidelength, GridLines -> {Range[-sidelength, sidelength] + di, Range[-sidelength, sidelength] + dj}], {sidelength, 1, 10, 1}, {sides, 3, 30, 1}, {phase, 0, 2 Pi/3, 2 Pi/300}, {dj, 0, 1/2, 0.01}, {di, 0, 1/2, 0.01}] *) (* This function gives 1 if the point of coordinates (x, y) is strictly inside a polygon given by PolarPolygonSide[sidelength, theta, sides] rotated by "phase", and 0 otherwise *) TruePointInsidePhase[x_, y_, sidelength_, phase_, sides_] :=   Module[{theta},    theta = ArcTan[x, y] + phase;    If[x^2 + y^2 == 0, 1,      If[x^2 + y^2 - (PolarPolygonSide[sidelength, theta, sides]^2) <        0, 1, 0]] // Return]; sides = 3; (* number of sides of the polygon *) (* The following step increments seem to be small enough for sidelengths up to 10 *) dstep = 0.01; (* scanning step on x and y *) phasestep = 2 Pi/3000; (* orientation angular increment step *) seq = {}; Do[ npoints = {}; k = 0; Do[Do[Do[      Do[Do[        k =         k + TruePointInsidePhase[i + di, j + dj, sidelength, phase,           sides]        , {i, -sidelength - 1, sidelength + 1, 1}], {j, -sidelength -         1, sidelength + 1, 1}];      AppendTo[npoints, k];      k = 0;      , {dj, 0, 1/2, dstep}], {di, 0, 1/2, dstep}], {phase, 0, 2 Pi/3,     phasestep}] // Quiet; temp = npoints // Min; AppendTo[seq, temp]; , {sidelength, 0, 10, 1}] seq CROSSREFS Cf. A291259, A292896. Sequence in context: A324214 A273109 A046843 * A152125 A305694 A176562 Adjacent sequences:  A292057 A292058 A292059 * A292061 A292062 A292063 KEYWORD nonn,hard,more AUTHOR Andres Cicuttin, Sep 08 2017 STATUS approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recent
The OEIS Community | Maintained by The OEIS Foundation Inc.

Last modified October 17 08:36 EDT 2019. Contains 328107 sequences. (Running on oeis4.)