In each given dimension $d$, it is known that the number of distinct (up to invertible integral change of basis) reflexive polytopes of dimension $d$ is finite in number. For example, in dimension 1 there is 1, in dimension 2, there are 16, in dimension 3, there are 4319 distinct reflexive polytopes.
In a major work, Max Kreuzer and Harold Skarke found algorithms for computing the set of such polytopes. They used these algorithms to show that there are 473,800,776 distinct 4-dimensional reflexive polytopes. The number is sufficiently large that they created a website http://hep.itp.tuwien.ac.at/~kreuzer/CY/ and an interface to access these examples. See their website for references to the algorithms used.
This package, ReflexivePolytopesDB, provides access to this database of reflexive polytopes of dimension 3 and dimension 4.
This package also contains a small part of this database for offline use, in case one cannot access the database.
Here we describe a simple use of the package. The actual investigation of the corresponding polytope or toric variety, or Calabi-Yau hypersurface, is done in Macaulay2 with the aid of other packages, such as Polyhedra and NormalToricVarieties.
Let's take one example polytope from the database, one whose corresponding Calabi-Yau 3-fold has Hodge numbers $h^{1,1}(X) = 9$ and $h^{1,2}(X) = 21$.
|
This returns a list of single entries from the Kreuzer-Skarke database. Each one is essentially a string, containing a description line, together with the vertices of the corresponding polytope.
In Macaulay2, each entry is an object of class KSEntry (meaning: Kreuzer-Skarke database entry). Use matrix(KSEntry) to create the matrix whose columns are the vertices of the reflexive polytope. Use description(KSEntry) to see the associated description from the database (see Kreuzer-Skarke description headers for the description of the format of this description).
|
|
|
The corresponding reflexive polytope has 7 vertices, the columns of this matrix.
|
|
|
|
|
|
We can process many examples at one time, using the list facilities in Macaulay2. For instance, use List / Function to apply matrix to each element of the list, returning a list of the resulting matrices:
|
|
This documentation describes version 1.0 of ReflexivePolytopesDB.
If you have used this package in your research, please cite it as follows:
|
The object ReflexivePolytopesDB is a package, defined in ReflexivePolytopesDB.m2, with auxiliary files in ReflexivePolytopesDB/.
The source of this document is in ReflexivePolytopesDB.m2:439:0.