[BACK]Return to matrix_homotopies.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Schubert

Annotation of OpenXM_contrib/PHC/Ada/Schubert/matrix_homotopies.ads, Revision 1.1.1.1

1.1       maekawa     1: with Standard_Complex_Numbers;          use Standard_Complex_Numbers;
                      2: with Standard_Complex_Matrices;         use Standard_Complex_Matrices;
                      3:
                      4: package Matrix_Homotopies is
                      5:
                      6: -- DESCRIPTION :
                      7: --   This package provides an abstraction for dealing with homotopies of matrices.
                      8: --   In particular, we can store and evaluate n different couples of start and
                      9: --   target matrices, defining the matrix(t) := (1-t)*start + t*target.
                     10:
                     11: -- CREATORS :
                     12:
                     13:   procedure Init ( n : in natural );
                     14:
                     15:   -- DESCRIPTION :
                     16:   --   Reserves space for n matrix homotopies.
                     17:
                     18:   procedure Add ( start,target : in Matrix );
                     19:
                     20:   -- DESCRIPTION :
                     21:   --   Adds a new couple to the matrix homotopies.
                     22:
                     23:   -- REQUIRED : start'range(1) = target'range(1) = 1..n
                     24:   --        and start'range(2) = target'range(2) = 1..m,
                     25:   --        and not exceed initial capacity n.
                     26:
                     27:   procedure Add_Start ( mapno : in natural; start : in Matrix );
                     28:   procedure Add_Target ( mapno : in natural; target : in Matrix );
                     29:
                     30:   -- DESCRIPTION :
                     31:   --   Adds the start or target system for the indicated map.
                     32:   --   This can also be used to modify the homotopies.
                     33:
                     34:   -- REQUIRED : mapno <= n, start and target should have same dimensions.
                     35:
                     36: -- SELECTOR :
                     37:
                     38:   function Empty ( mapno : natural ) return boolean;
                     39:
                     40:   -- DESCRIPTION :
                     41:   --   Returns true if the matrix homotopy indicated by mapno is empty.
                     42:
                     43:   function Cardinality return natural;
                     44:
                     45:   -- DESCRIPTION :
                     46:   --   Returns the number of matrix homotopies that have been added.
                     47:
                     48: -- EVALUATOR :
                     49:
                     50:   function Eval ( mapno : natural; t : Complex_Number ) return Matrix;
                     51:
                     52:   -- DESCRIPTION :
                     53:   --   Evaluates the kth matrix homotopy at t, with k = mapno.
                     54:
                     55:   -- REQUIRED : mapno <= n.
                     56:
                     57: -- DESTRUCTOR :
                     58:
                     59:   procedure Clear;
                     60:
                     61:   -- DESCRIPTION :
                     62:   --   Destroys all matrices.
                     63:
                     64: end Matrix_Homotopies;

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