Geometry/Polyominoes
A polyomino is a plane geometric figure formed by joining one or more equal squares edge to edge.
Domino
[edit | edit source]A domino is the shape made from attaching unit squares so that they share one full edge. The term polyomino is based on the word domino. There is only one possible domino.
Tromino
[edit | edit source]A polymino made from three squares is called a tromino. There are only two possible trominoes.
Tetromino
[edit | edit source]A polymino made from four squares is called a tetromino. There are five possible combinations and two reflections:
Pentominoes
[edit | edit source]A polymino made from five squares is called a pentomino. There are twelve possible pentominoes, excluding mirror images and rotations.
|
|
|
|
|
|
|
|
|
|
|
|
Further Classification
[edit | edit source]Polyominoes can also be classified by dividing one into 2 parts by lines that go through the centroid of the polyomino and evaluating the angle between the orthogonal of such a line that goes through that centroid and a line also going through it and going through the centroid of such a part. Any set of points can be classified by such Half Centroid Deviation Angles HCDA, e.g. a circle is characterized by always having HCDA = 0°.
This is how the centroids S1, S2 and S3 of each of the 3 squares of a non-linear (i.e. a not line-shaped) tromino and its whole-polyomino centroid C are arranged:
S1 S2 C S3
If we want to classify the whole polyomino all HCDA that appear here should be factored in. Starting with the Dividing Line DL that (goes through C and) firstly also goes through S1 and turning clockwise then a phase with a Half Centroid HC only consisting of S2 appears. This phase starts with HCDA = arctan ½ – arctan 1 = – arctan ⅓ and ends with HCDA = 2 arctan ½ = arctan (4/3) when the DL meets S3. Signs depend on where the orthogonal is placed relative to the HC. In the next phase the HC is formed by S2 and S3 ... So the "Σ tan HCDA", the sum of all "tan (end HCDA) – tan (start HCDA)" of all such phases from 0 till 2 pi (0° till 360°) of a polyomino is a rational number about the degree of deviation from a circular shape. In case of this tromino there are 6 phases:
- (DL goes through) S1 → S3, HC: S2, partial Σ tan HCDA = 4/3 + 1/3 = 5/3
- S3 → S2, HC from S2 and S3, part. Σ tan HCDA = 2/3
- S2 → S1, HC: S3, part. Σ tan HCDA = 5/3
- S1 → S3, HC from S1 and S3, part. Σ tan HCDA = 4/3 + 1/3 = 5/3
- S3 → S2, HC: S1, part. Σ tan HCDA = 2/3
- S2 → S1, HC from S1 and S2, part. Σ tan HCDA = 5/3
The sum of all these partial Σ tan HCDA = 8. In the following table of those values of non-linear polyominoes (in a straight line polyomino tan 90° = ∞ is reached between orthogonal and HC), a polyomino is described in a linearized form which assumes the first 2 squares and specifies linearly further squares by "1" each if this place is not previously changed by "o" in a spiral course (comparable with that of Ulam spiral) to another possible place next to an already placed square not already excluded by a previous "o".
- Diagonal symmetry: \, /
- to specification line horizontal symmetry: —, vertical: |, horizontal and vertical: +
- rotational symmertry: •, if rotation also by 90° yields the same: ••
In the next columns the continued fraction expansions of Σ tan HCDA and of tan (greatest absolute deviation angle) are given, with continued fraction terms not separated by commas but by number of decimal digits – 1 apostrophes prepended to the terms:
1 non-linear tromino:
o1 \ | 8 | 13 |
4 non-linear tetrominoes:
1oo1 | | 712 (= 7 ⅔) | 16 (= 7/6) |
o1oo1 + | 8 | 1 |
1o1 | '10 | 2 |
o11 • | '12 | 3 |
11 non-linear pentominoes:
1o1oo1 | 727 | 1 |
1oo11 | | 7141112 | 15 |
1oo1oooo1 + | 8 | 1 |
1o1ooo1 | | 861132 | 121'11 |
o11oo1 | 84212 | 1112 |
1o1o1 \ | 8114 | 1117 |
o11o1 \ | 91'11 2 | 1117 |
11oo1 | '10 12 | 2 |
o1o11 • | '12 | 3 |
1o11 | '12 2'12 | 214 |
11o1 | '13 '15 | 233 |
34 non-linear hexominoes:
Linearized form | Σ tan HCDA | tan (greatest deviation ∢) | * |
---|---|---|---|
o11oo1o1 — | 61221122 | 0111112 | 30 |
1o1oo11 | 6132118 | 012112 | 24 |
11oo11 | 6171'13 18 | 0121132 | 11 |
o11oo1oo1 / | 61'21 152 | 012 | 33 |
1o1o1oo1 | 7418211122 | 015212 | 28 |
1oo111 | 72174122 | 1'15 | 29 |
o111oooo1 | 7113121153'56 | 142 | 23 |
1o1oo1o1 + | 712 | 16 | 22 |
11oo1o1 | | 715 | 01'23 | 09 |
1o1o1ooo1 \ | 8 | 13 | 32 |
o11o1oo1 | 83'16 6 | 1224 | 34 |
1o11oo1 | 81111174 | 112 | 18 |
o111oo1 | 99122614 | 111'19 | 25 |
11o1o1 | 954 | 112 | 10 |
o111ooo1 | 92214 | 1242 | 19 |
11o1ooo1 | 924 | 2 | 07 |
11o1oo1 | 91134 | 113 | 06 |
11oo1ooooo1 — | 9192 | 2 | 17 |
1o11ooo1 • | '10 | 2 | 21 |
1o1o11 | '10 52321114 | 26 | 26 |
o1o1o1oo1 — | '10 3126 | 11226 | 08 |
11oo1oooo1 • | '10 2 | 22 | 16 |
o11oo11 | '10 1152 | 22 | 13 |
1oo11o1 | | '10 12 | 2 | 12 |
1o11o1 | '11 4111'24 23 | 22113 | 27 |
o1o11oo1 | '11 111112 | 3 | 14 |
o111o1 | '12 1152312 | 26 | 31 |
o11o11 • | '13 | 215 | 35 |
111ooooo1 | | '14 24 | 21'11 | 04 |
o1o1o11 • | '14 2 | 32 | 15 |
11o11 | '14 1332 | 39 | 05 |
111oo1 | '15 326 | 2162 | 03 |
1o111 • | '17 | 42 | 20 |
111o1 | '17 141112 | 3313 | 02 |
Heptominoes (There are 107 distinct non-linear free ones):
1o1oo11oo1 | | 61118'12 | 0113 |
1o11ooooo11 — | 615221'18 2 | 0122 |
1oo111ooo1 + | 73 | 1 |
111ooooo11 | 72514 | 01'20 |
11o1oo1ooooo1 | 71251'10 512112 | 154 |
o11o1oo1oo1 + | 8 | 1 |
11o1o1o1 \ | 851'28 111142 | 16'15 |
111oo11 | 831534 | 1'11 12 |
111oo1o1 | 9181'13 14 | 1113 |
111oo1oo1 | | '10 211613 | 111115 |
1o1o111 • | '12 | 3 |
o11o11o1 \ | '13 '35 | 245 |
o1o1o1o1oo1 | '13 '33 13 | 21133113 |
1oo11oooooo1o1 + | '13 3 | 3 |
111oo1oooo1 | '13 183 | 3113 |
111oo1ooooo1 | '14 73122 | 37 |
111oo1ooo1 • | '14 12 | 4 |
o111o11 • | '16 | 3 |
o1o1o1o11 • | '18 12 | 5 |
1111ooooo1 | '19 151132 | 44212 |
1111oo1 | '20 1''104 | 4352 |
1111o1 | '23 3111113 | 432 |
...
Octominoes (There are 52 distinct non-linear symmetric free ones):
1o1o1oo1o1oo1 + | 612 | 02 |
1o11ooo11oooooo1 •• | 7 | 013 |
o11oo1o1oo11 + | 73 | 1 |
1o1o11ooo1ooo1 • | 7144 | 132 |
1o11oo1oo1ooo1 / | 7151132 | 132 |
11o1oo1o1o1 + | 812 | 13 |
1oo11o11ooo1 + | 95 | 2 |
11o11ooo1o1 • | '10 3 | 2 |
o1o1oo1111 • | '11 '28 1113 | 29 |
1o11o111 • | '15 1121123 | 3122 |
o11o11o11 • | '15 12 | 3 |
o1111o11 • | '18 | 312 |
11o1111 • | '23 12 | 63 |
...
Nonominoes:
11oo1111ooooo1 • | 712 | 13 |
1o11o11ooo1oo1 • | '10 | 113 |
11o1o1111 • | '14 3 | 312 |
1o111o111 • | '20 | 42 |
o11111o11 • | '21 | 42 |
...
10-ominoes:
11oo111ooo1o1ooo1 + | 612112 | 02 |
11o1o1oo1o1o1oo1 + | 61311154 | 0111212 |
11o1oo11oo11oooo1 • | 61'19 1112 | 013 |
1oo11o1o1o11ooo1 + | '15 92 | 22 |
1o11o11o111 • | '18 ''126 | 417 |
11o11o1111 • | '18 1392 | 41118 |
o111o111o11 • | '21 1'59 | 44 |
1o1111o111 • | '23 8113 | 4242 |
o111111o11 • | '23 1'10 | 54 |
111o11111 • | '30 162 | 84 |
...
11-ominoes:
111ooooo1111oooo1o1 • | 61'20 | 0122 |
111o1o11111 • | '17 2113112 | 42 |
11o111o1111 • | '23 16 | 5122 |
1o11111o111 • | '26 12 | 5 |
o1111111o11 • | '27 23 | 62 |
...
12-ominoes:
o11o1oo11o1oo11o11 + | 62'10 | 03 |
11o1o1o1oo1o1o1oo1oo1 + | 62'10 | 03 |
11oo11o1ooo11o1ooo1oo1 •• | 612 | 02 |
1o11oo1o11oo1o1o1ooo1 + | 614 | 0112 |
11o1o1oo1o1o1oo111 + | 6 1'11 | 0125 |
o111oo111oooo111ooooo1 •• | 61'12 42 | 0122 |
1o111o111o111 • | '25 4 | 41'15 |
11o1111o1111 • | '27 1'11 | 68 |
...
So the sequence of the number of continued fraction terms of Σ tan HCDA of the non-linear polyominoes sorted that way firstly by the number of their squares and then by their Σ tan HCDA starts with 1, 3,1,1,1, 3,7,1,6,5,4,4,3,1,3,2, 8,7,7,6,10,8,11,3,3,1,4,8,8,3,5,3,5,4,1,9,5,2,5,3,8,7,8,1,3,2,5,4,1,7, ... Every 1 in this sequence means Σ tan HCDA of the certain polyomino is a natural number, which seems to require also some criteria of symmetry or at least similar harmony. The sequence of those naturals is 8, 8,10,12, 8,12, 8,10,13,17, ... The Online Encyclopedia of Integer Sequence currently does not have these 2 sequences, only countings of all possible polyominoes with n cells like that of all free ones, and of all with or without holes or certain symmetries can be found there. So it seems to remain unsolved for now how many polyominoes have natural Σ tan HCDA and which natural numbers can be a polyomino's Σ tan HCDA. Additional editing here for further clarification is welcome.
Here the calculation of a list of the polyomino's square's positions in a complex plane, Σ tan HCDA and absolute value of tan (greatest deviation angle) from a given linearized polyomino specification by using Maxima:
t:"(a:[0,1],e:[],b:1/2,c:2,d:1,f:0,g:0,v:0, for n:1 thru slength(s)do(h:a[c]+d, if charat(s,n)=ascii(49)then (a:endcons(h,a),c:c+1,b:b+(a[c]-b)/c,d:1,f:0,g:0,h:a[c]+d) else e:endcons(h,e), if(charat(s,n)#ascii(49))or member(h,a)or member(h,e)then do (if f=bit_rsh(g,1)then(f:0,g:g+1)else f:f+1, d:d+%i^g,h:a[c]+d, if(member(h+1,a)or member(h-1,a)or member(h+%i,a)or member(h-%i,a)) and not member(h,a)and not member(h,e)then return(0))), print(a),e:[], for n:1 thru c do(a[n]:a[n]-b,e:endcons(carg(a[n]),e)),d:0,f:e[1], do(b:0,g:0,h:%pi*2, for n:1 thru c do(if ((e[n]>f)and(e[n]<=(f+%pi)))or (((e[n]+%pi*2)>f)and((e[n]+%pi)<=f))or (((e[n]-%pi*2)>f)and((e[n]-%pi*3)<=f))then (g:g+1,b:b+(a[n]-b)/g,p:e[n]-f, if p<0 then p:p+%pi*2, if p>%pi*2 then p:p-%pi*2, if(p>0)and(p<h)then(h:p,k:n,q:1))else (p:e[n]-f-%pi, if p<0 then p:p+%pi*2, if p>%pi*2 then p:p-%pi*2, if(p>0)and(p<h)then(h:p,k:n,q:-1))), b:carg(b), w:cot(f-b), d:d+w, w:abs(w), if v<w then v:w, w:cot(e[k]-b), d:d-w, w:abs(w), if v<w then v:w, if q=1 then f:e[k]else(if e[k]>0 then f:e[k]-%pi else f:e[k]+%pi), if f=e[1] then return(0)), d:bfloat(d),v:bfloat(v),[d,cf(d),v,cf(v)])"$s:"o11oo1"$eval_string(t)
In case of the non-linear tromino "o1" this program obtains its 3 points with centroid at (0; 0):
- a[1] = –2/3 – /3
- a[2] = 1/3 – /3
- a[3] = 1/3 + 2 /3
Then adds these 6 differences together:
- cot (arg a[1] + pi/4) – cot (arg a[3] + pi/4) = 1/3 + 1/3
- cot (arg a[3] – arctan ½) – cot (arg a[2] – arctan ½) = 4/3 + 1/3
- cot (arg a[2] – arctan 2) – cot (arg a[1] – arctan 2) = 1/3 + 4/3
- cot (arg a[1] – 3 pi/4) – cot (arg a[3] – 3 pi/4) = 1/3 + 1/3
- cot (arg a[3] – arctan ½) – cot (arg a[2] – arctan ½) = 4/3 + 1/3
- cot (arg a[2] – arctan 2) – cot (arg a[1] – arctan 2) = 1/3 + 4/3