====== BigObject RationalCurve ====== //from application [[..:tropical|tropical]]//\\ \\ An n-marked rational curve, identified by its ''[[..:tropical:RationalCurve#SETS |SETS]]'', i.e. its partitions of {1,...,n} and its ''[[..:tropical:Hypersurface#COEFFICIENTS |COEFFICIENTS]]'', i.e. the lengths of the corresponding edges. ===== Properties ===== ==== Input property ==== These properties are for input only. They allow redundant information. ---- {{anchor:input_coeffs:}} ? **''INPUT_COEFFS''** :: Same as ''[[..:tropical:RationalCurve#COEFFS |COEFFS]]'', except that entries may be <=0. This should have the same length as ''[[..:tropical:RationalCurve#INPUT_SETS |INPUT_SETS]]''. ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Rational |Rational]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:input_sets:}} ? **''INPUT_SETS''** :: Same as ''[[..:tropical:RationalCurve#SETS |SETS]]'', except that sets may appear several times. ? Type: :''[[..:common#IncidenceMatrix |IncidenceMatrix]]<[[..:common#NonSymmetric |NonSymmetric]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:input_string:}} ? **''INPUT_STRING''** :: This property can also be used to define a rational curve: A linear combination of partitions is given as a string, using the following syntax: A partition is given as a subset of {1,..,n} and written as a comma-separated list of leaf indices in round brackets, e.g. "(1,2,5)" A linear combination can be created using rational numbers, "+","+" and "-" in the obvious way, e.g. "2*(1,2,5) + 1*(3,4,7) - 2(1,2) (The "*" is optional) Of course, each set should contain at least two elements. If you don't specify N_LEAVES, it is set to be the largest leaf index occuring in the sets. Partitions needn't be irredundant and coefficients can be any rational number. If the resulting element is not in the moduli space, an error is thrown. ? Type: :''[[..:common#String |String]]'' ? from extension: : [[:external_software|bundled:atint]] ---- ==== Combinatorics ==== These properties capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice. ---- {{anchor:coeffs:}} ? **''COEFFS''** :: A list of positive rational coefficients. The list should have the same length as ''[[..:tropical:RationalCurve#SETS |SETS]]'' and contain only entries > 0. The i-th entry then gives the length of the bounded edge defined by the i-th partition. If you're not sure if all your coefficients are > 0, use ''[[..:tropical:RationalCurve#INPUT_SETS |INPUT_SETS]]'' and ''[[..:tropical:RationalCurve#INPUT_COEFFS |INPUT_COEFFS]]'' instead. Note that the zero curve (i.e. no bounded edges, only leaves) is represented by one empty set with corresponding lenghth 0. ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Rational |Rational]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:graph:}} ? **''GRAPH''** :: Contains the abstract graph (non-metric) corresponding to the curve. All unbounded leaves are modelled as bounded edges. The vertices at the ends of the "leaves" are always the first ''[[..:tropical:RationalCurve#N_LEAVES |N_LEAVES]]'' vertices. ? Type: :''[[..:graph:Graph |Graph]]<[[..:common#Undirected |Undirected]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:graph_edge_lengths:}} ? **''GRAPH_EDGE_LENGTHS''** :: Contains the lengths of the edges of ''[[..:tropical:RationalCurve#GRAPH |GRAPH]]'' that represent bounded edges of the curve. The coefficients appear in the order that the corr. edges appear in ''[[..:graph:Graph#EDGES |EDGES]]''. ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Rational |Rational]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:nodes_by_leaves:}} ? **''NODES_BY_LEAVES''** :: This incidence matrix gives a list of the vertices of the curve Each row corresponds to a vertex and contains as a set the leaves that are attached to that vertex (again, counting from 1!) ? Type: :''[[..:common#IncidenceMatrix |IncidenceMatrix]]<[[..:common#NonSymmetric |NonSymmetric]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:nodes_by_sets:}} ? **''NODES_BY_SETS''** :: This incidence matrix gives a list of the vertices of the curve Each row corresponds to a vertex and contains as a set the row indices of the ''[[..:tropical:RationalCurve#SETS |SETS]]'' that correspond to edges attached to that vertex ? Type: :''[[..:common#IncidenceMatrix |IncidenceMatrix]]<[[..:common#NonSymmetric |NonSymmetric]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:node_degrees:}} ? **''NODE_DEGREES''** :: This gives a list of the vertices of the curve in terms of their valences They appear in the same order as in ''[[..:tropical:RationalCurve#NODES_BY_LEAVES |NODES_BY_LEAVES]]'' or ''[[..:tropical:RationalCurve#NODES_BY_SETS |NODES_BY_SETS]]'' ? Type: :''[[..:common#Vector |Vector]]<[[..:common#Int |Int]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:n_leaves:}} ? **''N_LEAVES''** :: The number of leaves of the rational curve. ? Type: :''[[..:common#Int |Int]]'' ? from extension: : [[:external_software|bundled:atint]] ---- {{anchor:sets:}} ? **''SETS''** :: A list of partitions of [n] that define the tree of the curve: For each bounded edge we have the corresponding partition of the n leaves. These should be irredundant. If you want to input a possibly redundant list, use ''[[..:tropical:RationalCurve#INPUT_SETS |INPUT_SETS]]'' and ''[[..:tropical:RationalCurve#INPUT_COEFFS |INPUT_COEFFS]]'' instead. The number of marked leaves should always be given by ''[[..:tropical:RationalCurve#N_LEAVES |N_LEAVES]]''. The sets are subsets of {1,...,n} (NOT {0,..,n-1}!) Note that the zero curve (i.e. no bounded edges, only leaves) is represented by one empty set with corresponding lenghth 0. ? Type: :''[[..:common#IncidenceMatrix |IncidenceMatrix]]<[[..:common#NonSymmetric |NonSymmetric]]>'' ? from extension: : [[:external_software|bundled:atint]] ---- ===== Methods ===== ==== Conversion ==== These deal with converting the representation of a rational curve between metric vector and matroid fan coordinates. ---- {{anchor:metric_vector:}} ? **''metric_vector''** :: Returns the (n over 2) metric vector of the rational n-marked curve ? from extension: : [[:external_software|bundled:atint]] ---- ==== Visualization ==== These methods are for visualization. ---- {{anchor:visual:}} ? **''VISUAL()''** :: Visualizes a RationalCurve object. This visualization uses the VISUAL method of its GRAPH, so it accepts all the options of Visual::Graph::decorations. In addition it has another option ? Options: : :: ''[[..:common#String |String]]'' ''LengthLabels'': If "hidden", the edges are not labelled with their lengths. Any other text is ignored. Not set to "hidden" by default. : option list ''[[..:tropical#Visual_RationalCurve_decorations |Visual::RationalCurve::decorations]]'' ? from extension: : [[:external_software|bundled:atint]] ----