Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Dynlift/dynamic_lifting_functions.ads, Revision 1.1.1.1
1.1 maekawa 1: with Standard_Integer_Vectors; use Standard_Integer_Vectors;
2: with Simplices,Triangulations; use Simplices,Triangulations;
3:
4: package Dynamic_Lifting_Functions is
5:
6: -- DESCRIPTION :
7: -- This package contains operations to control the lifting function
8: -- in order to obtain triangulations either by placing or by pulling.
9:
10: function Lift_to_Place ( s : Simplex; x : Vector ) return integer;
11: function Lift_to_Place ( t : Triangulation; x : Vector ) return integer;
12:
13: -- DESCRIPTION :
14: -- Determines the next value of the lifting function for the given
15: -- point x w.r.t. each simplex s, such that the product of the inner
16: -- normal of s with x is higher than the product with any point in s.
17:
18: -- REQUIRED :
19: -- x(x'last) provides a lower bound for the lifting function.
20: -- To obtain an optimal lifting, x(x'last) can be set equal to 1.
21:
22: function Lift_to_Pull ( s : Simplex; x : Vector ) return integer;
23: function Lift_to_Pull ( t : Triangulation; x : Vector ) return integer;
24:
25: -- DESCRIPTION :
26: -- Determines the lifting value of x such that the product of the inner
27: -- normal of each simplex s with x is strictly lower than the product
28: -- with any point of s.
29: -- The lifting value such that x can be pulled in s will be returned.
30:
31: -- REQUIRED :
32: -- x(x'last) contains already a lower bound on the lifting for x.
33: -- To obtain an optimal lifting, x(x'last) can be set equal to -1.
34:
35: function Degenerate ( t : Triangulation; x : Vector ) return boolean;
36:
37: -- DESCRIPTION :
38: -- Returns true if there exists a cell in t, such that the lifted point
39: -- x lies in the same hyperplane as the corresponding simplex on the
40: -- lower hull.
41:
42: function Lift_to_Pull ( t1,t2 : Triangulation; x : Vector ) return integer;
43:
44: -- DESCRIPTION :
45: -- Determines the lifting value of x such that for all cells in t1,
46: -- the inner product of the inner normal with x is strictly lower
47: -- than the inner product with any point of that cell.
48: -- The triangulation t2 is used to be guarantee that the lifting does
49: -- not induce a degeneracy in the lower hull.
50: -- The lifting value such that x can be pulled in t will be returned.
51:
52: -- REQUIRED :
53: -- x(x'last) contains already a lower bound on the lifting for x.
54: -- To obtain an optimal lifting, x(x'last) can be set equal to -1.
55:
56: end Dynamic_Lifting_Functions;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>