Macaulay2 » Documentation
Packages » ReflexivePolytopesDB :: KSEntry
next | previous | forward | backward | up | index | toc

KSEntry -- an entry from the Kreuzer-Skarke database of dimension 3 and 4 reflexive polytopes

Description

A KSEntry is essentially a string containing a description header and the vertices of a reflexive polytope. We have given it its own type for ease of use in Macaulay2.

The most common way to obtain (lists of) KSEntry's is via a call kreuzerSkarke or kreuzerSkarkeDim3.

i1 : L = kreuzerSkarke(3, Limit=>5)
using offline data file: ks3-n244.txt

o1 = {4 5  M:53 5 N:9 5 H:3,43 [-80] id:0, 4 5  M:48 5 N:8 5 H:3,45 [-84]
         1   0   2   4 -10                    1   0   2   4  -8          
         0   1   3   5  -9                    0   1   5   3  -9          
         0   0   4   0  -4                    0   0   6   0  -6          
         0   0   0   8  -8                    0   0   0   6  -6          
     ------------------------------------------------------------------------
     id:1, 4 6  M:48 6 N:8 6 H:3,45 [-84] id:2, 4 13  M:64 13 N:8
              1   1   0   2   4  -8                1   0   0   2 
              0   3   0   2   0  -6                0   1   1   3 
              0   0   1  -1   3  -3                0   0   4   0 
              0   0   0   0   6  -6                0   0   0   4 
     ------------------------------------------------------------------------
     7 H:3,51 [-96] id:3               , 4 9  M:66 9 N:8 6 H:3,57
     -2   0  -1  -1   0   2   2  -3  -3     1   0   0   1  -3   3
     -5   2   0   0   2   4   4  -6  -6     0   1   0   0   2  -4
     -4   5   4  -1   0   1   0  -4  -5     0   0   1   0   2  -2
     -4   1  -1  -1   1   5   5  -5  -5     0   0   0   2   0  -4
     ------------------------------------------------------------------------
     [-108] id:4}
       3  -3   5
      -6   4  -8
      -2   0  -4
      -6   6  -6

o1 : List
i2 : netList L

     +----------------------------------------------------+
o2 = |4 5  M:53 5 N:9 5 H:3,43 [-80] id:0                 |
     |   1   0   2   4 -10                                |
     |   0   1   3   5  -9                                |
     |   0   0   4   0  -4                                |
     |   0   0   0   8  -8                                |
     +----------------------------------------------------+
     |4 5  M:48 5 N:8 5 H:3,45 [-84] id:1                 |
     |   1   0   2   4  -8                                |
     |   0   1   5   3  -9                                |
     |   0   0   6   0  -6                                |
     |   0   0   0   6  -6                                |
     +----------------------------------------------------+
     |4 6  M:48 6 N:8 6 H:3,45 [-84] id:2                 |
     |   1   1   0   2   4  -8                            |
     |   0   3   0   2   0  -6                            |
     |   0   0   1  -1   3  -3                            |
     |   0   0   0   0   6  -6                            |
     +----------------------------------------------------+
     |4 13  M:64 13 N:8 7 H:3,51 [-96] id:3               |
     |   1   0   0   2  -2   0  -1  -1   0   2   2  -3  -3|
     |   0   1   1   3  -5   2   0   0   2   4   4  -6  -6|
     |   0   0   4   0  -4   5   4  -1   0   1   0  -4  -5|
     |   0   0   0   4  -4   1  -1  -1   1   5   5  -5  -5|
     +----------------------------------------------------+
     |4 9  M:66 9 N:8 6 H:3,57 [-108] id:4                |
     |   1   0   0   1  -3   3   3  -3   5                |
     |   0   1   0   0   2  -4  -6   4  -8                |
     |   0   0   1   0   2  -2  -2   0  -4                |
     |   0   0   0   2   0  -4  -6   6  -6                |
     +----------------------------------------------------+

Once one has a KSEntry, the most important function is to extract the matrix whose columns are the vertices of the corresponding polytope.

i3 : A = matrix L_0

o3 = | 1 0 2 4 -10 |
     | 0 1 3 5 -9  |
     | 0 0 4 0 -4  |
     | 0 0 0 8 -8  |

              4       5
o3 : Matrix ZZ  <-- ZZ

Although the most common way to create (lists of) KSEntry's is via a call to kreuzerSkarke or kreuzerSkarkeDim3 as above, it is also possible to start with a string that perhaps you found while searching the Kreuzer-Skarke database directly.

i4 : e = KSEntry "4 5  M:53 5 N:9 5 H:3,43 [-80] id:0
       1   0   2   4 -10
       0   1   3   5  -9
       0   0   4   0  -4
       0   0   0   8  -8
       ";
i5 : A = matrix e

o5 = | 1 0 2 4 -10 |
     | 0 1 3 5 -9  |
     | 0 0 4 0 -4  |
     | 0 0 0 8 -8  |

              4       5
o5 : Matrix ZZ  <-- ZZ

For developers, a KSEntry is a SelfInitializingType.

See also

Methods that use an entry from the Kreuzer-Skarke database :

For the programmer

The object KSEntry is a self initializing type, with ancestor classes BasicList < Thing.