Math: Counting Intersections in Honeycomb

By Xah Lee. Date: . Last updated: . Triangular shaped board with n honeycomb on each side. If there are n honeycombs per side, how many intersections are there?

For example, we have:

• f(2) = 4
• f(3) = 10
• f(4) = 18
↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓

↓
↓
↓
↓
↓ Triangular shaped board with n honeycomb on each side. If there are n honeycombs per side, how many intersections are there?

Triangular shaped board with n honeycomb on one side has 1+ 4*n + n^2 number of points where straight line meets (that is, counting the “bents” on the perimeter.) For example, if n=2, then we have 13 points.

If the perimeter bents are not counted, then the formula is -2+n+n^2. For example, if n=2, then we have 4 points.

let n be the number of hexagons on the side of a honeycomb grid with a triangle overall-shape.

By inspection, we have this recursive formula:

f = 6
f[n] = f[n-1] + n*2+3

compute a few terms we see that:

f = 6 + 2*2+3
f = 6 + 2*2+3 + 3*2+3
f = 6 + 2*2+3 + 3*2+3 + 4*2+3
f = 6 + 2*2+3 + 3*2+3 + 4*2+3 + 5*2+3
…

from the above, we see a pattern, and it is:

f[n] = 6 + Sum[i,{i,2,n}] *2 + (n-1)*3

the value Sum[i,{i,2,n}] is 1/2 *(n-1)(2+n). So,

f[n] = 1+ 4*n + n^2

n and f[n] values list:

{1, 6}, {2, 13}, {3, 22}, {4, 33}, {5, 46},{6, 61}, {7, 78}, {8, 97}, {9, 118}, {10, 141}

Not Counting Edge-Bends

Now if the edge bent points doesn't count, By inspection we reduce each side by n*3 and 3 corners, so

f = 0
f[n] = -2 + n + n^2

n and f[n] values list:

{1, 0}, {2, 4}, {3, 10}, {4, 18}, {5, 28}, {6, 40},{7, 54}, {8, 70}, {9, 88}, {10, 108}

Over-All Hexgonal Shaped Board

• A honeycomb grid with n hexagons on a side has 6*n^2 number of “intersections”, counting the edge bent as an intersection.
• A honeycomb grid with n hexagons on a side has -6*n + 6*n^2 number of “intersections”, not counting the edge bent as an intersection.

let n be the number of hexagons on the side.

By inspection, we have this recursive formula:

f = 6
f[n] = f[n-1] + (2*n-1)*6

so:

f = 6 + (2*2-1)*6
f = 6 + (2*2-1)*6 + (2*3-1)*6
f = 6 + (2*2-1)*6 + (2*3-1)*6 + (2*4-1)*6
f[n] = 6 + 6 * Sum[2*i-1,{i,2,n}]
= 6 + 6 * (n^2-1)
= 6 n^2

n and f[n] values list:

{1, 6}, {2, 24}, {3, 54}, {4, 96}, {5, 150}, {6, 216}, {7, 294}, {8, 384}, {9, 486}

if edges bent points doesn't count, then we simply minus 6*n. So,

f = 0
f[n] = -6 n + 6 n^2

n and f[n] values list:

{1, 0}, {2, 12}, {3, 36}, {4, 72}, {5, 120}, {6, 180}, {7, 252}, {8, 336}, {9, 432}

Mathematica code: for hex grid 1: hex_board.nb; for hex grid 2: hex_board2.nb; triangular grid: tri_board.nb.

This board with edge size n has -3 n + 3 n^2 + 1 points.

With triangular outline board of size n.

By inspection, we have this recursive formula:

f = 1
f[n] = f[n-1] + n

so:

f = 1 + 2
f = 1 + 2 + 3
f = 1 + 2 + 3 + 4
f[n] = Sum[i,{i,1,n}]
= 1/2 * n (1+n)
= (n+n^2)/2

n and f[n] values list:

{{1, 1}, {2, 3}, {3, 6}, {4, 10}, {5, 15}, {6, 21}, {7, 28}, {8, 36}, {9, 45}, {10, 55}, {11, 66}, {12, 78}}

For hexagonal outline, simply multiply by 6 and substract 6*n for the repeated edges, than add the center back. So we have:

f[n] = Sum[i,{i,1,n}] * 6 - 6*n + 1
= -6 n + 3 n (1+n)
= -3 n + 3 n^2 + 1

n and f[n] values list:

{{1, 1}, {2, 7}, {3, 19}, {4, 37}, {5, 61}, {6, 91}, {7, 127}, {8, 169}, {9, 217}, {10, 271}, {11, 331}, {12, 397}}