Zpolyhedron.c File Reference

#include <polylib/polylib.h>
#include <stdlib.h>

Go to the source code of this file.

Classes

struct  forsimplify

Typedefs

typedef struct forsimplify ForSimplify

Functions

static ZPolyhedronZPolyhedronIntersection (ZPolyhedron *, ZPolyhedron *)
static ZPolyhedronZPolyhedron_Copy (ZPolyhedron *A)
static void ZPolyhedron_Free (ZPolyhedron *Zpol)
static ZPolyhedronZPolyhedronDifference (ZPolyhedron *, ZPolyhedron *)
static ZPolyhedronZPolyhedronImage (ZPolyhedron *, Matrix *)
static ZPolyhedronZPolyhedronPreimage (ZPolyhedron *, Matrix *)
static ZPolyhedronAddZPolytoZDomain (ZPolyhedron *A, ZPolyhedron *Head)
static void ZPolyhedronPrint (FILE *fp, const char *format, ZPolyhedron *A)
Bool isEmptyZPolyhedron (ZPolyhedron *Zpol)
ZPolyhedronZPolyhedron_Alloc (Lattice *Lat, Polyhedron *Poly)
void ZDomain_Free (ZPolyhedron *Head)
ZPolyhedronZDomain_Copy (ZPolyhedron *Head)
static ZPolyhedronAddZPoly2ZDomain (ZPolyhedron *Zpol, ZPolyhedron *Result)
ZPolyhedronEmptyZPolyhedron (int dimension)
Bool ZDomainIncludes (ZPolyhedron *A, ZPolyhedron *B)
Bool ZPolyhedronIncludes (ZPolyhedron *A, ZPolyhedron *B)
void ZDomainPrint (FILE *fp, const char *format, ZPolyhedron *A)
ZPolyhedronZDomainUnion (ZPolyhedron *A, ZPolyhedron *B)
ZPolyhedronZDomainIntersection (ZPolyhedron *A, ZPolyhedron *B)
ZPolyhedronZDomainDifference (ZPolyhedron *A, ZPolyhedron *B)
ZPolyhedronZDomainImage (ZPolyhedron *A, Matrix *Func)
ZPolyhedronZDomainPreimage (ZPolyhedron *A, Matrix *Func)
void CanonicalForm (ZPolyhedron *Zpol, ZPolyhedron **Result, Matrix **Basis)
ZPolyhedronIntegraliseLattice (ZPolyhedron *A)
ZPolyhedronZDomainSimplify (ZPolyhedron *ZDom)
ZPolyhedronSplitZpolyhedron (ZPolyhedron *ZPol, Lattice *B)

Typedef Documentation

typedef struct forsimplify ForSimplify

Function Documentation

static ZPolyhedron* AddZPoly2ZDomain ( ZPolyhedron Zpol,
ZPolyhedron Result 
) [static]
static ZPolyhedron * AddZPolytoZDomain ( ZPolyhedron A,
ZPolyhedron Head 
) [static]
void CanonicalForm ( ZPolyhedron Zpol,
ZPolyhedron **  Result,
Matrix **  Basis 
)
ZPolyhedron* EmptyZPolyhedron ( int  dimension  ) 
ZPolyhedron* IntegraliseLattice ( ZPolyhedron A  ) 
Bool isEmptyZPolyhedron ( ZPolyhedron Zpol  ) 
ZPolyhedron* SplitZpolyhedron ( ZPolyhedron ZPol,
Lattice B 
)
ZPolyhedron* ZDomain_Copy ( ZPolyhedron Head  ) 
void ZDomain_Free ( ZPolyhedron Head  ) 
ZPolyhedron* ZDomainDifference ( ZPolyhedron A,
ZPolyhedron B 
)
ZPolyhedron* ZDomainImage ( ZPolyhedron A,
Matrix Func 
)
Bool ZDomainIncludes ( ZPolyhedron A,
ZPolyhedron B 
)

Definition at line 289 of file Zpolyhedron.c.

References False, isEmptyZPolyhedron(), True, ZDomain_Free(), and ZDomainDifference().

ZPolyhedron* ZDomainIntersection ( ZPolyhedron A,
ZPolyhedron B 
)
ZPolyhedron* ZDomainPreimage ( ZPolyhedron A,
Matrix Func 
)
void ZDomainPrint ( FILE *  fp,
const char *  format,
ZPolyhedron A 
)

Definition at line 338 of file Zpolyhedron.c.

References ZPolyhedron::next, ZDomainPrint(), and ZPolyhedronPrint().

Referenced by main(), and ZDomainPrint().

ZPolyhedron* ZDomainSimplify ( ZPolyhedron ZDom  ) 
ZPolyhedron* ZDomainUnion ( ZPolyhedron A,
ZPolyhedron B 
)

Definition at line 374 of file Zpolyhedron.c.

References AddZPolytoZDomain(), and ZPolyhedron::next.

Referenced by main(), and ZDomainSimplify().

ZPolyhedron* ZPolyhedron_Alloc ( Lattice Lat,
Polyhedron Poly 
)
static ZPolyhedron * ZPolyhedron_Copy ( ZPolyhedron A  )  [static]
static void ZPolyhedron_Free ( ZPolyhedron Zpol  )  [static]
static ZPolyhedron * ZPolyhedronDifference ( ZPolyhedron A,
ZPolyhedron B 
) [static]
static ZPolyhedron * ZPolyhedronImage ( ZPolyhedron ZPol,
Matrix Func 
) [static]
Bool ZPolyhedronIncludes ( ZPolyhedron A,
ZPolyhedron B 
)
static ZPolyhedron * ZPolyhedronIntersection ( ZPolyhedron A,
ZPolyhedron B 
) [static]
static ZPolyhedron * ZPolyhedronPreimage ( ZPolyhedron Zpol,
Matrix G 
) [static]
static void ZPolyhedronPrint ( FILE *  fp,
const char *  format,
ZPolyhedron A 
) [static]

Definition at line 358 of file Zpolyhedron.c.

References ZPolyhedron::Lat, Matrix_Print(), matrix::NbRows, ZPolyhedron::P, and Polyhedron_Print().

Referenced by ZDomainPrint().


Generated on Wed Nov 25 17:45:27 2009 for polylib by  doxygen 1.6.1