Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 7ebd25ac536d248d499a3ce2acda963a > files > 5705

Macaulay2-1.3.1-8.fc15.i686.rpm

<?xml version="1.0" encoding="utf-8" ?>  <!-- for emacs: -*- coding: utf-8 -*- -->
<!-- Apache may like this line in the file .htaccess: AddCharset utf-8 .html -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN"	 "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head><title>Cone -- the class of all rational convex polyhedral cones</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="___Cone_sp_st_sp__Cone.html">next</a> | <a href="_common__Face.html">previous</a> | <a href="___Cone_sp_st_sp__Cone.html">forward</a> | <a href="_common__Face.html">backward</a> | up | <a href="index.html">top</a> | <a href="master.html">index</a> | <a href="toc.html">toc</a> | <a href="http://www.math.uiuc.edu/Macaulay2/">Macaulay2 web site</a></div>

    </td>
  </tr>
</table>
<hr/>
<div><h1>Cone -- the class of all rational convex polyhedral cones</h1>
<div class="single"><h2>Description</h2>
<div>A Cone represents a rational convex polyhedral cone. It need not be full 
 dimensional or may contain a proper linear subspace. It can be zero 
 dimensional, i.e. the origin. It is saved as a hash table which 
 contains the generating rays and the basis of the lineality space of the 
 cone as well as the defining half-spaces and hyperplanes. The output of a 
 Cone looks like this:<table class="examples"><tr><td><pre>i1 : posHull matrix {{0,0,-1,-1,1},{2,-2,1,-1,0},{1,1,1,1,0}}

o1 = {ambient dimension => 3           }
      dimension of lineality space => 0
      dimension of the cone => 3
      number of facets => 5
      number of rays => 5

o1 : Cone</pre>
</td></tr>
</table>
<p/>
This table displays a short summary of the properties of the Cone. The number 
 of rays is modulo the lineality space. However, one can not access the above information 
 directly, because this is just a virtual hash table generated for the output. The data 
 describing a Cone is extracted by the functions included in this package. A Cone 
 can be constructed as the positive hull (<a href="_pos__Hull.html" title="computes the positive hull of rays, cones, and the cone over a polyhedron">posHull</a>)of a set of rays or as the intersection 
 (<a href="_intersection.html" title="computes the intersection of half-spaces, hyperplanes, cones, and polyhedra">intersection</a>) of a set of linear half-spaces and linear hyperplanes.<p/>
As examples for the positive hull consider the following cones:<table class="examples"><tr><td><pre>i2 : R = matrix{{1,2,3,1},{2,3,1,1},{3,1,2,1}}

o2 = | 1 2 3 1 |
     | 2 3 1 1 |
     | 3 1 2 1 |

              3        4
o2 : Matrix ZZ  &lt;--- ZZ</pre>
</td></tr>
<tr><td><pre>i3 : C = posHull R

o3 = {ambient dimension => 3           }
      dimension of lineality space => 0
      dimension of the cone => 3
      number of facets => 3
      number of rays => 3

o3 : Cone</pre>
</td></tr>
<tr><td><pre>i4 : rays C

o4 = | 2 3 1 |
     | 3 1 2 |
     | 1 2 3 |

              3        3
o4 : Matrix QQ  &lt;--- QQ</pre>
</td></tr>
<tr><td><pre>i5 : LS = matrix{{1},{1},{-2}}

o5 = | 1  |
     | 1  |
     | -2 |

              3        1
o5 : Matrix ZZ  &lt;--- ZZ</pre>
</td></tr>
<tr><td><pre>i6 : C = posHull(R,LS)

o6 = {ambient dimension => 3           }
      dimension of lineality space => 1
      dimension of the cone => 3
      number of facets => 2
      number of rays => 2

o6 : Cone</pre>
</td></tr>
<tr><td><pre>i7 : rays C

o7 = | 0  0 |
     | -1 1 |
     | 4  5 |

              3        2
o7 : Matrix QQ  &lt;--- QQ</pre>
</td></tr>
</table>
<p/>
On the other hand, we can use these matrices as defining half-spaces and hyperplanes 
 for the intersection:<table class="examples"><tr><td><pre>i8 : HS = transpose R

