2026-08-15 15:16:35 +02:00
2026-07-29 20:01:57 +02:00
2026-07-17 22:19:09 +02:00
2026-08-15 15:16:35 +02:00
2026-07-29 20:01:57 +02:00
2026-07-29 20:01:57 +02:00
2026-07-17 21:31:09 +02:00
2026-07-29 20:30:12 +02:00

Calabi-Yau-Period-Geometry

This project collects code used for analysing CalabiYau families. It allows for computation of discriminant loci and topological data of manifolds defined as hypersurfaces or complete intersections in toric ambient spaces.

toric_topdata

Supported initialisations are represented by the following examples.

elliptic_curve_D = ToricPolytopeProjectiveSpace([1, 2, 3], model_name="elliptic_curve_D")

CY3_quintic = ToricPolytopeProjectiveSpace([1, 1, 1, 1, 1], model_name="quintic")
CY3_bicubic = ToricPolytopeCICY([[3, 3]], model_name="bi-cubic")
CICY3_two_parameter_manual_nef = ToricPolytope([[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0],
                                                [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1],
                                                [-1,-1,0,0,0,0],[0,0,-1,-1,-1,-1]],
                                                nef_partition=[[0,1,2,3], [4,5,6,7]])

CICY5_two_parameter = ToricPolytopeCICY([[6, 1],[0, 2]])

The discriminant factors and topological data, e.g. for the quintic, can then be computed with the methods below.

CY3_quintic.disc()

CY3_quintic.topdata()

We list the output of above two lines.

INFO:__main__:Discriminant factors: [[z1 + 1/3125, 0]]
INFO:__main__:

--- Polytope and GLSM table ------------------
 1|1|1|1|1|| 1

-1|1|0|0|0|| 0
-1|0|1|0|0|| 0
-1|0|0|1|0|| 0
-1|0|0|0|1|| 0
--------------
 1,1,1,1,1; -5

--- L-vectors (GLSM charges) -----------------
[[1, 1, 1, 1, 1, -5]]

--- Intersection numbers CY ------------------
{(0, 0, 0): 5}

--- Intersection ring ------------------------
5*t0^3

--- Intersection ring no multiplicities ------
5*t0^3

--- Chern polynomials ------------------------
[[0], [10*t0^3], [-40*t0^3]]

--- Integrated Chern classes -----------------
[[0], [50], [-200]]
DEBUG:__main__:

--- Kähler cone generators (ambient space) ---
['[z4]']

--- Intersection numbers ambient space -------
{(0, 0, 0, 0): 1}

The result is saved in the folder data/topdata as a JSON file — giving a model name helps keeping track of these outputs. Note that for CalabiYau dimensions larger than four, the additional

S
Description
No description provided
Readme MIT
151 KiB
Languages
Sage 85.9%
Python 12.5%
Shell 0.9%
Dockerfile 0.7%