On a complete normal toric variety, the polyhedron associated to a Cartier divisor is a lattice polytope. Given a torus-invariant Cartier divisor on a normal toric variety, this method returns an integer matrix whose columns correspond to the vertices of the associated lattice polytope. For a non-effective Cartier divisor, this methods returns null. When the divisor is ample, the normal fan the corresponding polytope equals the fan associated to the normal toric variety.
On the projective plane, the associate polytope is either empty, a point, or a triangle.
i1 : PP2 = toricProjectiveSpace 2;
|
i2 : assert (null === vertices (-PP2_0))
|
i3 : vertices (0*PP2_0)
o3 = 0
2 1
o3 : Matrix ZZ <-- ZZ
|
i4 : assert isAmple PP2_0
|
i5 : V1 = vertices (PP2_0)
o5 = | 0 1 0 |
| 0 0 1 |
2 3
o5 : Matrix ZZ <-- ZZ
|
i6 : X1 = normalToricVariety V1;
|
i7 : assert (set rays X1 === set rays PP2 and max X1 === max PP2)
|
i8 : assert isAmple (2*PP2_0)
|
i9 : V2 = vertices (2*PP2_0)
o9 = | 0 2 0 |
| 0 0 2 |
2 3
o9 : Matrix ZZ <-- ZZ
|
i10 : X2 = normalToricVariety V2;
|
i11 : assert (rays X2 === rays X1 and max X2 === max X1)
|
i12 : FF2 = hirzebruchSurface 2;
|
i13 : assert not isAmple FF2_2
|
i14 : V3 = vertices FF2_2
o14 = | 0 1 |
| 0 0 |
2 2
o14 : Matrix ZZ <-- ZZ
|
i15 : normalToricVariety V3 -- a degenerated version of the projective line
o15 = normalToricVariety ({{1, 0}, {-1, 0}}, {{0}, {1}})
o15 : NormalToricVariety
|
i16 : assert isDegenerate normalToricVariety V3
|
i17 : assert not isAmple FF2_3
|
i18 : V4 = vertices FF2_3
o18 = | 0 0 2 |
| 0 1 1 |
2 3
o18 : Matrix ZZ <-- ZZ
|
i19 : normalToricVariety V4 -- a weighted projective space
o19 = normalToricVariety ({{1, 0}, {-1, 2}, {0, -1}}, {{0, 1}, {0, 2}, {1, 2}})
o19 : NormalToricVariety
|
i20 : vertices FF2_1
o20 = 0
2 1
o20 : Matrix ZZ <-- ZZ
|
i21 : assert isAmple (FF2_2 + FF2_3)
|
i22 : V5 = vertices (FF2_2 + FF2_3)
o22 = | 0 1 0 3 |
| 0 0 1 1 |
2 4
o22 : Matrix ZZ <-- ZZ
|
i23 : X3 = normalToricVariety V5 -- isomorphic Hirzebruch surface
o23 = X3
o23 : NormalToricVariety
|
i24 : assert (set rays X3 === set rays FF2)
|