o8 = | 1 2 3 |
     | 2 3 1 |
     | 3 1 2 |
     | 1 1 1 |

              4        3
o8 : Matrix ZZ  &lt;--- ZZ</pre>
</td></tr>
<tr><td><pre>i9 : C = intersection HS

o9 = {ambient dimension => 3           }
      dimension of lineality space => 0
      dimension of the cone => 3
      number of facets => 3
      number of rays => 3

o9 : Cone</pre>
</td></tr>
<tr><td><pre>i10 : rays C

o10 = | 1  7  -5 |
      | 7  -5 1  |
      | -5 1  7  |

               3        3
o10 : Matrix QQ  &lt;--- QQ</pre>
</td></tr>
<tr><td><pre>i11 : HP = transpose LS

o11 = | 1 1 -2 |

               1        3
o11 : Matrix ZZ  &lt;--- ZZ</pre>
</td></tr>
<tr><td><pre>i12 : C = intersection(HS,HP)

o12 = {ambient dimension => 3           }
       dimension of lineality space => 0
       dimension of the cone => 2
       number of facets => 2
       number of rays => 2

o12 : Cone</pre>
</td></tr>
<tr><td><pre>i13 : rays C

o13 = | 7  -2 |
      | -5 4  |
      | 1  1  |

               3        2
