Macaulay2 » Documentation
Packages » OldPolyhedra :: cellDecompose
next | previous | forward | backward | up | index | toc

cellDecompose -- computes the regular cell decomposition

Synopsis

Description

This function computes the regular cell decomposition of P given by the weight vector w. This is computed by placing the i-th lattice point of P on height w_i in n+1 space, taking the convexHull of these with the ray (0,...,0,1), and projecting the compact faces into n space. Note that the polyhedron must be compact, i.e. a polytope and the length of the weight vector must be the number of lattice points.
i1 : P = crossPolytope 3

o1 = {ambient dimension => 3           }
      dimension of lineality space => 0
      dimension of polyhedron => 3
      number of facets => 8
      number of rays => 0
      number of vertices => 6

o1 : Polyhedron
i2 : w =  matrix {{1,2,2,2,2,2,1}}

o2 = | 1 2 2 2 2 2 1 |

              1       7
o2 : Matrix ZZ  <-- ZZ
i3 : L = cellDecompose(P,w)

o3 = {{ambient dimension => 3           }, {ambient dimension => 3         
       dimension of lineality space => 0    dimension of lineality space =>
       dimension of polyhedron => 3         dimension of polyhedron => 3   
       number of facets => 4                number of facets => 4          
       number of rays => 0                  number of rays => 0            
       number of vertices => 4              number of vertices => 4        
     ------------------------------------------------------------------------
      }, {ambient dimension => 3           }, {ambient dimension => 3      
     0    dimension of lineality space => 0    dimension of lineality space
          dimension of polyhedron => 3         dimension of polyhedron => 3
          number of facets => 4                number of facets => 4
          number of rays => 0                  number of rays => 0
          number of vertices => 4              number of vertices => 4
     ------------------------------------------------------------------------
         }}
     => 0

o3 : List
i4 : apply(L,vertices)

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

o4 : List

Ways to use cellDecompose :

For the programmer

The object cellDecompose is a method function.