next | previous | forward | backward | up | top | index | toc | Macaulay2 web site

Working with fans - Part 2

Now we construct a new fan to show some other functions.
i1 : C1 = posHull matrix {{1,1,-1,-1},{1,-1,1,-1},{1,1,1,1}};
i2 : C2 = posHull matrix {{1,1,1},{0,1,-1},{-1,1,1}};
i3 : C3 = posHull matrix {{-1,-1,-1},{0,1,-1},{-1,1,1}};
i4 : C4 = posHull matrix {{1,-1},{0,0},{-1,-1}};
i5 : F = fan {C1,C2,C3,C4}

o5 = {ambient dimension => 3         }
      number of generating cones => 4
      number of rays => 6
      top dimension of the cones => 3

o5 : Fan

This is not a ''very nice'' fan, as it is neither complete nor of pure dimension:

i6 : isComplete F

o6 = false
i7 : isPure F

o7 = true

If we add two more cones the fan becomes complete.

i8 : C5 = posHull matrix {{1,-1,1,-1},{-1,-1,0,0},{1,1,-1,-1}};
i9 : C6 = posHull matrix {{1,-1,1,-1},{1,1,0,0},{1,1,-1,-1}};
i10 : F = addCone({C5,C6},F)

o10 = {ambient dimension => 3         }
       number of generating cones => 5
       number of rays => 6
       top dimension of the cones => 3

o10 : Fan
i11 : isComplete F

o11 = true

For a complete fan we can check if it is projective:

i12 : isPolytopal F

o12 = true

If the fan is projective, the function returns a polyhedron such that the fan is its normal fan, otherwise it returns the empty polyhedron. This means our fan is projective.