Annotation of OpenXM_contrib/PHC/Ada/Math_Lib/Matrices/standard_floating_two_norms.adb, Revision 1.1.1.1
1.1 maekawa 1: with Standard_Mathematical_Functions; use Standard_Mathematical_Functions;
2:
3: package body Standard_Floating_Two_Norms is
4:
5: function Norm2 ( v : Vector ) return double_float is
6:
7: res : double_float := 0.0;
8:
9: begin
10: for i in v'range loop
11: res := res + v(i)*v(i);
12: end loop;
13: res := SQRT(res);
14: return res;
15: end Norm2;
16:
17: procedure Normalize ( v : in out Vector ) is
18:
19: nrm : constant double_float := Norm2(v);
20:
21: begin
22: for i in v'range loop
23: v(i) := v(i)/nrm;
24: end loop;
25: end Normalize;
26:
27: procedure Normalize( v : in out VecVec ) is
28: begin
29: for i in v'range loop
30: Normalize(v(i).all);
31: end loop;
32: end Normalize;
33:
34: end Standard_Floating_Two_Norms;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>