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:
objectPytree 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. IfNone, degrees are not computed.ncf (
int|None) – Number of conifolds for the coniLCS limit. Defaults toNone.conifold_curve (
Array|None) – Conifold curve charges for the coniLCS limit. Defaults toNone.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 notNone, the specified axis is removed from the GV/GW charge data. Default isNone, 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 notNone, applies a maximum degree cutoff to the GV/GW invariants after loading the data. Default isNone, which means that no cutoff is applied.conifold_basis (
bool|None) – If notNone, whether to use the conifold basis for the conifold curve after loading the data. Default isTrue.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