[BACK]Return to standard_poly_laur_convertors.adb CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Math_Lib / Polynomials

Annotation of OpenXM_contrib/PHC/Ada/Math_Lib/Polynomials/standard_poly_laur_convertors.adb, Revision 1.1.1.1

1.1       maekawa     1: with Standard_Complex_Numbers;           use Standard_Complex_Numbers;
                      2: with Standard_Integer_Vectors;
                      3:
                      4: package body Standard_Poly_Laur_Convertors is
                      5:
                      6:   function Polynomial_to_Laurent_Polynomial
                      7:              ( p : Standard_Complex_Polynomials.Poly )
                      8:              return Standard_Complex_Laur_Polys.Poly is
                      9:
                     10:     res : Standard_Complex_Laur_Polys.Poly
                     11:         := Standard_Complex_Laur_Polys.Null_Poly;
                     12:
                     13:     use Standard_Complex_Polynomials;
                     14:
                     15:     procedure Term_to_Laurent_Term ( t : in Term; cont : out boolean ) is
                     16:
                     17:       rt : Standard_Complex_Laur_Polys.Term;
                     18:
                     19:     begin
                     20:       rt.cf := t.cf;
                     21:       rt.dg := new Standard_Integer_Vectors.Vector(t.dg'range);
                     22:       for i in t.dg'range loop
                     23:         rt.dg(i) := t.dg(i);
                     24:       end loop;
                     25:       Standard_Complex_Laur_Polys.Add(res,rt);
                     26:       Standard_Complex_Laur_Polys.Clear(rt);
                     27:       cont := true;
                     28:     end Term_to_Laurent_Term;
                     29:     procedure P2LP is new Visiting_Iterator(Term_to_Laurent_Term);
                     30:
                     31:   begin
                     32:     P2LP(p);
                     33:     return res;
                     34:   end Polynomial_to_Laurent_Polynomial;
                     35:
                     36:   function Polynomial_to_Laurent_System ( p : Poly_Sys ) return Laur_Sys is
                     37:
                     38:     res : Laur_Sys(p'range);
                     39:
                     40:   begin
                     41:     for i in p'range loop
                     42:       res(i) := Polynomial_to_Laurent_Polynomial(p(i));
                     43:     end loop;
                     44:     return res;
                     45:   end Polynomial_to_Laurent_System;
                     46:
                     47: end Standard_Poly_Laur_Convertors;

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