[BACK]Return to volumes.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Implift

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Implift/volumes.ads, Revision 1.1.1.1

1.1       maekawa     1: with Lists_of_Integer_Vectors;           use Lists_of_Integer_Vectors;
                      2: with Arrays_of_Integer_Vector_Lists;     use Arrays_of_Integer_Vector_Lists;
                      3: with Trees_of_Vectors;                   use Trees_of_Vectors;
                      4:
                      5: package Volumes is
                      6:
                      7: -- DESCRIPTION :
                      8: --   This package contains a routine to compute the volume
                      9: --   of a polytope and two routines for computing the mixed volume.
                     10:
                     11:   function Volume ( n : natural; l : List ) return natural;
                     12:
                     13:   function Volume ( n : natural; l : List;
                     14:                     tv : Tree_of_Vectors ) return natural;
                     15:
                     16:   procedure Volume ( n : in natural; l : in List;
                     17:                      tv : in out Tree_of_Vectors; vlm : out natural );
                     18:
                     19:   -- DESCRIPTION :
                     20:   --   Computes n! times the volume of the polytope generated
                     21:   --   by the points in l; n equals the dimension of the space.
                     22:   --   The tree of degrees tv maintains the directions used to
                     23:   --   compute the volume.  Once tv has been constructed, the volume
                     24:   --   can be computed more efficiently.
                     25:
                     26:   -- REMARK :
                     27:   --   The tree of vectors contains directions normal to the polytope
                     28:   --   generated by a list wl where the first element of the list
                     29:   --   consists of all zeroes; so eventually l has been shifted.
                     30:
                     31:   function Mixed_Volume ( n : natural; al : Array_of_Lists ) return natural;
                     32:
                     33:   function Mixed_Volume ( n : natural; al : Array_of_Lists;
                     34:                           tv : Tree_of_Vectors ) return natural;
                     35:
                     36:   procedure Mixed_Volume ( n : in natural; al : in Array_of_Lists;
                     37:                            tv : in out Tree_of_Vectors; mv : out natural );
                     38:
                     39:   -- DESCRIPTION :
                     40:   --   Computes the mixed volume of the polytopes generated
                     41:   --   by the points in al; n equals the dimension of the space.
                     42:   --   The tree of vectors tv maintains the directions used to
                     43:   --   compute the mixed volume.  Once tv has been constructed,
                     44:   --   the mixed volume can be computed more efficiently.
                     45:
                     46: end Volumes;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>