jaxvacua.flux_eft.FluxEFT

Contents

jaxvacua.flux_eft.FluxEFT#

class FluxEFT(h12=None, model_ID=None, model_type='KS', limit='LCS', maximum_degree=0, mirror_cy=None, model_data=None, lcs_tree_input=None, model_file='', use_cytools=False, basis_change=None, ncf=None, conifold_curve=None, conifold_basis=True, grading_vector=None, period_input=None, prepotential_input=None, Q=None, gauge_choice=1 + 0j, prange=5, use_gvs=True, save_file=False, **kwargs)#

Bases: css

A class representing the flux sector in a 4D EFT obtained from Type IIB compactification on orientifolds of CY threefolds with 3-form flux backgrounds.

__init__(h12=None, model_ID=None, model_type='KS', limit='LCS', maximum_degree=0, mirror_cy=None, model_data=None, lcs_tree_input=None, model_file='', use_cytools=False, basis_change=None, ncf=None, conifold_curve=None, conifold_basis=True, grading_vector=None, period_input=None, prepotential_input=None, Q=None, gauge_choice=1 + 0j, prange=5, use_gvs=True, save_file=False, **kwargs)#

A class representing the flux sector in a 4D EFT obtained from Type IIB compactification on CY threefolds with 3-form flux backgrounds.

Parameters:
  • h12 (int | None) – The number of moduli for the compactified geometry.

  • model_type (str) – The type of manifold considered for the compactification. Currently, "KS" and "CICY" are available.

  • model_ID (int | None) – ID specifying a certain model.

  • limit (str) – String identifying the type of periods to be considered. Currently, only "LCS" is available.

  • model_data (dict | None) – Contains model data like triple intersection numbers etc.

  • instanton_data (list) – List of GV and GW invariants.

  • maximum_degree (int) – Maximum degree used for the instanton sum.

  • use_cytools (bool) – Whether or not to use CYTools to compute topological data of Calabi-Yau.

  • mirror_cy (Any | None) – Mirror Calabi-Yau threefold.

  • basis_change (Array | None) – Basis transformation to be applied to topological data of Calabi-Yau.

  • grading_vector (Array | None) – Grading vector to be used for the GV computation.

  • period_input (Optional[Callable]) – Input for periods.

  • prepotential_input (Optional[Callable]) – Input for prepotential.

  • gauge_choice (complex) – Gauge choice parameter.

  • save_file (bool) – Save files for new models. Defaults to False.

  • **kwargs (Any) – Additional keyword arguments.

D3_tadpole#

Maximum allowed D3-tadpole.

Type:

int

n_fluxes#

Number of fluxes.

Type:

int

Methods

A(moduli, moduli_c)

Returns the value of the mirror dual Calabi-Yau volume.

