Running them
Each script is one file, with no sibling imports and no external data, and runs in a single cell. Requirements are Python 3.8+ with NumPy, and Matplotlib only for the figure options. Run with no argument for the solution of the paper; the scan options reproduce the search tables and take longer.
| paper | computation script | no argument | options |
|---|---|---|---|
| sg het | compute_het_sg.py | the prism quantities, the summary of results, the three neutrino Yukawa couplings and the selection over cell factors | — |
Table 1. The computation scripts. Each is one file with no sibling imports and no external data, and runs in a single cell.
What they share
It builds these objects before anything else, so each stands on its own:
| step | what is built |
|---|---|
| the prism | the 16 vertices v = (x, y, z, τ) and the 32 edges, numbered by the lower vertex read as a binary number and, within a vertex, in the order x, y, z, τ |
| the metric operator | the weights ge, the phase S, the gradient A = S|g|1∕2d0, the Laplacian Lω = A†A, the three edge adjacencies Iz, Dxy, Iτ, the bond operator ME and its inverse GE |
| the pieces | each edge, xy loop, τ face and staircase as a vector on the 32 edges, signed by traversal |
| the links | ℓ1 = 〈b1|GEA|vo〉, ℓk+1 = 〈bk+1|GE|bk〉, ℓn+1 = 〈vs|PHA†GE|bn〉, and the amplitude as their product |
| the references | the neutrino masses from the NuFIT splittings with the DESI sum, and the MZ reading surface from the self-consistent root of MZ = (v∕2)√(gL2 + gY2) |
Table 2. The construction every script builds before its own search.