zonohedra

The CRAN page for R package zonohedra is here: CRAN.


Overview

A given linear map \(\mathbb{R}^N \to \mathbb{R}^3\), for \(N \ge 3\), defines a zonohedron \(Z\); \(Z\) is the linear image of the cube \([0,1]^N \subset \mathbb{R}^N\). The \(N\) images of the standard basis of \(\mathbb{R}^N\) are called the generators of the zonohedron. A zonohedron is a special type of convex polyhedron.

The goal of this package is to construct any zonohedron from the generators, but especially the ones in these 2 families:

A zonotope is the general notion with \(\mathbb{R}^3\) replaced by \(\mathbb{R}^d\). This package also handles zonogons (2D zonotopes) and zonosegs (1D zonotopes). The term zonoseg (“zonotope” + “segment”) is my own personal term; I could not find an alternative term. It is a linear image of the unit cube \([0,1]^N\) in the real numbers, and a compact segment of reals.


Installation

install.packages("zonohedra")


S3 classes

object classes
zonohedron “zonohedron”, “zonotope”, “list”
zonogon “zonogon”, “zonotope”, “list”
zonoseg “zonoseg”, “zonotope”, “list”
matroid “matroid”, “list”
genlist “genlist”, “list”

For example, the function section() returns very diffferent things for a zonohedron and a zonogon, and so section.zonohedron() and section.zonogon() are coded and documented separately. A section for a zonoseg does not make sense, so section.zonoseg() is undefined.


Getting help

If you encounter a clear bug, please file an issue with a minimal reproducible example on GitHub. Or, write me using my email address on the CRAN page for the package.


Terminology for Convex Polytopes

A convex polytope is the convex hull of a finite number of points. We always a assume that it has a non-empty interior.

For a convex polytope, a supporting hyperplane is a hyperplane that intersect the polytope’s boundary but not its interior.

A zonohedron has supporting planes, and a zonogon has supporting lines.

In the package zonohedra, a zonotope mean a zonotope of dimension 3, 2, or 1.

A face of a zonotope is the intersection of the boundary of the zonotope with some supporting hyperplane. A d-face is a face of dimension d. So a 0-face is a vertex, and a 1-face is an edge.

A facet of a zonotope is a face whose dimension is 1 less than the dimension of the zonotope. A facet is a maximal proper face.

A zonohedron has 0-faces (vertices), 1-faces (edges), and 2-faces (facets).

A zonogon has 0-faces (vertices) and 1-faces (edges). Since the dimension of an edge is 1 less than the dimension of the zonogon, an edge of a zonogon is also a facet of a zonogon.