DDW(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns a matrix the second holomorphic Kähler derivatives \(D_I D_J W\) of the superpotential.

DDW_SUSY(moduli, moduli_c, tau, tau_c, fluxes)

Returns a matrix containing the second holomorphic Kähler derivative of the superpotential assuming that the F-flatness conditions \(D_{i}W=D_{\tau}W=0\) are satisfied.

DDW_general(moduli, moduli_c, tau, tau_c, fluxes)

Returns the second Kähler covariant derivatives \(D_I D_J W\) of the superpotential \(W\) with respect to the axio-dilaton \(\tau\) and the complex structure moduli \(z^{i}\).

DDW_matrix(moduli, moduli_c, tau, tau_c, fluxes)

Returns the matrix of masses for chiral fermions.

DDW_matrix_SUSY(moduli, moduli_c, tau, ...)

Returns the matrix of second Kähler derivatives of the superpotential assuming that the F-term conditions are satisfied for all fields.

DDW_matrix_general(moduli, moduli_c, tau, ...)

Returns the matrix of second Kähler derivatives of the superpotential.

DDW_tau_ctau(moduli, moduli_c, tau, tau_c, ...)

Returns the Kähler covariant derivative \(D_{\overline{\tau}}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

DDW_tau_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{\overline{z}^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

DDW_tau_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{\tau}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the axio-dilaton \(\tau\).

DDW_tau_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{z^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex structure moduli \(z^i\).

DDW_z_ctau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{\overline{\tau}}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

DDW_z_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{\overline{z}^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

DDW_z_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{\tau}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the axio-dilaton \(\tau\).

DDW_z_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Kähler covariant derivative \(D_{z^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex structure moduli \(z^i\).

DW(moduli, moduli_c, tau, tau_c, fluxes[, conj])

Returns the holomorphic Kähler covariant derivatives of the superpotential with respect to the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

DW_tau(moduli, moduli_c, tau, tau_c, fluxes)

Calculates the Kähler covariant derivative of the superpotential with respect to the axio-dilaton \(\tau\).

DW_x(x, fluxes)

Calculates the real and imaginary parts of the \(F\)-term conditions.

DW_z(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Calculates the Kähler covariant derivative of the superpotential \(W\) with respect to the complex structure moduli \(z^{i}\).

DcDW(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns a matrix containing the mixed second Kähler derivatives \(D_{\overline{I}}D_{J}W\).

F(moduli[, conj])

Computes the pre-potential for given values of the moduli.

F_LCS(moduli[, conj])

Calculates the value of the LCS prepotential in terms of the complex structure moduli \(z^{i}\).

F_LCS_poly(moduli[, conj])

Computes the polynomial contribution \(F_{\mathrm{poly}}\) to the LCS prepotential \(F_{\mathrm{LCS}}\) in terms of the complex structure moduli \(z^i\).

F_inst(moduli[, conj])

Returns the instanton part \(F_{\mathrm{inst}}\) of the LCS prepotential \(F_{\mathrm{LCS}}\) in terms of the complex structure moduli \(z^i\).

H(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the Hessian of the scalar potential.

ISD_condition(moduli, moduli_c, tau, tau_c, ...)

Checks whether the fluxes satisfy the ISD condition \(\star G_3=\text{i}G_3\).

ISD_matrix(moduli, moduli_c)

Computes the value of the ISD-matrix \(\mathcal{M}\).

K(moduli, moduli_c, tau, tau_c)

Returns the value of the Kähler potential.

M(moduli, moduli_c)

Computes the value of the ISD-matrix \(\mathcal{M}\).

N(moduli, moduli_c[, conj])

Computes the value of the gauge kinetic matrix \(\mathcal{N}\).

V(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the value of the \(F\)-term scalar potential.

V_tilde(moduli, moduli_c)

Returns the value of the mirror dual Calabi-Yau volume.

V_x(x, fluxes[, noscale])

Returns the value of the real part of the F-term scalar potential \(V\) for input of the real scalar fields.

W(moduli, tau, fluxes[, conj, normalise])

Calculates the value of the superpotential for given flux, moduli and axio-dilaton.

W0(moduli, tau, fluxes[, conj, normalise])

Calculates the value of the gauge invariant version of the flux superpotential.

__init__([h12, model_ID, model_type, limit, ...])

A class representing the flux sector in a 4D EFT obtained from Type IIB compactification on CY threefolds with 3-form flux backgrounds.

apply_monodromy(moduli, fluxes, n)

Apply a monodromy shift \(z^a \to z^a + n^a\) to the moduli and transform the fluxes accordingly via the monodromy matrix \(M(n)\).

canonical_fterms(moduli, moduli_c, tau, ...)

Returns the canonically normalised \(F\)-term conditions \(F_I,\, F^I\).

christoffel_symbols(moduli, moduli_c, tau, tau_c)

Returns the Christoffel symbols \(\Gamma^E_{AC}\) of the Levi-Civita connection on the Kähler moduli space.

compute_tau_vev(moduli, flux)

Computes the value of the axio-dilaton \(\tau\) from the fluxes and complex structure moduli as a solution to the corresponding \(F\)-term condition \(D_{\tau}W=0\).

conifold_monodromy_matrix([conifold_curve, ...])

Picard-Lefschetz monodromy matrix around a conifold singularity where a 3-cycle \(\gamma = \sum_a c_a A^a\) shrinks to zero.

dDW(moduli, moduli_c, tau, tau_c, fluxes[, conj])

Returns the holomorphic derivative \(\partial_{I}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex structure moduli \(z^i\) and the axio-dilaton \(\tau\).

dDW_c(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{I}}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\overline{\tau}\).

dDW_ctau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{J}W\) of the \(F\)-term \(D_{J}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

dDW_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{J}W\) of the \(F\)-term \(D_{J}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

dDW_real(moduli, tau, fluxes)

Returns the Jacobian \(\partial_{\phi^\alpha}(D_J W)\) of the \(F\)-terms with respect to the real scalar fields \(\phi^\alpha = (a^i, v^i, c_0, s)\).

dDW_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\tau}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the the axio-dilaton \(\tau\).

dDW_tau_ctau(moduli, moduli_c, tau, tau_c, ...)

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{\tau}W\) of the \(F\)-term \(D_{\overline{\tau}}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

dDW_tau_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

dDW_tau_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\tau}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the axio-dilaton \(\tau\).

dDW_tau_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{z^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex structure moduli \(z^i\).

dDW_x(x, fluxes)

Returns the first derivatives of the F-term conditions by differentiating with respect to the real fields.

dDW_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{z^i}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex structure moduli \(z^i\).

dDW_z_ctau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

dDW_z_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

dDW_z_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{\tau}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the axio-dilaton \(\tau\).

dDW_z_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic derivative \(\partial_{z^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex structure moduli \(z^i\).

dF(moduli[, conj])

Computes the holomorphic derivative \(\partial_{z^i} F\) of the prepotential \(F\) for given values of the moduli.

dGamma(moduli, moduli_c, tau, tau_c)

Returns the holomorphic derivative of the Christoffel symbols \(\partial_B \Gamma^E_{AC}\).

dIKM_c(moduli, moduli_c, tau, tau_c)

Returns the anti-holomorphic derivative of the inverse Kähler metric \(\partial_{\bar{B}} K^{I\bar{J}}\).

dK(moduli, moduli_c, tau, tau_c)

Returns the holomorphic derivative \(\partial_I K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

dK_c(moduli, moduli_c, tau, tau_c)

Returns the holomorphic derivative \(\partial_{\overline{I}} K\) of the Kähler potential \(K\) with respect to the complex conjugate complex structure moduli \(\overline{z}^{i}\) and the axio-dilaton \(\overline{\tau}\).

dK_ctau(moduli, moduli_c, tau, tau_c)

Returns the anti-holomorphic derivative \(\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the conjugate axio-dilaton \(\overline{\tau}\).

dK_cz(moduli, moduli_c, tau, tau_c)

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}K\) of the Kähler potential \(K\) with respect to the conjugate complex structure moduli \(\overline{z}^i\).

dK_tau(moduli, moduli_c, tau, tau_c)

Returns the holomorphic derivative \(\partial_{\tau}K\) of the Kähler potential \(K\) with respect to the axio-dilaton \(\tau\).

dK_z(moduli, moduli_c, tau, tau_c)

Returns the holomorphic derivative \(\partial_{z^i}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\).

dM(moduli, moduli_c)

Returns the holomorphic derivative \(\partial_{z^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex structure moduli \(z^i\).

dM_X(moduli, moduli_c)

Returns the holomorphic derivative \(\partial_{X^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the periods \(X^I\).

dM_c(moduli, moduli_c)

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

dM_cX(moduli, moduli_c)

Returns the anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex conjugate periods \(\overline{X}^I\).

dN(moduli, moduli_c[, conj])

Returns the holomorphic derivative \(\partial_{z^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex structure moduli \(z^i\).

dN_X(moduli, moduli_c[, conj])

Returns the holomorphic derivative \(\partial_{X^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the periods \(X^I\).

dN_c(moduli, moduli_c[, conj])

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

dN_cX(moduli, moduli_c[, conj])

Returns the anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex conjugate periods \(\overline{X}^I\).

dV(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the first holomorphic derivative \(\partial_{I}V\) of the \(F\)-term scalar potential \(V\).

dV_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the first holomorphic derivative \(\partial_{\tau}V\) of the \(F\)-term scalar potential \(V\) with respect to the axio-dilaton \(\tau\).

dV_x(x, fluxes[, noscale])

Returns the gradients of the F-term scalar potential \(V\) with respect to the real scalar fields for real inputs.

dV_z(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the first holomorphic derivative \(\partial_{z^i}V\) of the \(F\)-term scalar potential \(V\) with respect to the complex structure moduli \(z^i\).

dW(moduli, tau, fluxes[, conj])

Calculates the holomorphic derivative \(W_I\) of the superpotential \(W\) with respect to all moduli \((z^i, \tau)\).

dW_tau(moduli, tau, fluxes[, conj])

Calculates the holomorphic derivative \(W_\tau=\partial_{\tau}W\) of the superpotential \(W\) with respect to the axio-dilaton \(\tau\).

dW_z(moduli, tau, fluxes[, conj])

Calculates the holomorphic derivative \(W_i=\partial_{z^i}W\) of the superpotential \(W\) with respect to the complex structure moduli \(z^{i}\).

ddDW(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the second derivative of the \(F\)-terms \(\partial_A(D_I W)\).

ddDW_x(x, fluxes)

Returns the second derivatives of the F-term conditions by differentiating with respect to the real fields.

ddIKM(moduli, moduli_c, tau, tau_c)

Returns the mixed second derivative of the inverse Kähler metric \(\partial_A\partial_{\bar{B}} K^{I\bar{J}}\).

ddK_ctau_ctau(moduli, moduli_c, tau, tau_c)

Returns the second holomorphic derivatives of the Kähler potential with respect to the axio-dilaton \(\tau\).

ddK_cz_ctau(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(K_{\bar{\imath}\overline{\tau}}=\partial_{\overline{z}^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\overline{\tau}\).

ddK_cz_cz(moduli, moduli_c, tau, tau_c)

Returns the second anti-holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\).

ddK_cz_tau(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(K_{\tau\overline{j}}=\partial_{\tau}\partial_{\overline{z}^{j}}K\) of the Kähler potential \(K\) with respect to the conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\tau\).

ddK_cz_z(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(K_{\bar{\jmath}i}=\partial_{\overline{z}^j}\partial_{z^i}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and their conjugate.

ddK_tau_ctau(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(\partial_{\tau}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the axio-dilaton \(\tau\) and its conjugate.

ddK_tau_tau(moduli, moduli_c, tau, tau_c)

Returns the second holomorphic derivatives of the Kähler potential with respect to the axio-dilaton \(\tau\).

ddK_z_ctau(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(K_{i\overline{\tau}}=\partial_{z^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and the conjugate axio-dilaton \(\overline{\tau}\).

ddK_z_cz(moduli, moduli_c, tau, tau_c)

Returns the second derivatives \(K_{i\bar{\jmath}}=\partial_{z^i}\partial_{\overline{z}^j}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and their conjugate.

ddK_z_tau(moduli, moduli_c, tau, tau_c)

Returns the second holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\) and the axio-dilaton \(\tau\).

ddK_z_z(moduli, moduli_c, tau, tau_c)

Returns the second holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\).

ddV(moduli, moduli_c, tau, tau_c, fluxes[, ...])

Returns the second derivatives \((\partial_I\partial_J V,\,\partial_I\partial_{\bar J}V)\) of the \(F\)-term scalar potential.

ddV_ctau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the mixed second derivatives \(\partial_{I}\partial_{\bar\tau}V\) of the \(F\)-term scalar potential.

ddV_cz(moduli, moduli_c, tau, tau_c, fluxes)

Returns the mixed second derivatives \(\partial_{I}\partial_{\bar{z}^j}V\) of the \(F\)-term scalar potential.

ddV_tau(moduli, moduli_c, tau, tau_c, fluxes)

Returns the second derivatives \(\partial_{I}\partial_{\tau}V\) of the \(F\)-term scalar potential.

ddV_x(x, fluxes[, noscale])

Returns the second derivatives of the F-term scalar potential \(V\) with respect to the real scalar fields for real inputs.

ddV_z(moduli, moduli_c, tau, tau_c, fluxes)

Returns the holomorphic second derivatives \(\partial_{I}\partial_{z^j}V\) of the \(F\)-term scalar potential.

ddW(moduli, tau, fluxes[, conj])

Calculates the full second holomorphic derivatives \(W_{IJ}=\partial_I\partial_J W\) of the superpotential.

ddW_tau_tau(moduli, tau, fluxes[, conj])

Calculates \(W_{\tau\tau}=\partial_\tau^2 W\).

ddW_z_tau(moduli, tau, fluxes[, conj])

Calculates the mixed second derivative \(W_{i\tau}=\partial_{z^i}\partial_{\tau}W\) of the superpotential.

ddW_z_z(moduli, tau, fluxes[, conj])

Calculates the second holomorphic derivatives \(W_{ij}=\partial_{z^i}\partial_{z^j}W\) of the superpotential.

dddK(moduli, moduli_c, tau, tau_c)

Returns the third holomorphic-mixed Kähler derivative \(\partial_{A} K_{C\bar{F}}\) with respect to the combined field-space index \(A = (z^i, \tau)\).

dddK_c(moduli, moduli_c, tau, tau_c)

Returns the third anti-holomorphic-mixed Kähler derivative \(\partial_{\bar{B}} K_{C\bar{F}}\) with respect to the combined anti-holomorphic field-space index \(\bar{B} = (\bar{z}^i, \bar{\tau})\).

flux_to_pfv(flux)

Returns M- and K-vector specifying PFV from full flux vector.

gauge_kinetic_matrix(moduli, moduli_c[, conj])

Computes the value of the gauge kinetic matrix \(\mathcal{N}\).

hessian(moduli, moduli_c, tau, tau_c, fluxes)

Returns the Hessian of the scalar potential.

inverse_kahler_metric(moduli, moduli_c, tau, ...)

Returns the inverse Kähler metric \(K^{\overline{I}J}\).

inverse_kahler_metric_grad(moduli, moduli_c, ...)

Returns the gradient of the inverse Kähler metric.

kahler_metric(moduli, moduli_c, tau, tau_c)

Computes the Kähler metric \(K_{\overline{I}J}\).

kahler_potential(moduli, moduli_c, tau, tau_c)

Returns the value of the Kähler potential.

map_to_fd(moduli, tau, fluxes[, axion_fd, ...])

Maps a vacuum solution (moduli, tau, fluxes) to the fundamental domain by:

map_to_fd_tau(tau, fluxes[, ...])

Map of the axio-dilaton value and the flux vector to the fundamental domain (FD) of \(\text{SL}(2,\mathbb{Z})\).

mass_matrix(moduli, moduli_c, tau, tau_c, fluxes)

Returns the mass matrix after canonical normalisation of the kinetic terms.

mirror_volume(moduli, moduli_c)

Returns the value of the mirror dual Calabi-Yau volume.

moduli_to_periods(moduli[, conj])

Transforms complex structure moduli to periods for the global choice of gauge.

monodromy_matrix(n)

Computes the monodromy matrix \(T(\vec{n})\) for a general integer shift \(z^a \to z^a + n^a\).

monodromy_matrix_single(b)

Computes the monodromy matrix \(T_b\) for the shift \(z^b \to z^b + 1\).

period_vector(moduli[, conj])

Returns the period vector \(\Pi\) at a given point in moduli space.

periods_to_moduli(XPer)

Transforms periods to complex structure moduli.

pfv_to_flux(M, K)

Returns full flux vector from M- and K-vector specifying PFV.

pfv_to_moduli(M, K, tau)

Returns values of the complex structure moduli at the level of the PFV.

prepot(moduli[, conj])

Computes the pre-potential for given values of the moduli.

projection_fluxes(moduli, tau, fluxes[, mode])

Computes the Hodge decomposition of the 3-form flux \(G_3 = F_3 - \tau H_3\) into its \((p,q)\)-components on the Calabi-Yau threefold.

riemann_tensor(moduli, moduli_c, tau, tau_c)

Returns the Riemann curvature tensor \(R_{i\bar{\jmath}k\bar{l}}\) of the Kähler moduli space.

scalar_potential(moduli, moduli_c, tau, ...)

Returns the value of the \(F\)-term scalar potential.

superpotential(moduli, tau, fluxes[, conj, ...])

Calculates the value of the superpotential for given flux, moduli and axio-dilaton.

superpotential_gauge_invariant(moduli, tau, ...)

Calculates the value of the gauge invariant version of the flux superpotential.

tadpole(fluxes)

Calculates the D3-charge for given fluxes.

verify_monodromy(b[, z, tol])

Numerically verify the monodromy matrix by checking \(T_b \cdot \Pi(z) = \Pi(z + e_b)\).

Attributes

F_coniLCS_bulk

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

F_coniLCS_exp

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

F_coniLCS_series

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

W_bulk

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

W_log_coeff

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

compute_zcf

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

compute_zcf_x

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

conifold_fluxes

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

dF_coniLCS_exp

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

dK_cf_bulk

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

lcs_tree

Description: The lcs_tree object containing the topological data (intersection numbers, second Chern class, GV invariants, etc.) for the underlying Calabi-Yau geometry.

log_coeff_K_corr

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

log_prefactor

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

zcf_handling

** Class-level descriptor: surfaces a method only when the instance's limit is in the coniLCS family. Otherwise raises AttributeError so hasattr() returns False.

A(moduli, moduli_c)#

Returns the value of the mirror dual Calabi-Yau volume.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

Returns:

complex – Mirror dual Calabi-Yau volume.

Return type:

complex

Aliases:

A(), mirror_volume(), V_tilde()

See also: period_vector()

See also: kahler_potential()

DDW(moduli, moduli_c, tau, tau_c, fluxes, conj=False, mode=None)#

Returns a matrix the second holomorphic Kähler derivatives \(D_I D_J W\) of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str) – The mode to \(DDW\). Currently implemented modes are: * None: general expression from explicit second derivatives. * “SUSY”: computes at a SUSY locus where DW=0 using standard SUGRA formulas.

Returns:

Array – Value of \(D_I D_J W\).

Return type:

Array

DDW_SUSY(moduli, moduli_c, tau, tau_c, fluxes, conj=False, mode='block diagonal')#

Returns a matrix containing the second holomorphic Kähler derivative of the superpotential assuming that the F-flatness conditions \(D_{i}W=D_{\tau}W=0\) are satisfied.

Warning

We assume that there is a block-diagonal structure in the Kahler potential such that the mixed second derivatives vanish \(K_{i\tau}=K_{\tau i}=0\). This might not necessarily be true once further corrections to the Kahler potential are included.

Warning

Further, we use that \(W_{\tau\tau}=0\) because the flux superpotential superpotential() is linear in \(\tau\). Again, this might not necessarily be true anymore once non-perturbative instanton effects are present in the superpotential!

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str) – Whether to assume that the Kähler metric is block-diagonal. Defaults to "block diagonal".

Returns:

Array – Value of \(D_I D_J W\) assuming \(D_IW=0\).

Return type:

Array

DDW_general(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the second Kähler covariant derivatives \(D_I D_J W\) of the superpotential \(W\) with respect to the axio-dilaton \(\tau\) and the complex structure moduli \(z^{i}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Second Kähler covariant derivatives \(D_I D_J W\) of the superpotential \(W\) with respect to the axio-dilaton \(\tau\) and the moduli \(z^{i}\).

Return type:

Array

DDW_matrix(moduli, moduli_c, tau, tau_c, fluxes, mode='SUSY')#

Returns the matrix of masses for chiral fermions.

Note

To speed up the computation, it can be advantageous to compute this function using the mode="SUSY" option provided that \(DW=0\) for all fields.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str) – Whether or not the point at which the mass matrix is evaluated corresponds to a minimum with \(DW=0\) for all fields. Default is mode="SUSY".

Returns:

(Array)

Return type:

Array

DDW_matrix_SUSY(moduli, moduli_c, tau, tau_c, fluxes)#

Returns the matrix of second Kähler derivatives of the superpotential assuming that the F-term conditions are satisfied for all fields.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:
  • See alsomassive_directions_general()

  • See alsoDDW_SUSY()

Return type:

Array

DDW_matrix_general(moduli, moduli_c, tau, tau_c, fluxes)#

Returns the matrix of second Kähler derivatives of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

Array – Shape (2n, 2n) matrix with blocks [[DDW, DcDW], [conj(DcDW), conj(DDW)]].

Return type:

Array

DDW_tau_ctau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\overline{\tau}}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\overline{\tau}}D_{\tau}W\).

Return type:

Array

DDW_tau_cz(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\overline{z}^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\overline{z}^i}D_{\tau}W\).

Return type:

Array

DDW_tau_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\tau}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\tau}D_{\tau}W\).

Return type:

Array

DDW_tau_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{z^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{z^i}D_{\tau}W\).

Return type:

Array

DDW_z_ctau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\overline{\tau}}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\overline{\tau}}D_{z^j}W\).

Return type:

Array

DDW_z_cz(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\overline{z}^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\overline{z}^i}D_{z^j}W\).

Return type:

Array

DDW_z_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{\tau}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{\tau}D_{z^j}W\).

Return type:

Array

DDW_z_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the Kähler covariant derivative \(D_{z^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(D_{z^i}D_{z^j}W\).

Return type:

Array

DW(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic Kähler covariant derivatives of the superpotential with respect to the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Values of the \(F\)-term conditions for the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

Return type:

Array

See also: DW_z()

See also: DW_tau()

DW_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Calculates the Kähler covariant derivative of the superpotential with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Values of the \(F\)-term conditions for the axio-dilaton \(\tau\).

Return type:

complex

See also: superpotential()

See also: dW_tau()

See also: dK_tau()

See also: dK_ctau()

DW_x(x, fluxes)#

Calculates the real and imaginary parts of the \(F\)-term conditions.

Parameters:
  • x (Array) – Array of shape (\(2(h^{1,2}+1)\), ) containing real and imaginary parts of the complex structure moduli \(z^i\) and axio-dilaton \(\tau\).

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

Array – Vector of shape (\(2(h^{1,2}+1)\), ) containing real and imaginary parts of the \(F\)-term conditions in alternating order.

Return type:

Array

See also: DW()

DW_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Calculates the Kähler covariant derivative of the superpotential \(W\) with respect to the complex structure moduli \(z^{i}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Values of the \(F\)-term conditions for the complex structure moduli \(z^{i}\).

Return type:

Array

See also: superpotential()

See also: dW_z()

See also: dK_z()

See also: dK_cz()

DcDW(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns a matrix containing the mixed second Kähler derivatives \(D_{\overline{I}}D_{J}W\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Values of \(D_{\overline{I}}D_{J}W\).

Return type:

Array

F(moduli, conj=False)#

Computes the pre-potential for given values of the moduli.

Note

We return the value of the pre-potential in terms projective coordinates

\[z^{i}=\frac{X^i}{X^0}\, .\]

Per default, we work in the gauge choice \(X^0=1\), but other gauge choices can be provided as inputs.

Note

We provide the option to compute the pre-potential and some additional functions in terms of the periods directly, see in particular jaxvacua.periods.periods.F_LCS_per(), jaxvacua.periods.periods.prepot_per() and jaxvacua.periods.periods.period_vector_per().

Warning

The moduli space limit around which the pre-potential is computed is set by the global parameter self.periods.limit. Currently, only self.periods.limit="LCS" is supported.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the prepotential \(F(z^i)\).

Return type:

complex

Errors:

ValueError: If the moduli space limit is not identified.

Aliases:

F()

See also: prepot_per()

F_LCS(moduli, conj=False)#

Calculates the value of the LCS prepotential in terms of the complex structure moduli \(z^{i}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the LCS prepotential \(F_{\text{LCS}}\).

Return type:

complex

See also: F_LCS_poly(), F_inst()

F_LCS_poly(moduli, conj=False)#

Computes the polynomial contribution \(F_{\mathrm{poly}}\) to the LCS prepotential \(F_{\mathrm{LCS}}\) in terms of the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the polynomial contribution \(F_{\mathrm{poly}}\) to the LCS prepotential \(F_{\mathrm{LCS}}\).

Return type:

complex

See also: F_LCS()

F_inst(moduli, conj=False)#

Returns the instanton part \(F_{\mathrm{inst}}\) of the LCS prepotential \(F_{\mathrm{LCS}}\) in terms of the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the instanton part \(F_{\mathrm{inst}}\) of the LCS prepotential \(F_{\mathrm{LCS}}\).

Return type:

complex

See also: F_LCS()

See also: F_LCS_poly()

H(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, mode=None)#

Returns the Hessian of the scalar potential.

Note

We provide two computational modes which can be set via the optional argument mode. If we compute the Hessian at generic points in moduli space, then we should use mode=None which is also the default. At SUSY minimum where \(D_I W=0\) for all fields, we can use a simplified version of the Hessian which is faster to evaluate. To do so, we have to use mode="SUSY" instead.

Warning

When using mode="SUSY", one should be cautious regarding numerical errors and noise.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • mode (str) – The mode to compute the Hessian. For mode=None, returns the general Hessian from explicit second derivatives of the scalar potential. For "SUSY", computes Hessian at a SUSY locus assuming \(D_I W=0\) using standard SUGRA formulas for the Hessian. For "SUGRA", computes the Hessian from explicit SUGRA building blocks (\(D_I W\), \(K^{I\bar{J}}\), \(W\), \(\Gamma\), \(R\)) at generic points. See _hessian_SUGRA(). For "real", computes Hessian for the real and imaginary components of the complex scalar fields. Defaults to None.

Returns:

Array – Hessian matrix with entries \(\partial_{A}\partial_{\bar{B}} V\) and \(\partial_{A}\partial_{B} V\).

Return type:

Array

Aliases:

H(), hessian()

ISD_condition(moduli, moduli_c, tau, tau_c, fluxes, mode='complex')#

Checks whether the fluxes satisfy the ISD condition \(\star G_3=\text{i}G_3\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str, optional) – String specifying which version of the ISD equation to use. Options are :c:var`”complex”` or :c:var`”real”. Defaults to :c:var`mode = “complex”.

Returns:

Array – Difference between the left and right hand side of the ISD equation.

ISD_matrix(moduli, moduli_c)#

Computes the value of the ISD-matrix \(\mathcal{M}\).

Note

This function descends from jaxvacua.periods.periods.ISD_matrix() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Value of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

Aliases:

M()

See also: jaxvacua.periods.periods.ISD_matrix()

K(moduli, moduli_c, tau, tau_c)#

Returns the value of the Kähler potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Value of the Kähler potential.

Return type:

complex

Aliases:

K(), kahler_potential()

See also: A()

M(moduli, moduli_c)#

Computes the value of the ISD-matrix \(\mathcal{M}\).

Note

This function descends from jaxvacua.periods.periods.ISD_matrix() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Value of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

Aliases:

M()

See also: jaxvacua.periods.periods.ISD_matrix()

N(moduli, moduli_c, conj=False)#

Computes the value of the gauge kinetic matrix \(\mathcal{N}\).

Note

This function descends from jaxvacua.periods.periods.gauge_kinetic_matrix() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

Aliases:

N()

See also: jaxvacua.periods.periods.gauge_kinetic_matrix()

V(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, normalise=False)#

Returns the value of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to False.

Returns:

complex – Value of the \(F\)-term scalar potential induced by 3-form fluxes.

Return type:

complex

Aliases:

V(), scalar_potential()

See also: DW()

See also: inverse_kahler_metric()

See also: kahler_potential()

V_tilde(moduli, moduli_c)#

Returns the value of the mirror dual Calabi-Yau volume.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

Returns:

complex – Mirror dual Calabi-Yau volume.

Return type:

complex

Aliases:

A(), mirror_volume(), V_tilde()

See also: period_vector()

See also: kahler_potential()

V_x(x, fluxes, noscale=True)#

Returns the value of the real part of the F-term scalar potential \(V\) for input of the real scalar fields.

Note

This function is a wrapper which is used to find non-SUSY minima by looking at gradients of the scalar potential directly, see for example _newton_method_flux_vacua_real().

Parameters:
  • x (Array) – JAX array of shape (\(2(h^{1,2}+1)\),) containing the moduli and axio-dilaton as real and imaginary parts.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

Returns:

float – Value of \(V\).

Return type:

float

See also: scalar_potential()

W(moduli, tau, fluxes, conj=False, normalise=False)#

Calculates the value of the superpotential for given flux, moduli and axio-dilaton.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to False.

Returns:

complex – Value of the superpotential.

Return type:

complex

W0(moduli, tau, fluxes, conj=False, normalise=True)#

Calculates the value of the gauge invariant version of the flux superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to True.

Returns:

complex – Value of the gauge invariant superpotential.

Return type:

complex

See also: superpotential()

See also: kahler_potential()

apply_monodromy(moduli, fluxes, n)#

Apply a monodromy shift \(z^a \to z^a + n^a\) to the moduli and transform the fluxes accordingly via the monodromy matrix \(M(n)\).

The RR-fluxes \(f\) and NSNS-fluxes \(h\) both transform as \(f \to M(n) \cdot f\), \(h \to M(n) \cdot h\).

Parameters:
  • moduli (Array) – Complex structure moduli.

  • fluxes (Array) – Flux vector [f | h].

  • n (array-like) – Integer shift vector of shape (h12,).

Returns:

Tuple[Array, Array](moduli_shifted, fluxes_shifted)

Return type:

Tuple[Array, Array]

canonical_fterms(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the canonically normalised \(F\)-term conditions \(F_I,\, F^I\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:
  • Array – Canonically normalised \(F\)-term conditions \(F_I\).

  • Array – Canonically normalised \(F\)-term conditions \(F^I\).

Return type:

Tuple[Array, Array]

christoffel_symbols(moduli, moduli_c, tau, tau_c)#

Returns the Christoffel symbols \(\Gamma^E_{AC}\) of the Levi-Civita connection on the Kähler moduli space.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Christoffel symbols \(\Gamma^E_{AC}\) with shape (n, n, n) and index ordering [E, A, C].

Return type:

Array

See also: dddK(), inverse_kahler_metric(), riemann_tensor()

compute_tau_vev(moduli, flux)#

Computes the value of the axio-dilaton \(\tau\) from the fluxes and complex structure moduli as a solution to the corresponding \(F\)-term condition \(D_{\tau}W=0\).

Note

Notice that this equation only has a solution if the denominator is non-zero, i.e. if

\[h\cdot \Sigma \cdot \overline{\Pi}(z^i) \neq 0\, .\]

If this condition is not satisfied, then this function raises a ZeroDivisionError.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • flux (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

complex – Value of the axio-dilaton \(\tau\).

conifold_monodromy_matrix(conifold_curve=None, conifold_index=None)#

Picard-Lefschetz monodromy matrix around a conifold singularity where a 3-cycle \(\gamma = \sum_a c_a A^a\) shrinks to zero.

The monodromy acts on the period vector \(\Pi = (F_0, F_a, X^0, z^a)\) as

\[F_a \;\to\; F_a + c_a \sum_b c_b\, z^b\,,\]

with all other periods invariant. This follows from the Picard-Lefschetz formula \(\delta \to \delta + (\delta \cdot \gamma)\,\gamma\) applied to the symplectic basis of \(H_3(X,\mathbb{Z})\).

Parameters:
  • conifold_curve (array-like, optional) – Charge vector \(c = (c_1, \dots, c_{h^{2,1}})\) of the vanishing cycle. The vanishing period is \(w = c^T z\). If None, uses self.lcs_tree.conifold.conifold_curve when available.

  • conifold_index (int, optional) – Index (0-based among \(z^1 \dots z^h\)) of the conifold modulus, equivalent to conifold_curve = e_{index}.

Returns:

np.ndarray – Integer matrix of shape (2*h12+2, 2*h12+2).

Raises:

ValueError – If both conifold_curve and conifold_index are provided, or if neither is given and lcs_tree.conifold.conifold_curve is unavailable.

dDW(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{I}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex structure moduli \(z^i\) and the axio-dilaton \(\tau\).

Note

The output shape is such that output[J-1][I-1] corresponds to \(\partial_{I}D_{J}W\) with \(I,J=1,\ldots, h^{1,2}+1\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{I}D_{J}W\).

Return type:

Array

dDW_c(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{I}}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\overline{\tau}\).

Note

The output shape is such that output[J-1][I-1] corresponds to \(\partial_{\overline{I}}D_{J}W\) with \(I,J=1,\ldots, h^{1,2}+1\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{I}}D_{J}W\).

Return type:

Array

See also: dDW()

dDW_ctau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{J}W\) of the \(F\)-term \(D_{J}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{\tau}}D_{J}W\).

Return type:

Array

See also: dDW_tau()

dDW_cz(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{J}W\) of the \(F\)-term \(D_{J}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Note

The output shape is such that output[J-1][i-1] corresponds to \(\partial_{\bar{\imath}}D_{J}W\) with \(J=1,\ldots, h^{1,2}+1\) and \(i=1,\ldots, h^{1,2}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{z}^i}D_{J}W\).

Return type:

Array

See also: dDW_z()

dDW_real(moduli, tau, fluxes)#

Returns the Jacobian \(\partial_{\phi^\alpha}(D_J W)\) of the \(F\)-terms with respect to the real scalar fields \(\phi^\alpha = (a^i, v^i, c_0, s)\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Array of fluxes.

Returns:

Array – Shape (2n, 2n) real Jacobian \(\partial_{\phi^\alpha}(D_J W)\).

Return type:

Array

See also: dDW(), dDW_c()

dDW_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\tau}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\tau}D_{J}W\).

Return type:

Array

dDW_tau_ctau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{\tau}W\) of the \(F\)-term \(D_{\overline{\tau}}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{\tau}}D_{\tau}W\).

Return type:

Array

dDW_tau_cz(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{z}^i}D_{\tau}W\).

Return type:

Array

dDW_tau_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\tau}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\tau}D_{\tau}W\).

Return type:

complex

dDW_tau_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{z^i}D_{\tau}W\) of the \(F\)-term \(D_{\tau}W\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{z^i}D_{\tau}W\).

Return type:

Array

dDW_x(x, fluxes)#

Returns the first derivatives of the F-term conditions by differentiating with respect to the real fields.

Parameters:
  • x (Array) – Array of shape (\(2(h^{1,2}+1)\), ) containing real and imaginary parts of the complex structure moduli \(z^i\) and axio-dilaton \(\tau\).

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

Array – First derivatives of the real \(F\)-term conditions with respect to the real and imaginary parts of the complex structure moduli \(z^i\) and axio-dilaton \(\tau\).

Return type:

Array

See also: DW_x()

dDW_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{z^i}D_{J}W\) of the \(F\)-terms \(D_{J}W\) with respect to the complex structure moduli \(z^i\).

Note

The output shape is such that output[J-1][i-1] corresponds to \(\partial_{i}D_{J}W\) with \(J=1,\ldots, h^{1,2}+1\) and \(i=1,\ldots, h^{1,2}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{I}D_{z^j}W\).

Return type:

Array

dDW_z_ctau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{\tau}}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{\tau}}D_{z^j}W\).

Return type:

Array

dDW_z_cz(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\overline{z}^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\overline{z}^i}D_{z^j}W\).

Return type:

Array

dDW_z_tau(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{\tau}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{\tau}D_{z^j}W\).

Return type:

Array

dDW_z_z(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the holomorphic derivative \(\partial_{z^i}D_{z^j}W\) of the \(F\)-term \(D_{z^j}W\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(\partial_{z^i}D_{z^j}W\).

Return type:

Array

dF(moduli, conj=False)#

Computes the holomorphic derivative \(\partial_{z^i} F\) of the prepotential \(F\) for given values of the moduli.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the holomorphic derivatives \(\partial_{z^i}F\) of the prepotential \(F(z^i)\).

Return type:

Array

See also: prepot()

dGamma(moduli, moduli_c, tau, tau_c)#

Returns the holomorphic derivative of the Christoffel symbols \(\partial_B \Gamma^E_{AC}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(\partial_B \Gamma^E_{AC}\) with shape (n, n, n, n) and index ordering [E, A, C, B].

Return type:

Array

See also: christoffel_symbols()

dIKM_c(moduli, moduli_c, tau, tau_c)#

Returns the anti-holomorphic derivative of the inverse Kähler metric \(\partial_{\bar{B}} K^{I\bar{J}}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(\partial_{\bar{B}} K^{I\bar{J}}\) with shape (n, n, n) and index ordering [I, J̄, B̄].

Return type:

Array

See also: dddK_c(), inverse_kahler_metric()

dK(moduli, moduli_c, tau, tau_c)#

Returns the holomorphic derivative \(\partial_I K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Values of \(\partial_I K\).

Return type:

Array

See also: kahler_potential()

dK_c(moduli, moduli_c, tau, tau_c)#

Returns the holomorphic derivative \(\partial_{\overline{I}} K\) of the Kähler potential \(K\) with respect to the complex conjugate complex structure moduli \(\overline{z}^{i}\) and the axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Values of \(\partial_{\overline{I}} K\).

Return type:

Array

See also: kahler_potential()

dK_ctau(moduli, moduli_c, tau, tau_c)#

Returns the anti-holomorphic derivative \(\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Anti-holomorphic derivative \(\partial_{\overline{\tau}}K\) of the Kähler potential \(K\).

Return type:

complex

See also: kahler_potential()

dK_cz(moduli, moduli_c, tau, tau_c)#

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}K\) of the Kähler potential \(K\) with respect to the conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Anti-holomorphic derivative \(\partial_{\overline{z}^i}K\) of the Kähler potential \(K\).

Return type:

Array

See also: kahler_potential()

dK_tau(moduli, moduli_c, tau, tau_c)#

Returns the holomorphic derivative \(\partial_{\tau}K\) of the Kähler potential \(K\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Holomorphic derivative \(\partial_{\tau}K\) of the Kähler potential \(K\).

Return type:

complex

See also: kahler_potential()

dK_z(moduli, moduli_c, tau, tau_c)#

Returns the holomorphic derivative \(\partial_{z^i}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Holomorphic derivative \(\partial_{z^i}K\) of the Kähler potential \(K\).

Return type:

Array

See also: kahler_potential()

dM(moduli, moduli_c)#

Returns the holomorphic derivative \(\partial_{z^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Holomorphic derivative \(\partial_{z^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

dM_X(moduli, moduli_c)#

Returns the holomorphic derivative \(\partial_{X^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the periods \(X^I\).

Note

This function descends from jaxvacua.periods.periods.dM() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Holomorphic derivative \(\partial_{X^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

dM_c(moduli, moduli_c)#

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

dM_cX(moduli, moduli_c)#

Returns the anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\) with respect to the complex conjugate periods \(\overline{X}^I\).

Note

This function descends from jaxvacua.periods.periods.dM_c() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

Returns:

Array – Anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{M}\) of the ISD-matrix \(\mathcal{M}\).

Return type:

Array

dN(moduli, moduli_c, conj=False)#

Returns the holomorphic derivative \(\partial_{z^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Holomorphic derivative \(\partial_{z^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

dN_X(moduli, moduli_c, conj=False)#

Returns the holomorphic derivative \(\partial_{X^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the periods \(X^I\).

Note

This function descends from jaxvacua.periods.periods.dN() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Holomorphic derivative \(\partial_{X^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

dN_c(moduli, moduli_c, conj=False)#

Returns the anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Anti-holomorphic derivative \(\partial_{\overline{z}^i}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

dN_cX(moduli, moduli_c, conj=False)#

Returns the anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\) with respect to the complex conjugate periods \(\overline{X}^I\).

Note

This function descends from jaxvacua.periods.periods.dN_c() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Anti-holomorphic derivative \(\partial_{\overline{X}^I}\mathcal{N}\) of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

dV(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False, mode='complex')#

Returns the first holomorphic derivative \(\partial_{I}V\) of the \(F\)-term scalar potential \(V\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False. Becomes void if mode="real".

  • mode (str, optional) – String specifying whether to return complex or real derivatives. Defaults to "complex".

Returns:

Array – Value of \(\partial_{I}V\).

Return type:

Array

dV_tau(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the first holomorphic derivative \(\partial_{\tau}V\) of the \(F\)-term scalar potential \(V\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar\tau}V\). Defaults to False.

Returns:

complex – Value of \(\partial_{\tau}V\) (scalar).

Return type:

Array

dV_x(x, fluxes, noscale=True)#

Returns the gradients of the F-term scalar potential \(V\) with respect to the real scalar fields for real inputs.

Parameters:
  • x (Array) – JAX array of shape (\(2(h^{1,2}+1)\),) containing the moduli and axio-dilaton as real and imaginary parts.

  • fluxes (Array) – Flux vector of shape (\(4(h^{1,2}+1)\),)

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

Returns:

Array – Value of \((\partial_{a^1}V, \partial_{v^1}V,\ldots ,\partial_{a^{h^{1,2}}}V, \partial_{v^{h^{1,2}}}V,\partial_{c_0}V, \partial_{s}V)\).

Return type:

Array

See also: V_x()

dV_z(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the first holomorphic derivative \(\partial_{z^i}V\) of the \(F\)-term scalar potential \(V\) with respect to the complex structure moduli \(z^i\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar{z}^i}V\). Defaults to False.

Returns:

Array – Value of \(\partial_{z^i}V\), shape (h12,).

Return type:

Array

dW(moduli, tau, fluxes, conj=False)#

Calculates the holomorphic derivative \(W_I\) of the superpotential \(W\) with respect to all moduli \((z^i, \tau)\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the holomorphic derivative of the superpotential with respect to the complex structure moduli \(z^{i}\) and the axio-dilaton \(\tau\).

Return type:

Array

dW_tau(moduli, tau, fluxes, conj=False)#

Calculates the holomorphic derivative \(W_\tau=\partial_{\tau}W\) of the superpotential \(W\) with respect to the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the holomorphic gradient of the superpotential with respect to the axio-dilaton \(\tau\).

Return type:

complex

dW_z(moduli, tau, fluxes, conj=False)#

Calculates the holomorphic derivative \(W_i=\partial_{z^i}W\) of the superpotential \(W\) with respect to the complex structure moduli \(z^{i}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the holomorphic derivative of the superpotential with respect to the complex structure moduli \(z^{i}\).

Return type:

Array

ddDW(moduli, moduli_c, tau, tau_c, fluxes, conj=False)#

Returns the second derivative of the \(F\)-terms \(\partial_A(D_I W)\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If False, returns \(\partial_B\partial_A(D_I W)\) (holomorphic second derivative). If True, returns \(\partial_{\bar{B}}\partial_A(D_I W)\) (mixed second derivative). Defaults to False.

Returns:

Array – Shape (n, n, n) with index ordering [I, A, B] (or [I, A, B̄] when conj=True), where n = h^{1,2}+1.

Return type:

Array

See also: dDW(), _hessian_SUGRA()

ddDW_x(x, fluxes)#

Returns the second derivatives of the F-term conditions by differentiating with respect to the real fields.

Parameters:
  • x (Array) – Array of shape (\(2(h^{1,2}+1)\), ) containing real and imaginary parts of the complex structure moduli \(z^i\) and axio-dilaton \(\tau\).

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

Array – Second derivatives of the real \(F\)-term conditions with respect to the real and imaginary parts of the complex structure moduli \(z^i\) and axio-dilaton \(\tau\).

Return type:

Array

See also: DW_x()

ddIKM(moduli, moduli_c, tau, tau_c)#

Returns the mixed second derivative of the inverse Kähler metric \(\partial_A\partial_{\bar{B}} K^{I\bar{J}}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(\partial_A\partial_{\bar{B}} K^{I\bar{J}}\) with shape (n, n, n, n) and index ordering [I, J̄, B̄, A].

Return type:

Array

See also: riemann_tensor(), christoffel_symbols(), dIKM_c()

ddK_ctau_ctau(moduli, moduli_c, tau, tau_c)#

Returns the second holomorphic derivatives of the Kähler potential with respect to the axio-dilaton \(\tau\).

Note

These holomorphic derivatives are used e.g. in DDW() to compute the second Kähler covariant derivative of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Second holomorphic derivative of the Kähler potential with respect to \(\tau\).

Return type:

complex

ddK_cz_ctau(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(K_{\bar{\imath}\overline{\tau}}=\partial_{\overline{z}^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the complex conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Second derivatives \(K_{\bar{\imath}\overline{\tau}}=\partial_{\overline{z}^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\).

Return type:

Array

ddK_cz_cz(moduli, moduli_c, tau, tau_c)#

Returns the second anti-holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\).

Note

These holomorphic derivatives are used e.g. in DDW() to compute the second Kähler covariant derivative of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(h^{1,2}\times h^{1,2}\) matrix of the second holomorphic derivatives of the Kähler potential with respect to \(z^i\).

Return type:

Array

ddK_cz_tau(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(K_{\tau\overline{j}}=\partial_{\tau}\partial_{\overline{z}^{j}}K\) of the Kähler potential \(K\) with respect to the conjugate complex structure moduli \(\overline{z}^i\) and the axio-dilaton \(\tau\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Second derivatives \(K_{\tau\overline{j}}=\partial_{\tau}\partial_{\overline{z}^{j}}K\) of the Kähler potential \(K\).

Return type:

Array

ddK_cz_z(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(K_{\bar{\jmath}i}=\partial_{\overline{z}^j}\partial_{z^i}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and their conjugate.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Second derivatives \(K_{\bar{\jmath}i}=\partial_{\overline{z}^j}\partial_{z^i}K\) of the Kähler potential \(K\).

Return type:

Array

See also: dK_z()

ddK_tau_ctau(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(\partial_{\tau}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the axio-dilaton \(\tau\) and its conjugate.

Note

The returned scalar is given by

\[K_{\tau\overline{\tau}}(z^i,\overline{z}^i,\tau,\overline{\tau})=\partial_{\tau}\partial_{\overline{\tau}}K\, .\]

For the standard Kähler potential \(K \supset - \log (-\text{i}(\tau-\overline{\tau}))\), we find

\[K_{\tau\overline{\tau}} = -\frac{1}{(\tau-\overline{\tau})^2}= \frac{1}{4\mathrm{Im}(\tau)^2}\, .\]
Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Second derivatives \(\partial_{\tau}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\).

Return type:

complex

ddK_tau_tau(moduli, moduli_c, tau, tau_c)#

Returns the second holomorphic derivatives of the Kähler potential with respect to the axio-dilaton \(\tau\).

Note

These holomorphic derivatives are used e.g. in DDW() to compute the second Kähler covariant derivative of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Second holomorphic derivative of the Kähler potential with respect to \(\tau\).

Return type:

complex

ddK_z_ctau(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(K_{i\overline{\tau}}=\partial_{z^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and the conjugate axio-dilaton \(\overline{\tau}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Second derivatives \(K_{i\overline{\tau}}=\partial_{z^i}\partial_{\overline{\tau}}K\) of the Kähler potential \(K\).

Return type:

Array

ddK_z_cz(moduli, moduli_c, tau, tau_c)#

Returns the second derivatives \(K_{i\bar{\jmath}}=\partial_{z^i}\partial_{\overline{z}^j}K\) of the Kähler potential \(K\) with respect to the complex structure moduli \(z^i\) and their conjugate.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Second derivatives \(K_{i\bar{\jmath}}=\partial_{z^i}\partial_{\overline{z}^j}K\) of the Kähler potential \(K\).

Return type:

Array

See also: dK_z()

ddK_z_tau(moduli, moduli_c, tau, tau_c)#

Returns the second holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\) and the axio-dilaton \(\tau\).

Note

These holomorphic derivatives are used e.g. in DDW() to compute the second Kähler covariant derivative of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(h^{1,2}\times 1\) matrix of the second holomorphic derivatives of the Kähler potential with respect to \(z^i\) and \(\tau\).

Return type:

Array

ddK_z_z(moduli, moduli_c, tau, tau_c)#

Returns the second holomorphic derivatives of the Kähler potential with respect to the complex structure moduli \(z^i\).

Note

These holomorphic derivatives are used e.g. in DDW() to compute the second Kähler covariant derivative of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array\(h^{1,2}\times h^{1,2}\) matrix of the second holomorphic derivatives of the Kähler potential with respect to \(z^i\).

Return type:

Array

ddV(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False, mode='complex')#

Returns the second derivatives \((\partial_I\partial_J V,\,\partial_I\partial_{\bar J}V)\) of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False. Becomes void if mode="real".

  • mode (str, optional) – String specifying whether to return complex or real derivatives. Defaults to "complex".

Returns:

Array – Value of \((\partial_{I}\partial_{J}V,\partial_{I}\partial_{\overline{J}}V)\).

Return type:

Array

ddV_ctau(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the mixed second derivatives \(\partial_{I}\partial_{\bar\tau}V\) of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar I}\partial_\tau V\). Defaults to False.

Returns:

Array – Value of \(\partial_{I}\partial_{\overline{\tau}}V\).

Return type:

Array

ddV_cz(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the mixed second derivatives \(\partial_{I}\partial_{\bar{z}^j}V\) of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar I}\partial_{z^j}V\). Defaults to False.

Returns:

Array – Shape (n, h12) with \(\partial_{I}\partial_{\bar{z}^j}V\).

Return type:

Array

ddV_tau(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the second derivatives \(\partial_{I}\partial_{\tau}V\) of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar I}\partial_{\bar\tau}V\). Defaults to False.

Returns:

Array – Shape (n,) with \(\partial_{I}\partial_{\tau}V\).

Return type:

Array

ddV_x(x, fluxes, noscale=True)#

Returns the second derivatives of the F-term scalar potential \(V\) with respect to the real scalar fields for real inputs.

Parameters:
  • x (Array) – JAX array of shape (\(2(h^{1,2}+1)\),) containing the moduli and axio-dilaton as real and imaginary parts.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

Returns:

Array – Value of \(\partial_{\phi^\alpha}\partial_{\phi^\beta}V\).

Return type:

Array

See also: V_x()

ddV_z(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, conj=False)#

Returns the holomorphic second derivatives \(\partial_{I}\partial_{z^j}V\) of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • conj (bool) – If True, computes \(\partial_{\bar I}\partial_{\bar z^j}V\). Defaults to False.

Returns:

Array – Shape (n, h12) with \(\partial_{I}\partial_{z^j}V\).

Return type:

Array

ddW(moduli, tau, fluxes, conj=False)#

Calculates the full second holomorphic derivatives \(W_{IJ}=\partial_I\partial_J W\) of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(W_{IJ}=\partial_{I}\partial_{J}W\).

Return type:

Array

ddW_tau_tau(moduli, tau, fluxes, conj=False)#

Calculates \(W_{\tau\tau}=\partial_\tau^2 W\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(W_{\tau \tau}=\partial_{\tau}\partial_{\tau}W\).

Return type:

Array

ddW_z_tau(moduli, tau, fluxes, conj=False)#

Calculates the mixed second derivative \(W_{i\tau}=\partial_{z^i}\partial_{\tau}W\) of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of \(W_{i \tau}=\partial_{z^i}\partial_{\tau}W\).

Return type:

Array

ddW_z_z(moduli, tau, fluxes, conj=False)#

Calculates the second holomorphic derivatives \(W_{ij}=\partial_{z^i}\partial_{z^j}W\) of the superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of \(W_{i j}=\partial_{z^i}\partial_{z^j}W\).

Return type:

Array

dddK(moduli, moduli_c, tau, tau_c)#

Returns the third holomorphic-mixed Kähler derivative \(\partial_{A} K_{C\bar{F}}\) with respect to the combined field-space index \(A = (z^i, \tau)\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Third Kähler derivative \(\partial_A K_{C\bar{F}}\) with shape (n, n, n) and index ordering [C, F̄, A] where n = h^{1,2} + 1.

Return type:

Array

See also: kahler_metric(), christoffel_symbols()

dddK_c(moduli, moduli_c, tau, tau_c)#

Returns the third anti-holomorphic-mixed Kähler derivative \(\partial_{\bar{B}} K_{C\bar{F}}\) with respect to the combined anti-holomorphic field-space index \(\bar{B} = (\bar{z}^i, \bar{\tau})\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Third Kähler derivative \(\partial_{\bar{B}} K_{C\bar{F}}\) with shape (n, n, n) and index ordering [C, F̄, B̄] where n = h^{1,2} + 1.

Return type:

Array

See also: kahler_metric(), riemann_tensor()

flux_to_pfv(flux)#

Returns M- and K-vector specifying PFV from full flux vector.

Parameters:

flux (Array) – Flux-vector.

Returns:
  • M (Array) – M-vector.

  • K (Array) – K-vector.

Return type:

Tuple[Array, Array]

gauge_kinetic_matrix(moduli, moduli_c, conj=False)#

Computes the value of the gauge kinetic matrix \(\mathcal{N}\).

Note

This function descends from jaxvacua.periods.periods.gauge_kinetic_matrix() upon gauge fixing, i.e., making a choice of homogeneous complex coordinates on the complex structure moduli space of \(X\).

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • moduli_c (Array) – Complex conjugate values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the gauge kinetic matrix \(\mathcal{N}\).

Return type:

Array

Aliases:

N()

See also: jaxvacua.periods.periods.gauge_kinetic_matrix()

hessian(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, mode=None)#

Returns the Hessian of the scalar potential.

Note

We provide two computational modes which can be set via the optional argument mode. If we compute the Hessian at generic points in moduli space, then we should use mode=None which is also the default. At SUSY minimum where \(D_I W=0\) for all fields, we can use a simplified version of the Hessian which is faster to evaluate. To do so, we have to use mode="SUSY" instead.

Warning

When using mode="SUSY", one should be cautious regarding numerical errors and noise.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • mode (str) – The mode to compute the Hessian. For mode=None, returns the general Hessian from explicit second derivatives of the scalar potential. For "SUSY", computes Hessian at a SUSY locus assuming \(D_I W=0\) using standard SUGRA formulas for the Hessian. For "SUGRA", computes the Hessian from explicit SUGRA building blocks (\(D_I W\), \(K^{I\bar{J}}\), \(W\), \(\Gamma\), \(R\)) at generic points. See _hessian_SUGRA(). For "real", computes Hessian for the real and imaginary components of the complex scalar fields. Defaults to None.

Returns:

Array – Hessian matrix with entries \(\partial_{A}\partial_{\bar{B}} V\) and \(\partial_{A}\partial_{B} V\).

Return type:

Array

Aliases:

H(), hessian()

inverse_kahler_metric(moduli, moduli_c, tau, tau_c, mode='block diagonal')#

Returns the inverse Kähler metric \(K^{\overline{I}J}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

  • mode (str) – Description

Returns:

Array – Inverse Kähler metric \(K^{\overline{I}J}\).

Return type:

Array

See also: kahler_metric()

inverse_kahler_metric_grad(moduli, moduli_c, tau, tau_c, mode='block diagonal')#

Returns the gradient of the inverse Kähler metric.

Note

This function is currently not being used, but might turn out to be useful when taking derivatives of the F-terms \(F^i = K^{i\overline{j}}D_{\overline{j}}\overline{W}\). The output corresponds to the tuple

\[(\partial_{z^i}K^{\bar{J}L},\partial_{\overline{z}^i}K^{\bar{J}L},\partial_{\tau}K^{\bar{J}L},\partial_{\overline{\tau}}K^{\bar{J}L})\, .\]
Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

  • mode (str) – Description

Returns:

Array – Gradient of the inverse Kähler metric \(\partial_{I}K^{\overline{J}L},\partial_{\overline{I}}K^{\overline{J}L}\).

Return type:

Tuple[Array, Array, complex, complex]

See also: kahler_metric()

See also: inverse_kahler_metric()

kahler_metric(moduli, moduli_c, tau, tau_c, mode='block diagonal')#

Computes the Kähler metric \(K_{\overline{I}J}\).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

  • mode (str) – Mode to compute the Kahler metric. Defaults to "block diagonal" meaning that there are no mixing terms between complex structure moduli and the axio-dilaton in the Kähler potential. If set to None instead, the full set of 2nd derivatives of the Kähler potential is computed.

Returns:

Array – Kähler metric \(K_{\overline{I}J}\).

Raises:

ValueError – Wrong mode for computation. Only mode=None and mode="block diagonal" are supported.

Return type:

Array

kahler_potential(moduli, moduli_c, tau, tau_c)#

Returns the value of the Kähler potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

complex – Value of the Kähler potential.

Return type:

complex

Aliases:

K(), kahler_potential()

See also: A()

property lcs_tree#

Description: The lcs_tree object containing the topological data (intersection numbers, second Chern class, GV invariants, etc.) for the underlying Calabi-Yau geometry.

Returns:

lcs_tree – The topological data tree.

map_to_fd(moduli, tau, fluxes, axion_fd=None, boundary_tol=1e-08)#

Maps a vacuum solution (moduli, tau, fluxes) to the fundamental domain by:

  1. Mapping the axio-dilaton \(\tau\) to the \(\text{SL}(2,\mathbb{Z})\) fundamental domain via map_to_fd_tau().

  2. Shifting the axion \(\text{Re}(z^a)\) into the range (lo, hi] via integer monodromy transformations \(z^a \to z^a + n^a\).

  3. Snapping values within boundary_tol of the excluded boundary lo to the included boundary hi.

For conifold models (coniLCS_series or coniLCS_bulk), the conifold modulus is left untouched because the logarithmic monodromy breaks integer periodicity. With conifold_basis=True it is index 0; with conifold_basis=False it is the charge combination q·z, so the axion shifts are computed in the conifold-aligned frame z_al = Λ⁻ᵀ z (leaving z_al[0] fixed) and the integer shift is rotated back as n = Λᵀ n_al ker(q).

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Flux vector.

  • axion_fd (Optional[Tuple[float, float]]) – Range (lo, hi) for \(\text{Re}(z^a)\). Convention: \(\text{Re}(z^a) \in (lo, hi]\). If None, uses self.axion_fd (default (-0.5, 0.5)).

  • boundary_tol (float) – Points within this tolerance of the excluded boundary lo are snapped to hi. Default 1e-8.

Returns:

Tuple[Array, complex, Array](moduli_fd, tau_fd, fluxes_fd) mapped to the fundamental domain.

Return type:

Tuple[Array, complex, Array]

See also: map_to_fd_tau(), monodromy_matrix()

map_to_fd_tau(tau, fluxes, return_SL2Z_matrix=False, cutoff=1000000000000000.0, verbose=False)#

Map of the axio-dilaton value and the flux vector to the fundamental domain (FD) of \(\text{SL}(2,\mathbb{Z})\).

Note

Per default, this function only returns the value of the axio-dilaton and the fluxes. It is however also possible to return the \(\text{SL}(2,\mathbb{Z})\) transformation taking the input value \(\tau\) of the axio-dilaton to the fundamental domain.

Parameters:
  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – The flux vector used in the mapping.

  • return_SL2Z_matrix (bool) – If True, also returns the \(\text{SL}(2,\mathbb{Z})\) matrix. Defaults to False.

  • cutoff (float) – Safety cutoff for the iteration count. Defaults to 1e15.

  • verbose (bool) – If True, enables verbose mode. Defaults to False.

Returns:

Tuple(tau_fd, fluxes_fd) or (tau_fd, fluxes_fd, SL2Z_matrix) if return_SL2Z_matrix=True. Returns (None, None) if the input is invalid.

mass_matrix(moduli, moduli_c, tau, tau_c, fluxes, mode=None, noscale=True, use_real_derivatives=False)#

Returns the mass matrix after canonical normalisation of the kinetic terms.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – : Value of axio-dilaton.

  • tau_c (complex) – Value of complex conjugate axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str) – The mode to compute the mass matrix. For mode=None, uses the general Hessian from explicit second derivatives of the scalar potential. For mode="SUSY", computes Hessian at a SUSY locus assuming \(D_I W=0\) using standard SUGRA formulas for the Hessian. For "real", calculates Hessian for the real and imaginary components of the complex scalar fields. Defaults to None.

Returns:

Array – Mass matrix of the canonically normalised fields.

Return type:

Array

mirror_volume(moduli, moduli_c)#

Returns the value of the mirror dual Calabi-Yau volume.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

Returns:

complex – Mirror dual Calabi-Yau volume.

Return type:

complex

Aliases:

A(), mirror_volume(), V_tilde()

See also: period_vector()

See also: kahler_potential()

moduli_to_periods(moduli, conj=False)#

Transforms complex structure moduli to periods for the global choice of gauge.

Parameters:
  • moduli (Array) – Values of the complex structure moduli.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the periods.

Return type:

Array

monodromy_matrix(n)#

Computes the monodromy matrix \(T(\vec{n})\) for a general integer shift \(z^a \to z^a + n^a\).

This is the product \(T(\vec{n}) = \prod_b T_b^{n_b}\). The LCS monodromy matrices commute (maximally unipotent monodromy), so the order does not matter.

Parameters:

n (array-like) – Integer shift vector of shape (h12,).

Returns:

np.ndarray – Integer monodromy matrix of shape (2*h12+2, 2*h12+2).

Return type:

ndarray

See also: monodromy_matrix_single()

monodromy_matrix_single(b)#

Computes the monodromy matrix \(T_b\) for the shift \(z^b \to z^b + 1\).

The period vector transforms as \(\Pi \to T_b \cdot \Pi\).

At LCS, uses the analytical formula from the intersection numbers, a-matrix, and b-vector. For other limits, falls back to a numerical computation via the period vector.

Note

The monodromy matrices receive no instanton corrections: the instanton sum \(F_{\mathrm{inst}}\) involves \(e^{2\pi i q_a z^a}\) which is invariant under \(z^a \to z^a + 1\).

Parameters:

b (int) – Index of the modulus to shift (0-based: b = 0, ..., h12-1).

Returns:

np.ndarray – Integer monodromy matrix of shape (2*h12+2, 2*h12+2).

Return type:

ndarray

See also: monodromy_matrix(), verify_monodromy()

period_vector(moduli, conj=False)#

Returns the period vector \(\Pi\) at a given point in moduli space.

Note

To compute the period vector in terms of the periods directly, please use jaxvacua.periods.periods.period_vector_per().

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

Array – Value of the period vector \(\Pi\).

Return type:

Array

See also: prepot()

See also: dF()

See also: jaxvacua.periods.periods.period_vector_per()

periods_to_moduli(XPer)#

Transforms periods to complex structure moduli.

Parameters:

XPer (Array) – Values of the periods.

Returns:

Array – Value of the complex structure moduli.

Return type:

Array

pfv_to_flux(M, K)#

Returns full flux vector from M- and K-vector specifying PFV.

Parameters:
  • M (Array) – M-vector.

  • K (Array) – K-vector.

Returns:

Array – Flux vector.

Return type:

Array

pfv_to_moduli(M, K, tau)#

Returns values of the complex structure moduli at the level of the PFV.

Parameters:
  • M (Array) – M-vector.

  • K (Array) – K-vector.

  • tau (complex) – Axio-dilaton value.

Returns:

Array – Values of complex structure moduli.

Return type:

Array

prepot(moduli, conj=False)#

Computes the pre-potential for given values of the moduli.

Note

We return the value of the pre-potential in terms projective coordinates

\[z^{i}=\frac{X^i}{X^0}\, .\]

Per default, we work in the gauge choice \(X^0=1\), but other gauge choices can be provided as inputs.

Note

We provide the option to compute the pre-potential and some additional functions in terms of the periods directly, see in particular jaxvacua.periods.periods.F_LCS_per(), jaxvacua.periods.periods.prepot_per() and jaxvacua.periods.periods.period_vector_per().

Warning

The moduli space limit around which the pre-potential is computed is set by the global parameter self.periods.limit. Currently, only self.periods.limit="LCS" is supported.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

Returns:

complex – Value of the prepotential \(F(z^i)\).

Return type:

complex

Errors:

ValueError: If the moduli space limit is not identified.

Aliases:

F()

See also: prepot_per()

projection_fluxes(moduli, tau, fluxes, mode=None)#

Computes the Hodge decomposition of the 3-form flux \(G_3 = F_3 - \tau H_3\) into its \((p,q)\)-components on the Calabi-Yau threefold.

Parameters:
  • moduli (Array) – Values for the complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • mode (str) – If mode="SUSY", returns only \((2,1)\) and \((0,3)\) components.

Returns:
  • Array\((3,0)\)-component of the 3-form flux.

  • Array\((2,1)\)-component of the 3-form flux.

  • Array\((1,2)\)-component of the 3-form flux.

  • Array\((0,3)\)-component of the 3-form flux.

riemann_tensor(moduli, moduli_c, tau, tau_c)#

Returns the Riemann curvature tensor \(R_{i\bar{\jmath}k\bar{l}}\) of the Kähler moduli space.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Value of the axio-dilaton.

  • tau_c (complex) – Complex conjugate value of the axio-dilaton.

Returns:

Array – Riemann tensor \(R_{i\bar{\jmath}k\bar{l}}\) with shape (n, n, n, n) and index ordering [i, j̄, k, l̄].

Return type:

Array

See also: christoffel_symbols(), dddK(), dddK_c()

scalar_potential(moduli, moduli_c, tau, tau_c, fluxes, noscale=True, normalise=False)#

Returns the value of the \(F\)-term scalar potential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • moduli_c (Array) – Complex conjugate values for complex structure moduli.

  • tau (complex) – Axio-dilaton value.

  • tau_c (complex) – Complex conjugate value for axio-dilaton.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • noscale (bool) – If True, uses the no-scale flux scalar potential. Defaults to True.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to False.

Returns:

complex – Value of the \(F\)-term scalar potential induced by 3-form fluxes.

Return type:

complex

Aliases:

V(), scalar_potential()

See also: DW()

See also: inverse_kahler_metric()

See also: kahler_potential()

superpotential(moduli, tau, fluxes, conj=False, normalise=False)#

Calculates the value of the superpotential for given flux, moduli and axio-dilaton.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to False.

Returns:

complex – Value of the superpotential.

Return type:

complex

superpotential_gauge_invariant(moduli, tau, fluxes, conj=False, normalise=True)#

Calculates the value of the gauge invariant version of the flux superpotential.

Parameters:
  • moduli (Array) – Complex structure moduli values.

  • tau (complex) – Axio-dilaton value.

  • fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

  • conj (bool) – If True, computes the complex conjugate. Defaults to False.

  • normalise (bool) – If True, rescales superpotential by \(\sqrt{2/\pi}\). Defaults to True.

Returns:

complex – Value of the gauge invariant superpotential.

Return type:

complex

See also: superpotential()

See also: kahler_potential()

tadpole(fluxes)#

Calculates the D3-charge for given fluxes.

Parameters:

fluxes (Array) – Array of fluxes. The ordering starts with RR-fluxes, then the NSNS-fluxes.

Returns:

int – D3-charge induced by 3-form fluxes.

Return type:

float

verify_monodromy(b, z=None, tol=1e-08)#

Numerically verify the monodromy matrix by checking \(T_b \cdot \Pi(z) = \Pi(z + e_b)\).

Parameters:
  • b (int) – Direction index for the shift.

  • z (Array, optional) – Test point. If None, a random point is generated.

  • tol (float) – Tolerance for the check.

Returns:

dict – Dictionary with keys 'T_b', 'max_error', 'passed'.

Return type:

dict