o13 : Matrix QQ  &lt;--- QQ</pre>
</td></tr>
</table>
<p/>
See also<a href="___Working_spwith_spcones.html" title="">Working with cones</a>.</div>
</div>
<div class="waystouse"><h2>Functions and methods returning a convex rational cone :</h2>
<ul><li><span><a href="_dual__Cone.html" title=" computes the dual Cone">dualCone</a> --  computes the dual Cone</span></li>
<li><span><a href="_normal__Cone_lp__Polyhedron_cm__Polyhedron_rp.html" title="computes the normal cone of a face of a polyhedron">normalCone(Polyhedron,Polyhedron)</a> -- computes the normal cone of a face of a polyhedron</span></li>
<li><span><a href="_pos__Hull.html" title="computes the positive hull of rays, cones, and the cone over a polyhedron">posHull</a> -- computes the positive hull of rays, cones, and the cone over a polyhedron</span></li>
<li><span><a href="_pos__Orthant.html" title="generates the positive orthant in n-space">posOrthant</a> -- generates the positive orthant in n-space</span></li>
<li><span><a href="_tail__Cone.html" title="computes the tail/recession cone of a polyhedron">tailCone</a> -- computes the tail/recession cone of a polyhedron</span></li>
</ul>
<h2>Methods that use a convex rational cone :</h2>
<ul><li><span>addCone(Cone,Fan), see <span><a href="_add__Cone.html" title="adds cones to a Fan">addCone</a> -- adds cones to a Fan</span></span></li>
<li><span>affineImage(Cone,Matrix), see <span><a href="_affine__Image_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine image of a cone">affineImage(Matrix,Cone,Matrix)</a> -- computes the affine image of a cone</span></span></li>
<li><span>affineImage(Matrix,Cone), see <span><a href="_affine__Image_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine image of a cone">affineImage(Matrix,Cone,Matrix)</a> -- computes the affine image of a cone</span></span></li>
<li><span><a href="_affine__Image_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine image of a cone">affineImage(Matrix,Cone,Matrix)</a> -- computes the affine image of a cone</span></li>
<li><span>affinePreimage(Cone,Matrix), see <span><a href="_affine__Preimage_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine preimage of a cone">affinePreimage(Matrix,Cone,Matrix)</a> -- computes the affine preimage of a cone</span></span></li>
<li><span>affinePreimage(Matrix,Cone), see <span><a href="_affine__Preimage_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine preimage of a cone">affinePreimage(Matrix,Cone,Matrix)</a> -- computes the affine preimage of a cone</span></span></li>
<li><span><a href="_affine__Preimage_lp__Matrix_cm__Cone_cm__Matrix_rp.html" title="computes the affine preimage of a cone">affinePreimage(Matrix,Cone,Matrix)</a> -- computes the affine preimage of a cone</span></li>
<li><span>ambDim(Cone), see <span><a href="_amb__Dim.html" title="ambient dimension of a Polyhedron, Cone or Fan">ambDim</a> -- ambient dimension of a Polyhedron, Cone or Fan</span></span></li>
<li><span>areCompatible(Cone,Cone), see <span><a href="_are__Compatible.html" title="checks if the intersection of two cones is a face of each">areCompatible</a> -- checks if the intersection of two cones is a face of each</span></span></li>
<li><span>commonFace(Cone,Cone), see <span><a href="_common__Face.html" title="checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans">commonFace</a> -- checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans</span></span></li>
<li><span>commonFace(Cone,Fan), see <span><a href="_common__Face.html" title="checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans">commonFace</a> -- checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans</span></span></li>
<li><span>commonFace(Fan,Cone), see <span><a href="_common__Face.html" title="checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans">commonFace</a> -- checks if the intersection is a face of both Cones or Polyhedra, or of cones with fans</span></span></li>
<li><span><a href="___Cone_sp_st_sp__Cone.html" title="computes the direct product of two cones">Cone * Cone</a> -- computes the direct product of two cones</span></li>
<li><span><a href="___Cone_sp_st_sp__Polyhedron.html" title="computes the direct product of a cone and a polyhedron">Cone * Polyhedron</a> -- computes the direct product of a cone and a polyhedron</span></li>
<li><span><a href="___Cone_sp_pl_sp__Cone.html" title="computes the Minkowski sum of two cones">Cone + Cone</a> -- computes the Minkowski sum of two cones</span></li>
<li><span><a href="___Cone_sp_pl_sp__Polyhedron.html" title="computes the Minkowski sum of a cone and a polyhedron">Cone + Polyhedron</a> -- computes the Minkowski sum of a cone and a polyhedron</span></li>
<li><span><a href="___Cone_sp_eq_eq_sp__Cone.html" title="equality">Cone == Cone</a> -- equality</span></li>
<li><span><a href="___Cone_sp_qu_sp__Cone.html" title="compares the Cones">Cone ? Cone</a> -- compares the Cones</span></li>
<li><span>coneToPolyhedron(Cone), see <span><a href="_cone__To__Polyhedron.html" title="converts a cone to class Polyhedron">coneToPolyhedron</a> -- converts a cone to class Polyhedron</span></span></li>
<li><span>contains(Cone,Cone), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span>contains(Cone,Matrix), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span>contains(Cone,Polyhedron), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span>contains(Fan,Cone), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span>contains(List,Cone), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span>contains(Polyhedron,Cone), see <span><a href="_contains.html" title="checks if the first argument contains the second argument">contains</a> -- checks if the first argument contains the second argument</span></span></li>
<li><span><a href="_dim_lp__Cone_rp.html" title="computes the dimension of a cone">dim(Cone)</a> -- computes the dimension of a cone</span></li>
<li><span><a href="_direct__Product_lp__Cone_cm__Cone_rp.html" title="computes the direct product of polyhedra and cones">directProduct(Cone,Cone)</a> -- computes the direct product of polyhedra and cones</span></li>
<li><span>directProduct(Cone,Polyhedron), see <span><a href="_direct__Product_lp__Cone_cm__Cone_rp.html" title="computes the direct product of polyhedra and cones">directProduct(Cone,Cone)</a> -- computes the direct product of polyhedra and cones</span></span></li>
<li><span>directProduct(Polyhedron,Cone), see <span><a href="_direct__Product_lp__Cone_cm__Cone_rp.html" title="computes the direct product of polyhedra and cones">directProduct(Cone,Cone)</a> -- computes the direct product of polyhedra and cones</span></span></li>
<li><span>dualCone(Cone), see <span><a href="_dual__Cone.html" title=" computes the dual Cone">dualCone</a> --  computes the dual Cone</span></span></li>
<li><span>dualFaceLattice(Cone), see <span><a href="_dual__Face__Lattice_lp__Z__Z_cm__Cone_rp.html" title="computes the dual face lattice of a cone">dualFaceLattice(ZZ,Cone)</a> -- computes the dual face lattice of a cone</span></span></li>
<li><span><a href="_dual__Face__Lattice_lp__Z__Z_cm__Cone_rp.html" title="computes the dual face lattice of a cone">dualFaceLattice(ZZ,Cone)</a> -- computes the dual face lattice of a cone</span></li>
<li><span>faceLattice(Cone), see <span><a href="_face__Lattice_lp__Z__Z_cm__Cone_rp.html" title="computes the face lattice of a cone">faceLattice(ZZ,Cone)</a> -- computes the face lattice of a cone</span></span></li>
<li><span><a href="_face__Lattice_lp__Z__Z_cm__Cone_rp.html" title="computes the face lattice of a cone">faceLattice(ZZ,Cone)</a> -- computes the face lattice of a cone</span></li>
<li><span>faces(ZZ,Cone), see <span><a href="_faces.html" title="computes all faces of a certain codimension of a Cone or Polyhedron">faces</a> -- computes all faces of a certain codimension of a Cone or Polyhedron</span></span></li>
<li><span>fan(Cone), see <span><a href="_fan.html" title="generates a Fan">fan</a> -- generates a Fan</span></span></li>
<li><span>fVector(Cone), see <span><a href="_f__Vector.html" title="computes the f-vector of a Cone or Polyhedron">fVector</a> -- computes the f-vector of a Cone or Polyhedron</span></span></li>
<li><span>halfspaces(Cone), see <span><a href="_halfspaces.html" title="computes the defining half-spaces of a Cone or a Polyhedron">halfspaces</a> -- computes the defining half-spaces of a Cone or a Polyhedron</span></span></li>
<li><span>hilbertBasis(Cone), see <span><a href="_hilbert__Basis.html" title="computes the Hilbert basis of a Cone">hilbertBasis</a> -- computes the Hilbert basis of a Cone</span></span></li>
<li><span>hyperplanes(Cone), see <span><a href="_hyperplanes.html" title="computes the defining hyperplanes of a Cone or a Polyhedron">hyperplanes</a> -- computes the defining hyperplanes of a Cone or a Polyhedron</span></span></li>
<li><span>imageFan(Matrix,Cone), see <span><a href="_image__Fan.html" title=" computes the fan of the image">imageFan</a> --  computes the fan of the image</span></span></li>
<li><span>incompCones(Cone,Fan), see <span><a href="_incomp__Cones.html" title="returns the pairs of incompatible cones">incompCones</a> -- returns the pairs of incompatible cones</span></span></li>
<li><span>incompCones(Fan,Cone), see <span><a href="_incomp__Cones.html" title="returns the pairs of incompatible cones">incompCones</a> -- returns the pairs of incompatible cones</span></span></li>
<li><span>inInterior(Matrix,Cone), see <span><a href="_in__Interior.html" title="checks if a point lies in the relative interior of a Cone/Polyhedron">inInterior</a> -- checks if a point lies in the relative interior of a Cone/Polyhedron</span></span></li>
<li><span>interiorVector(Cone), see <span><a href="_interior__Vector.html" title="computes a vector in the relative interior of a Cone">interiorVector</a> -- computes a vector in the relative interior of a Cone</span></span></li>
<li><span>intersection(Cone,Cone), see <span><a href="_intersection.html" title="computes the intersection of half-spaces, hyperplanes, cones, and polyhedra">intersection</a> -- computes the intersection of half-spaces, hyperplanes, cones, and polyhedra</span></span></li>
<li><span>intersection(Cone,Polyhedron), see <span><a href="_intersection.html" title="computes the intersection of half-spaces, hyperplanes, cones, and polyhedra">intersection</a> -- computes the intersection of half-spaces, hyperplanes, cones, and polyhedra</span></span></li>
<li><span>intersection(Polyhedron,Cone), see <span><a href="_intersection.html" title="computes the intersection of half-spaces, hyperplanes, cones, and polyhedra">intersection</a> -- computes the intersection of half-spaces, hyperplanes, cones, and polyhedra</span></span></li>
<li><span>isFace(Cone,Cone), see <span><a href="_is__Face.html" title="tests if the first argument is a face of the second">isFace</a> -- tests if the first argument is a face of the second</span></span></li>
<li><span>isPointed(Cone), see <span><a href="_is__Pointed.html" title="checks if a Cone or Fan is pointed">isPointed</a> -- checks if a Cone or Fan is pointed</span></span></li>
<li><span>isSmooth(Cone), see <span><a href="_is__Smooth.html" title="checks if a Cone or Fan is smooth">isSmooth</a> -- checks if a Cone or Fan is smooth</span></span></li>
<li><span>linSpace(Cone), see <span><a href="_lin__Space.html" title="computes a basis of the lineality space">linSpace</a> -- computes a basis of the lineality space</span></span></li>
<li><span>maxFace(Matrix,Cone), see <span><a href="_max__Face.html" title="computes the face of a Polyhedron or Cone where a weight attains its maximum">maxFace</a> -- computes the face of a Polyhedron or Cone where a weight attains its maximum</span></span></li>
<li><span>minFace(Matrix,Cone), see <span><a href="_min__Face.html" title="computes the face of a Polyhedron or Cone where a weight attains its minimum">minFace</a> -- computes the face of a Polyhedron or Cone where a weight attains its minimum</span></span></li>
<li><span>minkowskiSum(Cone,Cone), see <span><a href="_minkowski__Sum.html" title=" computes the Minkowski sum of two convex objects">minkowskiSum</a> --  computes the Minkowski sum of two convex objects</span></span></li>
<li><span>minkowskiSum(Cone,Polyhedron), see <span><a href="_minkowski__Sum.html" title=" computes the Minkowski sum of two convex objects">minkowskiSum</a> --  computes the Minkowski sum of two convex objects</span></span></li>
<li><span>minkowskiSum(Polyhedron,Cone), see <span><a href="_minkowski__Sum.html" title=" computes the Minkowski sum of two convex objects">minkowskiSum</a> --  computes the Minkowski sum of two convex objects</span></span></li>
<li><span><a href="_net_lp__Cone_rp.html" title="displays characteristics of a cone">net(Cone)</a> -- displays characteristics of a cone</span></li>
<li><span><a href="___Polyhedron_sp_st_sp__Cone.html" title="computes the direct product of a polyhedron and a cone">Polyhedron * Cone</a> -- computes the direct product of a polyhedron and a cone</span></li>
<li><span><a href="___Polyhedron_sp_pl_sp__Cone.html" title="computes the Minkowski sum of a polyhedron and a cone">Polyhedron + Cone</a> -- computes the Minkowski sum of a polyhedron and a cone</span></li>
<li><span>posHull(Cone,Cone), see <span><a href="_pos__Hull.html" title="computes the positive hull of rays, cones, and the cone over a polyhedron">posHull</a> -- computes the positive hull of rays, cones, and the cone over a polyhedron</span></span></li>
<li><span>proximum(Matrix,Cone), see <span><a href="_proximum.html" title="computes the proximum of the Polyhedron/Cone to a point in euclidian metric">proximum</a> -- computes the proximum of the Polyhedron/Cone to a point in euclidian metric</span></span></li>
<li><span>rays(Cone), see <span><a href="_rays.html" title="displays all rays of a Cone, a Fan, or a Polyhedron">rays</a> -- displays all rays of a Cone, a Fan, or a Polyhedron</span></span></li>
<li><span>smallestFace(Matrix,Cone), see <span><a href="_smallest__Face.html" title="determines the smallest face of the Cone/Polyhedron containing a point">smallestFace</a> -- determines the smallest face of the Cone/Polyhedron containing a point</span></span></li>
</ul>
</div>
<div class="waystouse"><h2>For the programmer</h2>
<p>The object <a href="___Cone.html" title="the class of all rational convex polyhedral cones">Cone</a> is <span>a <a href="../../Macaulay2Doc/html/___Type.html">type</a></span>, with ancestor classes <a href="___Polyhedral__Object.html" title="the class of all polyhedral objects in Polyhedra">PolyhedralObject</a> &lt; <a href="../../Macaulay2Doc/html/___Hash__Table.html" title="the class of all hash tables">HashTable</a> &lt; <a href="../../Macaulay2Doc/html/___Thing.html" title="the class of all things">Thing</a>.</p>
</div>
</div>
</body>
</html>