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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Dynlift/triangulations.ads, Revision 1.1

1.1     ! maekawa     1: with Generic_Lists;
        !             2: with Standard_Integer_Vectors;           use Standard_Integer_Vectors;
        !             3: with Standard_Integer_VecVecs;           use Standard_Integer_VecVecs;
        !             4: with Simplices;                          use Simplices;
        !             5:
        !             6: package Triangulations is
        !             7:
        !             8: -- DESCRIPTION :
        !             9: --   This package exports a data structure for dealing with regular
        !            10: --   triangulations of Newton polytopes.
        !            11:
        !            12: -- DATA STRUCTURE :
        !            13:
        !            14:   package Lists_of_Simplices is new Generic_Lists(Simplex);
        !            15:   type Triangulation is new Lists_of_Simplices.List;
        !            16:
        !            17:   Null_Triangulation : constant Triangulation
        !            18:                            := Triangulation(Lists_of_Simplices.Null_List);
        !            19:
        !            20: -- CREATORS :
        !            21:
        !            22:   function Create ( s : Simplex ) return Triangulation;
        !            23:
        !            24:   -- DESCRIPTION :
        !            25:   --   Returns a trianguation with one simplex.
        !            26:
        !            27:   procedure Update ( t : in out Triangulation; x : in Link_to_Vector );
        !            28:   procedure Update ( t : in out Triangulation; x : in Link_to_Vector;
        !            29:                      newt : out Triangulation );
        !            30:
        !            31:   -- DESCRIPTION :
        !            32:   --   Computes new simplices which contain x, stores them in newt,
        !            33:   --   and adds them to the triangulation.
        !            34:
        !            35:   procedure Update_One ( t : in out Triangulation; x : in Link_to_Vector );
        !            36:
        !            37:   -- DESCRIPTION :
        !            38:   --   Computes new simplices that contain x and adds them
        !            39:   --   to the triangulation.
        !            40:   --   Hereby it will be assumed that adding x causes no points of t to be
        !            41:   --   interior.
        !            42:
        !            43:   procedure Connect ( t : in out Triangulation );
        !            44:
        !            45:   -- DESCRIPTION ;
        !            46:   --   Given a collection of simplices, the appropiate connections
        !            47:   --   between the simplices will be computed and made.
        !            48:
        !            49:   procedure Flatten ( t : in out Triangulation );
        !            50:
        !            51:   -- DESCRIPTION :
        !            52:   --   All simplices in t will be flattened.
        !            53:
        !            54:   -- REQUIRED :
        !            55:   --   Cells that are already flattened are grouped at the end of the list.
        !            56:
        !            57: -- SELECTORS :
        !            58:
        !            59:   function Is_Vertex ( t : Triangulation; x : Vector ) return boolean;
        !            60:
        !            61:   -- DESCRIPTION :
        !            62:   --   Returns true if the given vector x is a vertex of one of
        !            63:   --   the simplices in t.
        !            64:
        !            65:   function Vertices ( t : Triangulation ) return VecVec;
        !            66:
        !            67:   -- DESCRIPTION :
        !            68:   --   Returns a vector with all vertices of the simplices in t.
        !            69:
        !            70:   function Vertices ( t : Triangulation; x : Vector ) return VecVec;
        !            71:
        !            72:   -- DESCRIPTION :
        !            73:   --   Returns a vector with all vertices of the simplices in t,
        !            74:   --   which contain the given vector x.
        !            75:
        !            76:   function Is_In ( t : Triangulation; x : Vector ) return boolean;
        !            77:
        !            78:   -- DESCRIPTION :
        !            79:   --   Returns true if the point x belongs to one of the simplices in t.
        !            80:
        !            81:   function Is_In ( t : Triangulation; x : Vector ) return Simplex;
        !            82:
        !            83:   -- DESCRIPTION :
        !            84:   --   If the point belongs to one of the simplices in t, then this
        !            85:   --   simplex is returned, otherwise, the Null_Simplex is returned.
        !            86:
        !            87:   function Is_In ( t : Triangulation; s : Simplex ) return boolean;
        !            88:
        !            89:   -- DESCRIPTION :
        !            90:   --   Returns true if the simplex s is contained in t.
        !            91:
        !            92:   function Volume ( t : Triangulation ) return natural;
        !            93:
        !            94:   -- DESCRIPTION :
        !            95:   --   Computes n! times the volume of the simplices in the triangulation.
        !            96:
        !            97: -- DESTRUCTOR :
        !            98:
        !            99:   procedure Clear ( t : in out Triangulation );
        !           100:
        !           101:   -- DESCRIPTION :
        !           102:   --   Frees the allocated memory space.
        !           103:
        !           104: end Triangulations;

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