Annotation of OpenXM_contrib/PHC/Ada/Math_Lib/Numbers/multprec_complex_number_tools.adb, Revision 1.1.1.1
1.1 maekawa 1: with Standard_Floating_Numbers; use Standard_Floating_Numbers;
2: with Multprec_Floating_Numbers; use Multprec_Floating_Numbers;
3:
4: package body Multprec_Complex_Number_Tools is
5:
6: function Create ( c : Standard_Complex_Numbers.Complex_Number )
7: return Multprec_Complex_Numbers.Complex_Number is
8:
9: cre : double_float := Standard_Complex_Numbers.REAL_PART(c);
10: cim : double_float := Standard_Complex_Numbers.IMAG_PART(c);
11: rre : Floating_Number := Multprec_Floating_Numbers.Create(cre);
12: rim : Floating_Number := Multprec_Floating_Numbers.Create(cim);
13: res : Multprec_Complex_Numbers.Complex_Number
14: := Multprec_Complex_Numbers.Create(rre,rim);
15:
16: begin
17: Clear(rre); Clear(rim);
18: return res;
19: end Create;
20:
21: procedure Set_Size ( c : in out Multprec_Complex_Numbers.Complex_Number;
22: size : in natural ) is
23:
24: cre : Floating_Number := Multprec_Complex_Numbers.REAL_PART(c);
25: cim : Floating_Number := Multprec_Complex_Numbers.IMAG_PART(c);
26:
27: begin
28: Set_Size(cre,size);
29: Set_Size(cim,size);
30: Multprec_Complex_Numbers.Clear(c);
31: c := Multprec_Complex_Numbers.Create(cre,cim);
32: Clear(cre); Clear(cim);
33: end Set_Size;
34:
35: end Multprec_Complex_Number_Tools;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>