jaxvacua.lcs.lcs_tree#

class lcs_tree(h11=1, h12=2, Q=None, intnums=None, intnums_coo=None, c2=None, a_matrix=None, b_vector=None, chi=None, basis_change=None, gvs=None, gws=None, grading_vector=None, maximum_degree=None, model_type='KS', model_ID=1, limit='LCS', name=None, conifold=None, conifolds=None, active_conifold_idx=None, conifold_curve=None, ncf=2, conifold_basis=True, conifold_limits=None, n_conifolds=None, hyperplanes=None, tip_skc=None, kahler_generators=None, kahler_rays=None, mori_rays=None, polytope_points=None, heights=None, Wnp=0j, extra_data=None, verbosity=0, **kwargs)#

Bases: object

Pytree structure to hold on to information about a Calabi-Yau model, including intersection numbers, Gopakumar-Vafa/Gromov-Witten invariants, cone data, and conifold curve information.

__init__(h11=1, h12=2, Q=None, intnums=None, intnums_coo=None, c2=None, a_matrix=None, b_vector=None, chi=None, basis_change=None, gvs=None, gws=None, grading_vector=None, maximum_degree=None, model_type='KS', model_ID=1, limit='LCS', name=None, conifold=None, conifolds=None, active_conifold_idx=None, conifold_curve=None, ncf=2, conifold_basis=True, conifold_limits=None, n_conifolds=None, hyperplanes=None, tip_skc=None, kahler_generators=None, kahler_rays=None, mori_rays=None, polytope_points=None, heights=None, Wnp=0j, extra_data=None, verbosity=0, **kwargs)#

Constructor for the lcs_tree class. Initializes the Calabi-Yau model data including intersection numbers, GV/GW invariants, Kähler cone data, and conifold curve information.

Parameters:
  • h11 (int) – Hodge number h^{1,1} of the mirror CY. Default is 1.

  • h12 (int) – Hodge number h^{1,2} of the mirror CY. Default is 2.

  • cy (cytools.CalabiYau | None, optional) – CYTools Calabi-Yau object. Default is None.

  • intnums (Array | None) – Triple intersection numbers.

  • intnums_coo (Array | None) – Intersection numbers in COO format.

  • c2 (Array | None) – Second Chern class.

  • a_matrix (Array | None) – a-matrix for the prepotential.

  • b_vector (Array | None) – b-vector for the prepotential. Defaults to c2/24.

  • gvs (Union[Dict, Array, None]) – Gopakumar-Vafa invariants.

  • gws (Union[Dict, Array, None]) – Gromov-Witten invariants.

  • grading_vector (Array | None) – Grading vector for curve classes.

  • chi (int | None) – Euler characteristic of the mirror CY.

  • model_type (str) – Type of model, either “KS” or “CICY”. Default is “KS”.

  • model_ID (int) – Model identifier. Default is 1.

  • limit (str) – Moduli space limit, one of “LCS”, “coniLCS”, “coniLCS_series”, “coniLCS_bulk”. Default is “LCS”.

  • basis_change (Array | None) – Basis transformation matrix.

  • conifold_curve (Array | None) – Conifold curve charges.

  • ncf (int | None) – Number of conifolds.

  • hyperplanes (Array | None) – Hyperplanes defining the Kähler cone.

  • Q (int | None) – Charge of the orientifold.

  • tip_skc (Array | None) – Tip of the stretched Kähler cone.

  • kahler_generators (Array | None) – Generators of the Kähler cone.

  • kahler_rays (Array | None) – Rays of the Kähler cone.

  • mori_rays (Array | None) – Rays of the Mori cone.

  • polytope_points (Array | None) – Points of the polytope.

  • heights (Array | None) – Heights of the triangulation.

  • extra_data (Optional[Dict]) – Any additional data.

  • name (str | None) – Name of the model.

  • conifold_basis (bool | None) – Whether to use the conifold basis. Default is True.

  • verbosity (int) – Verbosity level. Default is 0.

Raises:

ValueError – If neither intnums nor c2 is provided, or if required data for the specified limit is missing.

Methods

__init__([h11, h12, Q, intnums, ...])

Constructor for the lcs_tree class. Initializes the Calabi-Yau model data including intersection numbers, GV/GW invariants, Kähler cone data, and conifold curve information.

filter_dict(d)

from_cytools(cy[, basis_change, ...])

Creates a LCS-tree instance from a CYTools Calabi-Yau object.

from_dict(d)

Creates a LCS-tree instance from a dictionary.

from_file(file[, maximum_degree, ...])

Creates a lcs_tree instance from a zipped pickle file.

update(**kwargs)

Updates attributes of the LCS-tree object. This can be used to update any optional attribute of the object, including those not set during initialization.

classmethod filter_dict(d)#
classmethod from_cytools(cy, basis_change=None, maximum_degree=0, limit='LCS', grading_vector=None, ncf=None, conifold_curve=None, conifold_basis=True, model_ID=None, save_file=False, time_out=10, compute_gws=False, remove_axis=None)#

Creates a LCS-tree instance from a CYTools Calabi-Yau object.

Parameters:
  • cy (cytools.CalabiYau) – A CYTools Calabi-Yau object containing the geometric data of the model.

  • basis_change (Array | None) – A basis transformation matrix to be applied to the CY data. If None, no basis transformation is applied.

  • maximum_degree (int) – The maximum degree up to which Gopakumar-Vafa and Gromov-Witten invariants are computed. Default is 0, which means that no invariants are computed.

  • limit (str) – The limit for which to compute periods. Default is “LCS”.

  • grading_vector (Array | None) – A grading vector to be used for computing degrees of GV/GW invariants. If None, degrees are not computed.

  • ncf (int | None) – Number of conifolds for the coniLCS limit. Defaults to None.

  • conifold_curve (Array | None) – Conifold curve charges for the coniLCS limit. Defaults to None.

  • model_ID (int | None) – An integer ID for the model, used for saving data. If None, data is not saved.

  • save_file (bool) – Whether to save the model data to a file. Default is False.

  • time_out (int) – Time limit in seconds for computing Gopakumar-Vafa and Gromov-Witten invariants. Default is 10 seconds.

  • compute_gws (bool) – Whether to compute Gromov-Witten invariants in addition to Gopakumar-Vafa invariants. Default is False.

  • remove_axis (int | None) – If not None, the specified axis is removed from the GV/GW charge data. Default is None, which means that no axis is removed.

Returns:

LCS-tree – A LCS-tree instance created from the CYTools Calabi-Yau object.

classmethod from_dict(d)#

Creates a LCS-tree instance from a dictionary.

Parameters:

d (dict) – A dictionary containing the attributes of the LCS-tree instance.

Returns:

LCS-tree – A LCS-tree instance created from the dictionary.

classmethod from_file(file, maximum_degree=None, conifold_basis=True, limit='LCS')#

Creates a lcs_tree instance from a zipped pickle file.

Parameters:
  • file (str) – Path to the zipped pickle file containing model data.

  • maximum_degree (int | None) – If not None, applies a maximum degree cutoff to the GV/GW invariants after loading the data. Default is None, which means that no cutoff is applied.

  • conifold_basis (bool | None) – If not None, whether to use the conifold basis for the conifold curve after loading the data. Default is True.

  • limit (str) – The limit for which to compute periods. Default is "LCS".

Returns:

lcs_tree – An lcs_tree instance loaded from the file.

update(**kwargs)#

Updates attributes of the LCS-tree object. This can be used to update any optional attribute of the object, including those not set during initialization.

Parameters:

**kwargs – Keyword arguments to be updated in the object.

Returns:

None