48 zzdef_(
zdoc,
Zdoc3,
"precision problems (corrected unless 'Q0' or an error)", -1);
54 zzdef_(
zinc,
Zminnorm,
"degenerate hyperplanes recomputed with gaussian elimination", -1);
112 zdef_(
zinc,
Znoarea,
"determinants not computed because vertex too low", -1);
128 zdef_(
zdoc,
Zdoc4,
"partitioning statistics(see previous for outer planes)", -1);
198 zdef_(
wmax,
Wmaxoutside,
"max distance of vertex or coplanar point above facet(w/roundoff)", -1);
308 #if qh_KEEPstatistics 317 facetT *facet, *neighbor, **neighborp;
319 realT dotproduct, dist;
320 int sizneighbors, sizridges, sizvertices, i;
322 qh old_randomdist=
qh RANDOMdist;
366 if (sizvertices ==
qh hull_dim) {
420 qh RANDOMdist=
qh old_randomdist;
461 qh_fprintf_stderr(6183,
"qhull error (qh_initstatistics): insufficient memory\n");
478 qh_fprintf(
qhmem.
ferr, 6184,
"qhull error (qh_initstatistics): increase size of qhstat.id[].\n\ 479 qhstat.next %d should be <= sizeof(qhstat id) %d\n",
qhstat next, (
int)
sizeof(
qhstat id));
481 for(i=0; i <
ZEND; i++) {
483 for(j=i+1; j <
ZEND; j++) {
485 qh_fprintf(
qhmem.
ferr, 6185,
"qhull error (qh_initstatistics): duplicated statistic %d at indices %d and %d\n",
500 for(i=0; i <
ZEND; i++) {
552 #if qh_KEEPstatistics 582 if (
qh num_points !=
qh num_vertices) {
592 qhull invoked by: %s | %s\n%s with options:\n%s\n",
string,
qh rbox_command,
594 qh_fprintf(fp, 9351,
"\nprecision constants:\n\ 595 %6.2g max. abs. coordinate in the (transformed) input('Qbd:n')\n\ 596 %6.2g max. roundoff error for distance computation('En')\n\ 597 %6.2g max. roundoff error for angle computations\n\ 598 %6.2g min. distance for outside points ('Wn')\n\ 599 %6.2g min. distance for visible facets ('Vn')\n\ 600 %6.2g max. distance for coplanar facets ('Un')\n\ 601 %6.2g max. facet width for recomputing centrum and area\n\ 603 qh MAXabs_coord,
qh DISTround,
qh ANGLEround,
qh MINoutside,
604 qh MINvisible,
qh MAXcoplanar,
qh WIDEfacet);
605 if (
qh KEEPnearinside)
607 %6.2g max. distance for near-inside points\n",
qh NEARinside);
609 %6.2g max. cosine for pre-merge angle\n",
qh premerge_cos);
611 %6.2g radius of pre-merge centrum\n",
qh premerge_centrum);
613 %6.2g max. cosine for post-merge angle\n",
qh postmerge_cos);
615 %6.2g radius of post-merge centrum\n",
qh postmerge_centrum);
617 %6.2g max. distance for merging two simplicial facets\n\ 618 %6.2g max. roundoff error for arithmetic operations\n\ 619 %6.2g min. denominator for divisions\n\ 621 for(k=0; k <
qh hull_dim; k++)
624 for(i=0 ; i <
qhstat next; )
639 #define NULLfield " " 650 if (
qhstat count[
id] != -1
651 &&
qhstat stats[(
unsigned char)(
qhstat count[
id])].i == 0)
679 for (j=idx; j<nexti; j++)
686 #if qh_KEEPstatistics 706 stddev= sqrt(tot2/num - *ave * *ave);
712 #if !qh_KEEPstatistics
void qh_printstatistics(FILE *fp, const char *string)
void * qh_malloc(size_t size)
void qh_fprintf_stderr(int msgcode, const char *fmt,...)
#define FOREACHvertex_(vertices)
#define zzdef_(stype, name, string, cnt)
void qh_fprintf(FILE *fp, int msgcode, const char *fmt,...)
void qh_collectstatistics(void)
void qh_printstats(FILE *fp, int idx, int *nextindex)
#define qh_DUPLICATEridge
realT qh_getangle(pointT *vect1, pointT *vect2)
void qh_allstatistics(void)
void qh_printallstatistics(FILE *fp, const char *string)
void qh_freestatistics(void)
void qh_exit(int exitcode)
realT qh_stddev(int num, realT tot, realT tot2, realT *ave)
#define FOREACHneighbor_(facet)
void qh_initstatistics(void)
void qh_printstatlevel(FILE *fp, int id)
boolT qh_newstats(int idx, int *nextindex)
void qh_distplane(pointT *point, facetT *facet, realT *dist)
int qh_setsize(setT *set)
#define zdef_(stype, name, string, cnt)
boolT qh_nostatistic(int i)
void qh_memstatistics(FILE *fp)