Goto Chapter: Top 1 2 3 4 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

3 SageMath and the surface_dynamics package
 3.1 SageMath functions

3 SageMath and the surface_dynamics package

The SageMath package surface_dynamics by Vincent Delecroix [VDCF] implements functions to study origamis in Sage. We provide a small interface to use these methods from GAP. An installation of Sage together with the surface_dynamics package and the GAP packages HomalgToCAS, IO_ForHomalg, IO and RingsForHomalg are needed.

3.1 SageMath functions

The following descriptions and examples are mainly taken from the manual of [VDCF].

3.1-1 VeechgroupBySage
‣ VeechgroupBySage( O )( function )

Returns: A subgroup of SL_2( Z).

This function executes the SageMath method veech_group and returns its result as a GAP object.

‣ IsHyperellipticBySage( O )( function )

Returns: A boolean.

Checks whether or not the origami O is hyperelliptic.

‣ IsPrimitiveBySage( O )( function )

Returns: A boolean.

Checks whether or not the origami O is primitive. An origami is called primitive, if it does not cover another origami, or equivalently if the action of the monodromy group has no non-trivial block.

‣ ReduceBySage( O )( function )

Returns: An Origami.

Returns a reduced origami isomorphic (up to SL(2,Q) action) to O.

      gap> ReduceBySage(Origami((1,2)(3,4), (1,3,5,6)(2,4) ));
      Origami((1,2), (1,3), 6)
    
‣ AbsolutePeriodGeneratorsBySage( O )( function )

Returns: A list of lists of integers.

Returns a generating set of the absolute periods of O. To each curve on an origami, we can associate its holonomy (that is an element of Z × Z). This function returns a generating set of the module generated by holonomies of closed curves.

      gap> AbsolutePeriodGeneratorsBySage(Origami((1,2,3,4)(5,6), (1,5)(2,6) ));
      [ [ 2, 0 ], [ 2, 0 ], [ 0, 1 ], [ 0, 1 ] ]
    
‣ LatticeOfAbsolutePeriodsBySage( O )( function )

Returns: A list of lists of integers.

Returns (a,t,u) where ((a,0),(t,u)) is a standard basis for the lattice of the absolute periods of O. The lattice of periods of an origami is the sublattice of Z^2 generated by the holonomy vectors of its saddle connections. Any sublattice of Z^2 has a standard basis consisting of a horizontal vector (a,0) and a nonhorizontal vector (t,u), where a, t, u are integers satisfying 0 < t < a and 0 < t.

      gap> LatticeOfAbsolutePeriodsBySage(Origami((1,2)(3,4), (2,3) ));
      [ [ 2, 0 ], [ 0, 1 ] ]
    
‣ OptimalDegreeBySage( O )( function )

Returns: An integer.

Computes the optimal degree of O. The optimal degree of an origami is the degree of the map to the largest torus. Any origami X → T factors as i ∘ π_opt where i is an isogeny. The optimal degree is the degree of π_opt.

      gap> OptimalDegreeBySage(Origami((1,2)(3,4), (2,3) ));
      2
    
‣ PeriodGeneratorsBySage( O )( function )

Returns: A list of lists of integer.

Return a list of periods that generate the lattice of periods.

      gap> PeriodGeneratorsBySage(Origami((1,3,6)(2,5,7)(4),(1,2,4,3,5,6,7) ));
      [ [ 2, 0 ], [ 1, 0 ], [ 1, 0 ], [ 0, 2 ], [ -1, 2 ], [ 0, 1 ] ]
    
‣ WidthsAndHeightsBySage( O )( function )

Returns: A list of lists of integers.

Return the list of widths and heigths of cylinders in O.

      gap> WidthsAndHeightsBySage(Origami((1,2)(3,4),(1,3,5,6)(2,4) ));
      [ [ 1, 2 ], [ 2, 2 ] ]
    
‣ SumOfLyapunovExponentsBySage( O )( function )

Returns: A rational number.

Copmutes the sum of Lyapunov exponents for O.

      gap> SumOfLyapunovExponentsBySage(Origami((1,2)(3,4),(2,3) ));
      3/2
    
‣ IntermediateCoversBySage( O )( function )

Returns the list of intermediate covers of this origami. Not yet implemented.

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 Bib Ind

generated by GAPDoc2HTML