cvt_metric, a MATLAB code which computes a Centroidal Voronoi Tessellation (CVT) calculation under a user-specified spatially varying metric function.
What we are saying is that the distance between two vectors a and b is no longer simply the Euclidean distance, but rather a quadratic form involving a spatially varying, positive definite symmetric matrix that represents the metric:
d(a,b) = ( a - b )' * A * ( a - b )We assume that A varies spatially, but we would prefer to simplify this variation in a manner that saves us computational effort, while allowing us to recover the variational behavior if we are willing to use a finer spatial sampling.
The metric function is distinct from the density function, which can also be used in these kinds of problems. The density function is weaker, and corresponds to a metric whose matrix at any point is a multiple of the identity matrix. A density function approach cannot result in the more interesting anisotropic effects that an arbitrary metric produces.
The information on this web page is distributed under the MIT license.
cvt_metric is available in a MATLAB version and an Octave version.
cvt_1d_lloyd, a MATLAB code which computes an N-point Centroidal Voronoi Tessellation (CVT) within the interval [0,1], under a uniform density.
cvt_1d_nonuniform, a MATLAB code which allows the user to watch the evolution of a CVT computed over a 1D interval with a nonuniform density.
cvt_2d_sampling, a MATLAB code which computes an N-point Centroidal Voronoi Tessellation (CVT) within the unit square [0,1]x[0,1], under a uniform density, using sampling to estimate the Voronoi regions.
cvt_circle_uniform, a MATLAB code which calculates a Centroidal Voronoi Tessellation (CVT) over a circle with uniform density.
cvt_demo, a MATLAB code which allows the user to generate a CVT over several geometric regions using uniform or nonuniform density.
cvtm_1d, a MATLAB code which estimates a mirror-periodic centroidal Voronoi Tessellation (CVTM) in the periodic interval [0,1], using a version of Lloyd's iteration.
cvtp_1d, a MATLAB code which estimates a periodic centroidal Voronoi Tessellation (CVTP) in the periodic interval [0,1], using a version of Lloyd's iteration.
florida_cvt_geo, a MATLAB code which creates a centroidal Voronoi Tessellation (CVT) of the state of Florida, based solely on geometric considerations.
lcvt, a MATLAB code which computes a Latinized Centroidal Voronoi Tessellation.
test_triangulation, a MATLAB code which defines the geometry of a number of sample regions.