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

# cellDecompose -- computes the regular cell decomposition

- Usage:
    `L = cellDecompose(P,w)`
- Inputs:
  - P, a convex polyhedron, compact
  - w, a matrix, a one row matrix, with an entry for each lattice point of the polyhedron
- Outputs:
  - L, a list

## 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:

- `cellDecompose(Polyhedron,Matrix)`

## For the programmer

The object cellDecompose is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/OldPolyhedra.m2:7441:0.