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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Implift/ts_fewsolve.adb, Revision 1.1

1.1     ! maekawa     1: with text_io,integer_io;                 use text_io,integer_io;
        !             2: with Communications_with_User;           use Communications_with_User;
        !             3: with Standard_Floating_Numbers;          use Standard_Floating_Numbers;
        !             4: with Numbers_io;                         use Numbers_io;
        !             5: with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
        !             6: with Standard_Complex_Poly_Systems_io;   use Standard_Complex_Poly_Systems_io;
        !             7: with Standard_Complex_Laur_Systems;      use Standard_Complex_Laur_Systems;
        !             8: with Standard_Poly_Laur_Convertors;      use Standard_Poly_Laur_Convertors;
        !             9: with Standard_Complex_Solutions;         use Standard_Complex_Solutions;
        !            10: with Standard_Complex_Solutions_io;      use Standard_Complex_Solutions_io;
        !            11: with Standard_Root_Refiners;             use Standard_Root_Refiners;
        !            12: with Transforming_Laurent_Systems;       use Transforming_Laurent_Systems;
        !            13: with Fewnomial_System_Solvers;           use Fewnomial_System_Solvers;
        !            14:
        !            15: procedure ts_fewsolve is
        !            16:
        !            17: -- DESCRIPTION :
        !            18: --   Test on the resolution of fewnomial systems.
        !            19:
        !            20:   ans : character;
        !            21:   lp : Link_to_Poly_Sys;
        !            22:
        !            23:   procedure Call_Root_Refiner ( file : in file_type; p : in Poly_Sys;
        !            24:                                 sols : in out Solution_List ) is
        !            25:
        !            26:     epsxa,epsfa,tolsing : double_float;
        !            27:     numit : natural;
        !            28:     max : constant natural := 5;
        !            29:
        !            30:   begin
        !            31:     epsxa := 1.0E-14;
        !            32:     epsfa := 1.0E-14;
        !            33:     tolsing := 1.0E-08;
        !            34:     Reporting_Root_Refiner(file,p,sols,epsxa,epsfa,tolsing,numit,max,false);
        !            35:   end Call_Root_Refiner;
        !            36:
        !            37: begin
        !            38:   loop
        !            39:     get(lp);
        !            40:     declare
        !            41:       l : Laur_Sys(lp'range) := Polynomial_to_Laurent_System(lp.all);
        !            42:       sols : Solution_List;
        !            43:       fail : boolean;
        !            44:     begin
        !            45:       Shift(l);
        !            46:       if not Is_Fewnomial_System(l)
        !            47:        then put_line("The system has too many terms ...");
        !            48:        else Solve(l,sols,fail);
        !            49:             if fail
        !            50:              then put_line("A failure occured ...");
        !            51:              else put_line("These are the solutions : ");
        !            52:                   Call_Root_Refiner(Standard_Output,lp.all,sols);
        !            53:             end if;
        !            54:       end if;
        !            55:       Clear(sols); Clear(lp); Clear(l);
        !            56:     end;
        !            57:     put("Do you want more tests ? (y/n) "); Ask_Yes_or_No(ans);
        !            58:     exit when ans /= 'y';
        !            59:   end loop;
        !            60: end ts_fewsolve;

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