Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Stalift/floating_pruning_methods.ads, Revision 1.1.1.1
1.1 maekawa 1: with Standard_Floating_Numbers; use Standard_Floating_Numbers;
2: with Standard_Integer_Vectors; use Standard_Integer_Vectors;
3: with Standard_Floating_Vectors;
4: with Arrays_of_Floating_Vector_Lists; use Arrays_of_Floating_Vector_Lists;
5: with Floating_Faces_of_Polytope; use Floating_Faces_of_Polytope;
6: with Floating_Mixed_Subdivisions; use Floating_Mixed_Subdivisions;
7:
8: package Floating_Pruning_Methods is
9:
10: -- DESCRIPTION :
11: -- This package contains the creators of a regular mixed subdivision,
12: -- based on the static lifting algorithm, for computing only those cells
13: -- of a certain type, in particular the mixed cells.
14: -- There are facilities for computing only the generating cells and for
15: -- computing only the stable mixed cells.
16:
17: generic
18:
19: with procedure Process ( mic : in Mixed_Cell; continue : out boolean );
20:
21: -- DESCRIPTION :
22: -- This procedure will be invoked after each computation of a new cell.
23: -- If the parameter continue is set on false, then the computation will
24: -- be stopped, otherwise the creation continues.
25:
26: procedure Gen1_Create
27: ( n : in natural; mix : in Vector; fa : in Array_of_Faces;
28: lifted : in Array_of_Lists; tol : in double_float;
29: nbsucc,nbfail : in out Standard_Floating_Vectors.Vector;
30: mixsub : out Mixed_Subdivision );
31:
32: procedure Create
33: ( n : in natural; mix : in Vector; fa : in Array_of_Faces;
34: lifted : in Array_of_Lists; tol : in double_float;
35: nbsucc,nbfail : in out Standard_Floating_Vectors.Vector;
36: mixsub : out Mixed_Subdivision );
37:
38: -- DESCRIPTION :
39: -- Creates a mixed subdivision with a criterium to check which
40: -- face-face combinations can lead to a cell which contributes to
41: -- the mixed volume.
42:
43: -- ON ENTRY :
44: -- n dimension before lifting;
45: -- mix type of mixture: indicates how many times each polytope
46: -- occurs in the supports;
47: -- fa faces of the lower hull of the lifted point sets:
48: -- fa(i) contains the mix(i)-faces of conv(lifted(i));
49: -- lifted the lifted points;
50: -- tol tolerance on the precision;
51:
52: -- ON RETURN :
53: -- nbsucc number of times a face-face combination has passed the test,
54: -- at each level;
55: -- nbfail number of times a face-face combinations has failed to pass
56: -- the test, at each level;
57: -- mixsub collection of cells which contribute to the mixed volume.
58:
59: end Floating_Pruning_Methods;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>