# NAME

expand_hull - Increases a hull using a relative error model
# SYNOPSIS

#include "h/h_misc.h"
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-I/home/kobus/include
-L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
Hull *expand_hull
(
const Hull *hp,
double relative_expansion,
unsigned long options
);

# DESCRIPTION

This routine increases a hull assuming a relative error model. Under "exact"
expansion, each point is replace by an error box, using the relative error,
and the resulting convex hull is round. Exact expansion can lead to precision
problems, so non-exact expansion was developed whereby the error box (eight
points in 3D) is trimmed to one, specifically the point which is furthest
away from the hull. Thus the expanded hull does not (typically) have any more
facets than the original. (The problem with exact expansion is that it
creates many small facets.) Unfortunately, non-exact expansion is
computationally expensive. The choice between exact and non-exact expansion
is governed by the user settable options "expand-hulls-exactly".
# RETURNS

A pointer to the expanded hull. If there are problems, an error message is
set, and NULL is returned.
# DISCLAIMER

This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.
# AUTHOR

Kobus Barnard
# DOCUMENTER

Kobus Barnard
# SEE ALSO

get_interior_distance_to_hull
,
get_distance_to_hull
,
get_approximate_error_hull_data
,
trim_2D_hull