next | previous | forward | backward | up | top | index | toc | Macaulay2 website
SRdeformations :: hull

hull -- The positive hull complex.

Synopsis

Description

Returns the cone which is the hull of lattice vectors in L. The output has C.isPolytope==true.

If applied to the string fn the result of a previous computation stored via the option file is read from the file fn.

The hull of L has to be strictly convex.

i1 : L= {{0,1,1,0,0},{0,1,0,1,0},{0,1,0,0,0},{1,0,0,0,1},{1,0,-1,-1,-1},{1,0,0,0,0}};
i2 : L=apply(L,vector)

o2 = {| 0 |, | 0 |, | 0 |, | 1 |, |  1 |, | 1 |}
      | 1 |  | 1 |  | 1 |  | 0 |  |  0 |  | 0 |
      | 1 |  | 0 |  | 0 |  | 0 |  | -1 |  | 0 |
      | 0 |  | 1 |  | 0 |  | 0 |  | -1 |  | 0 |
      | 0 |  | 0 |  | 0 |  | 1 |  | -1 |  | 0 |

o2 : List
i3 : C=hull L

o3 = 4: y y y y y y  
         0 1 2 3 4 5

o3 : complex of dim 4 embedded in dim 4 (printing facets)
     equidimensional, non-simplicial, F-vector {1, 6, 14, 16, 8, 1}, Euler = 0
i4 : C.grading

o4 = | 1 0 0  0  0  |
     | 0 1 0  0  0  |
     | 0 1 1  0  0  |
     | 0 1 0  1  0  |
     | 1 0 -1 -1 -1 |
     | 1 0 0  0  1  |

              6        5
o4 : Matrix ZZ  <--- ZZ
i5 : dC=dualize C

o5 = 4: v v v v v v v v  
         0 1 2 3 4 5 6 7

o5 : complex of dim 4 embedded in dim 4 (printing facets)
     equidimensional, non-simplicial, F-vector {1, 8, 16, 14, 6, 1}, Euler = 0
i6 : dC.grading

o6 = | 0 1 -1 -1 0  |
     | 0 1 1  -1 0  |
     | 0 1 -1 1  0  |
     | 1 0 0  0  -1 |
     | 1 0 2  0  -1 |
     | 1 0 0  2  -1 |
     | 1 0 0  0  1  |
     | 0 1 -1 -1 2  |

              8        5
o6 : Matrix ZZ  <--- ZZ

Caveat

The cone is represented as a complex on its rays, hence if dim(Face) is applied to a Face it will return the dimension of the corresponding cone minus one.

This uses the package OldPolyhedra.m2 to compute the facets. Too slow compared to Maple/convex.

If the package ConvexInterface is loaded, then this command calls Maple/Convex. See the corresponding option explained at SRdeformations.

See also

Ways to use hull :

For the programmer

The object hull is a method function with options.