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

File: [local] / OpenXM_contrib / PHC / Ada / Main / phcpack.ads (download)

Revision 1.1.1.1 (vendor branch), Sun Oct 29 17:45:23 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 Standard_Complex_Numbers;           use Standard_Complex_Numbers;
with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
with Standard_Complex_Solutions;         use Standard_Complex_Solutions;

package PHCPACK is

-- DESCRIPTION :
--   PHC is a numerical general-purpose solver for polynomial systems by
--   homotopy continuation.  This package collects all major features of
--   the package as organized according to the four stages of the solver.

-- 1. PRE-PROCESSING : SCALING AND REDUCTION

  procedure Equation_Scaling
                 ( file : in file_type; p : in Poly_Sys; s : out Poly_Sys );

  -- DESCRIPTION : equation scaling by dividing average coefficient.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           a polynomial system.

  -- ON RETURN :
  --   s           a scaled polynomial system.

  procedure Linear_Reduction
                 ( file : in file_type; p : in Poly_Sys; r : out Poly_Sys );

  -- DESCRIPTION : linear reduction of the coefficient matrix of p.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           a polynomial system.

  -- ON RETURN :
  --   r           a polynomial system with reduced coefficient matrix.

-- 2. ROOT COUNTING AND CONSTRUCTION OF START SYSTEM

  procedure Total_Degree
                 ( file : in file_type; p : in Poly_Sys; d : out natural );

  -- DESCRIPTION : computation of the total degree.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           a polynomial system.

  -- ON RETURN :
  --   d           total degree of the system p.

  procedure Total_Degree
                 ( file : in file_type; p : in Poly_Sys; d : out natural;
                   q : out Poly_Sys; qsols : out Solution_List );

  -- DESCRIPTION : construction of start system based on total degree.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           a polynomial system.

  -- ON RETURN :
  --   d           total degree of the system p.
  --   q           start system with same total degree as p;
  --   qsols       solutions of q.

  procedure Implicit_Lifting
                 ( file : in file_type; p : in Poly_Sys; mv : out natural );

  -- DESCRIPTION : computation of mixed volume by implicit lifting.

  procedure Implicit_Lifting
                 ( file : in file_type; p : in Poly_Sys; mv : out natural;
                   q : out Poly_Sys; qsols : out Solution_List );

  -- DESCRIPTION : construction of start system by implicit polyhedral homotopy.

  procedure Static_Lifting
                 ( file : in file_type; p : in Poly_Sys; mv : out natural );

  -- DESCRIPTION : computation of mixed volume by static lifting.

  procedure Static_Lifting
                 ( file : in file_type; p : in Poly_Sys; mv : out natural;
                   q : out Poly_Sys; qsols : out Solution_List );

  -- DESCRIPTION : construction of start system by static polyhedral homotopy.

-- 3. POLYNOMIAL CONTINUATION

  procedure Artificial_Parameter_Continuation
                 ( file : in file_type; p,q : in Poly_Sys;
                   sols : in out Solution_List;
                   k : in natural := 2;
                   a : in Complex_Number := Create(1.0);
                   target : in Complex_Number := Create(1.0) );

  -- DESCRIPTION : continuation with the artificial-parameter homotopy
  --   h(x,t) = a*(1-t)^k*q(x) + t^k*p(x) = 0, for t going to the target.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           target system;
  --   q           start system;
  --   sols        start solutions;
  --   k           smoothing parameter to simulate small steps;
  --   a           random complex number to ensure regularity;
  --   target      target value for continuation parameter.

  -- ON RETURN :
  --   sols        solutions for t = target.

  procedure Natural_Parameter_Continuation
                 ( file : in file_type; h : in Poly_Sys; k : in natural;
                   t0,t1 : in Complex_Number; sols : in out Solution_List );

  -- DESCRIPTION : continuation with a natural-parameter homotopy.

-- 4. POST-PROCESSING : VALIDATION

  procedure Refine_Roots 
                 ( file : in file_type; p : in Poly_Sys;
                   sols : in out Solution_List );

  -- DESCRIPTION : refines the roots and puts a report on file.

  -- ON ENTRY :
  --   file        to write results on, must be opened for output;
  --   p           a polynomial system system;
  --   sols        approximate solutions.

  -- ON RETURN :
  --   sols        refined solutions.

end PHCPACK;