Macaulay2 » Documentation
Packages » Polyhedra :: Fan
next | previous | forward | backward | up | index | toc

Fan -- the class of all fans


A Fan represents a fan of rational convex polyhedral cones, i.e. a collection of cones, such that for every cone in the fan all faces are in the fan and for every two cones in the fan their intersection is a face of each (intersection condition). It need not be full dimensional or pure, and the cones need not be pointed. It is saved as a hash table which contains a list of the generating cones of the fan starting with those of maximal dimension. So for every cone in this list all faces are considered to be in the fan. The output of a Fan looks like this:
i1 : normalFan crossPolytope 3

o1 = Fan{...1...}

o1 : Fan

This table displays a short summary of the properties of the Fan. However, one can not access the above information directly, because this is just a virtual hash table generated for the output. The data defining a Fan is extracted by the functions included in this package. A Fan can be constructed by collecting Cones that satisfy the intersection condition. Every cone that is added to a Fan is always considered as the collection of the Cone and all of its faces.
i2 : C1 = coneFromVData matrix {{2,2},{1,-1}};
i3 : C2 = coneFromVData matrix {{2,-2},{1,1}};
i4 : C3 = coneFromVData matrix {{-2,-2},{1,-1}};
i5 : C4 = coneFromVData matrix {{-2,2},{-1,-1}};
i6 : F = fan {C1,C2,C3,C4}

o6 = F

o6 : Fan

This fan is for example the normal fan of a ''flattened'' crosspolytope in 2-space.

See also Working with fans.

Functions and methods returning an object of class Fan :

Methods that use an object of class Fan :

For the programmer

The object Fan is a type, with ancestor classes PolyhedralObject < MutableHashTable < HashTable < Thing.