#include <polylib/polylib.h>
Go to the source code of this file.
Defines | |
#define | HOMOGENIZATTON_H |
homogenization.h -- Bavo Nootaert * | |
Functions | |
Polyhedron * | homogenize (Polyhedron *P, unsigned MAXRAYS) |
void | dehomogenize_evalue (evalue *ep, int nb_param) |
dehomogenize an evalue. | |
void | dehomogenize_enode (enode *p, int nb_param) |
dehomogenize all evalues in an enode. | |
void | dehomogenize_enumeration (Enumeration *en, int nb_param, int maxRays) |
dehomogenize an enumeration. | |
Polyhedron * | dehomogenize_polyhedron (Polyhedron *p, int maxRays) |
dehomogenize a polyhedron. |
|
homogenization.h -- Bavo Nootaert *
Definition at line 3 of file homogenization.h. |
|
dehomogenize all evalues in an enode. This function is mutually recursive with dehomogenize_evalue. Definition at line 60 of file homogenization.c. References dehomogenize_evalue(), enode, evalue, and p. Referenced by dehomogenize_evalue(). |
|
dehomogenize an enumeration. Replaces each validity domain and Ehrhart polynomial in the Enumeration en with the dehomogenized form. Definition at line 155 of file homogenization.c. References dehomogenize_evalue(), dehomogenize_polyhedron(), Enumeration, _enumeration::EP, maxRays, _enumeration::next, Polyhedron, Polyhedron_Free(), and _enumeration::ValidityDomain. Referenced by main(). |
|
dehomogenize an evalue. The last parameter (nb_param) is replaced by 1. This function is mutually recursive with dehomogenize_enode. cannot dehomogenize rationals * we need to replace the last parameter * Not the last parameter. Recurse * Definition at line 31 of file homogenization.c. References _evalue::d, dehomogenize_enode(), dehomogenize_periodic(), dehomogenize_polynomial(), evalue, free_evalue_refs(), periodic, and value_zero_p. Referenced by dehomogenize_enode(), dehomogenize_enumeration(), and Polyhedron_Enumerate(). |
|
dehomogenize a polyhedron. Assume the polyhedron p is homogenous. Returns a new polyhedron. Definition at line 138 of file homogenization.c. References Constraints2Polyhedron(), Matrix, Matrix_Alloc(), Matrix_Free(), maxRays, matrix::NbColumns, matrix::NbRows, matrix::p, p, Polyhedron, Polyhedron2Constraints(), and Vector_Copy(). Referenced by dehomogenize_enumeration(). |
|
Definition at line 14 of file homogenization.c. References AddANullColumn(), polyhedron::Constraint, Constraints2Polyhedron(), polyhedron::Dimension, Matrix, Matrix_Free(), MAXRAYS, matrix::NbColumns, polyhedron::NbConstraints, matrix::NbRows, matrix::p, polyhedron::p_Init, matrix::p_Init, and Polyhedron. Referenced by Polyhedron_Enumerate(). |