jaxvacua.conifold.conifold_utils#

Structural helpers for the conifold subsystem.

Purpose#

Collect conifold-specific lattice, basis-change, projection, flux-splitting and index-manipulation helpers that do not involve the dynamics of the conifold modulus.

Main public API#

  • Lattice and basis algebra: get_basis_change, compute_a_matrix, get_embedding, get_bulk_embedding and get_bulk_projection.

  • Flux and index helpers attached to periods or FluxEFT: conifold_fluxes and delete_coni_index.

  • Compatibility re-exports of extended_euclidean and orthogonal_lattice from jaxvacua.util.

Design notes#

This module is intentionally limited to structural operations. The z_cf F-term, log-coefficient and bulk-EFT routines live in jaxvacua.conifold.zcf_solver.

Structural helpers used across the conifold subsystem: lattice / basis algebra and flux / index manipulation.

The general-purpose number-theoretic helpers extended_euclidean and orthogonal_lattice live in jaxvacua.util (they have non-conifold callers); they are re-exported here for convenience.

Lattice / basis algebra#

get_basis_change(coninop)

Constructs the unimodular integer basis transformation that maps a conifold curve charge vector to the canonical form \((1, 0, \ldots, 0)\).

compute_a_matrix(intnumstensor)

Computes the \(a\)-matrix from the triple intersection number tensor.

get_bulk_embedding(q)

Bulk embedding matrix for the conifold charge \(q\): the bulk rows \(\Lambda_{1:}\) of the basis change \(\Lambda\) (from get_basis_change()), transposed to shape \((h^{1,2}, h^{1,2}-1)\).

get_bulk_projection(q)

Bulk projection matrix for the conifold charge \(q\): the bulk columns \((\Lambda^{-1})_{:,1:}\) of the inverse basis change, shape \((h^{1,2}, h^{1,2}-1)\).

get_embedding(q)

Conifold embedding direction \(e_q\) for the charge \(q\): the Bézout vector (first row of \(\Lambda\) from extended_euclidean()), satisfying \(q \cdot e_q = 1\).

Flux & index helpers (attached to periods / FluxEFT)#

conifold_fluxes(self, flux)

delete_coni_index(self, x, indx)

Re-exports from jaxvacua.util#

extended_euclidean(w)

Computes Bézout's identity and a unimodular integer basis transformation for an integer array \(w\).

orthogonal_lattice(gens_in)

Returns generators of the integer lattice orthogonal to the lattice spanned by gens_in.