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

File: [local] / OpenXM_contrib / PHC / Ada / Schubert / drivers_for_input_planes.ads (download)

Revision 1.1.1.1 (vendor branch), Sun Oct 29 17:45:33 2000 UTC (23 years, 6 months ago) by maekawa
Branch: PHC, MAIN
CVS Tags: v2, maekawa-ipv6, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, HEAD
Changes since 1.1: +0 -0 lines

Import the second public release of PHCpack.

OKed by Jan Verschelde.

with text_io;                            use text_io;
with Brackets;                           use Brackets;
with Standard_Floating_Vectors;          use Standard_Floating_Vectors;
with Standard_Complex_VecMats;           use Standard_Complex_VecMats;

package Drivers_for_Input_Planes is

-- DESCRIPTION :
--   This package provides menu's to generate random and real input planes
--   for the three types of Pieri homotopies.
--   The open design of the package is due to its use in both the usual
--   as in the quantum Pieri homotopies.

-- READING CO-DIMENSION CONDITIONS :

  function Read_Codimensions ( m,p,q : natural ) return Bracket;

  -- DESCRIPTION :
  --   Reads the vector of co-dimensions with a test whether these
  --   co-dimensions condition will lead to a finite number of solutions.

-- PRIMITIVES :

  function Random_Complex_Planes ( m,p : natural ) return VecMat;
  function Random_Real_Planes    ( m,p : natural ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of range 1..m*p with random complex/real m-planes,
  --   with the columns orthonormalized.

  function Random_Complex_Planes ( m,p : natural; k : Bracket ) return VecMat;
  function Random_Real_Planes    ( m,p : natural; k : Bracket ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of the same range as k with random (m+1-k(i))-planes,
  --   with the columns orthonormalized.

  function Random_Complex_Planes ( m,p,q : natural ) return VecMat;
  function Random_Real_Planes    ( m,p,q : natural ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of range 1..m*p+q*(m+p) with random complex or real
  --   m-planes, --   with the columns orthonormalized.

  function Equidistant_Interpolation_Points ( n : natural ) return Vector;

  -- DESCRIPTION :
  --   Generates n equidistant interpolation points in [-1,+1],
  --   starting at a random value.

  function Read_Interpolation_Points ( n : natural ) return Vector;

  -- DESCRIPTION :
  --   Reads n s-values from standard input.

  function Osculating_Input_Planes ( m,p : natural ) return VecMat;
  function Osculating_Input_Planes ( m,p : natural; s : Vector ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of range 1..m*p with real m-planes osculating
  --   a rational normal curve, sampled at equidistant points in [-1,+1],
  --   or, if specified at the given s-values.

  function Osculating_Input_Planes
             ( m,p : natural; k : Bracket ) return VecMat;
  function Osculating_Input_Planes
             ( m,p : natural; k : Bracket; s : Vector ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of the same range as k with real (m+1-k(i))-planes
  --   osculating a rational normal curve, sampled at equidistant points
  --   in [-1,+1], or, if specified at the given s-values.

  function Osculating_Input_Planes ( m,p,q : natural ) return VecMat;
  function Osculating_Input_Planes
             ( m,p,q : natural; s : Vector ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of the range 1..m*p+q*(m+p) with real m-planes
  --   osculating a rational normal curve, sampled at equidistant points
  --   in [-1,+1], or, if specified at the given s-values.

  function Read_Input_Planes ( m,p : natural ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of range 1..m*p with real m-planes retrieved from
  --   a file given by the user after calling this function.
  --   The matrices on return have their columns orthonormalized.

  function Read_Input_Planes ( m,p : natural; k : Bracket ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of the same range as k with real (m+1-k(i))-planes 
  --   retrieved from a file given by the user after calling this function.
  --   The matrices on return have their columns orthonormalized.

  function Read_Input_Planes ( m,p,q : natural ) return VecMat;

  -- DESCRIPTION :
  --   Returns a vector of range 1..m*p+q*(m+p) with real m-planes retrieved
  --   from a file given by the user after calling this function.
  --   The matrices on return have their columns orthonormalized.

-- MAIN INTERACTIVE DRIVERS :

  procedure Driver_for_Input_Planes
              ( file : in file_type; m,p : in natural; planes : out VecMat );

  -- DESCRIPTION :
  --   Generates m-planes as input to the hypersurface Pieri algorithm.

  -- ON ENTRY :
  --   file     to write output logistics on;
  --   m        dimension of the input planes, number of columns;
  --   p        dimension of the output planes, m+p = number of rows.

  -- ON RETURN :
  --   planes   vector of range 1..m*p with m-planes in dimension m+p.

  procedure Driver_for_Input_Planes
              ( file : in file_type; m,p : in natural; k : in Bracket;
                planes : out VecMat );

  -- DESCRIPTION :
  --   Generates m-planes as input to the general Pieri algorithm.

  -- ON ENTRY :
  --   file     to write output logistics on;
  --   m        number of columns of the input planes is m+1-k(i);
  --   p        dimension of the output planes, m+p = number of rows;
  --   k        co-dimension conditions of the input planes.

  -- ON RETURN :
  --   planes   vector of same range as k with (m+1-k(i))-planes in
  --            a space of dimension m+p.

  procedure Driver_for_Input_Planes
              ( file : in file_type; m,p,q : in natural;
                s : out Vector; planes : out VecMat );

  -- DESCRIPTION :
  --   Generates m-planes as input to the quantum Pieri algorithm.

  -- ON ENTRY :
  --   file     to write output logistics on;
  --   m        number of columns of the input planes is m+1-k(i);
  --   p        dimension of the output planes, m+p = number of rows;
  --   q        degree of the output maps.

  -- ON RETURN :
  --   s        vector of range 1..m*p+q*(m+p) of interpolation points;
  --   planes   vector of range 1..m*p+q*(m+p) with m-planes in
  --            a space of dimension m+p, sampled at s-values.

end Drivers_for_Input_Planes;