# Barycentric subdivision

{{ safesubst:#invoke:Unsubst||$N=Refimprove |date=__DATE__ |$B=
{{#invoke:Message box|ambox}}
}}
In geometry, the **barycentric subdivision** is a standard way of dividing an arbitrary convex polygon into triangles, a convex polyhedron into tetrahedra, or, in general, a convex polytope into simplices with the same dimension, by connecting the barycenters of their faces in a specific way.

The name is also used in topology for a similar operation on cell complexes. The result is topologically equivalent to that of the geometric operation, but the parts have arbitrary shape and size. This is an example of a finite subdivision rule.

Both operations have a number of applications in mathematics and in geometric modeling, especially whenever some function or shape needs to be approximated piecewise, e.g. by a spline.

## Barycentric subdivision of a simplex

The barycentric subdivision (henceforth *BCS*) of an -dimensional simplex consists of (*n* + 1)! simplices. Each piece, with vertices , can be associated with a permutation of the vertices of , in such a way that each vertex is the barycenter of the points .

In particular, the BCS of a single point (a 0-dimensional simplex) consists of that point itself. The BCS of a line segment (1-simplex) consists of two smaller segments, each connecting one endpoint (0-dimensional face) of to the midpoint of itself (1-dimensional face).

The BCS of a triangle divides it into six triangles; each part has one vertex at the barycenter of , another one at the midpoint of some side, and the last one at one of the original vertices.

The BCS of a tetrahedron divides it into 24 tetrahedra; each part has one vertex at the center of , one on some face, one along some edge, and the last one at some vertex of .

An important feature of BCS is the fact that the maximal diameter of an dimensional simplex shrinks at least by the factor .^{[1]}

## Barycentric subdivision of a convex polytope

Another way of defining the BCS of a simplex is to associate each part to a sequence of faces of , with increasing dimensions, such that is a facet of , for from 0 to . Then each vertex of the corresponding piece is the barycenter of face .

This alternative definition can be extended to the BCS of an arbitrary -dimensional convex polytope into a number of -simplices. Thus the BCS of a pentagon , for example, has 10 triangles: each triangle is associated to three elements of — respectively, a corner of , a side of incident to that corner, and itself.

Similarly the BCS of a cube consists of 48 tetrahedra, each of them associated to a sequence of nested elements — a vertex, an edge, a face, and the whole cube. Note that there are 8 choices for , 3 for (given ), and 2 for (given ).

## Barycentric subdivision in topology

Barycentric subdivision is an important tool in simplicial homology theory, where it is used as a means of obtaining finer simplicial complexes (containing the original ones, i.e. with more simplices). This in turn is crucial to the simplicial approximation theorem, which roughly states that one can approximate any continuous function between polyhedra by a (finite) simplicial map, given a sufficient amount of subdivision of the respective simplicial complexes whom they realize. Ultimately, this approximation technique is a standard ingredient in the proof that simplicial homology groups are topological invariants.^{[1]}^{[2]}

A generalization of barycentric subdivision can also be defined for a cell complex. Informally, such an object can be thought of as an assemblage of one or more chunks of rubber (*cells*), each shaped like a convex polytope, which are glued to each other by their facets — possibly with much stretching and twisting.

The topological version of BCS replaces each cell by an assemblage of rubber simplices, likewise glued together by their facets and possibly deformed. The procedure is (1) select for each cell a deformation map that converts it into a geometric convex polytope, preserving its incidence and topological connections; (2) perform the geometric BCS on this polytope; and, then (3) map the resulting subdivision back to the original cells.

The result of barycentric subdivision, when viewed as an abstract simplicial complex, is an example of a flag complex. It has one vertex for every cell of the original cell complex and one maximal-dimensional cell for every *flag* (a collection of cells of different dimensions, all related to each other by inclusion) of the original cell complex.

## Applications

The barycentric subdivision is chiefly used to replace an arbitrarily complicated convex polytope or topological cell complex by an assemblage of pieces, all of them of bounded complexity (simplices, in fact). A typical application is modeling the shape of a car body by a spline — a piecewise-defined polynomial function. The algebra of such functions becomes much simpler and easier to program if each "piece" is a "topological triangle", i.e. is attached to exactly three other pieces. However, a human user may find it more natural to design the shape by joining patches with more liberal shapes and topologies. Barycentric subdivision is a convenient way to convert that "user-friendly" model into a "computer-friendly" one.

## Repeated barycentric subdivision

When approximating a mathematical function or a surface by a spline, the accuracy of the approximation is usually determined by the piece size — the bigger the pieces, the larger the error. Thus it is often necessary to split large pieces into smaller ones, in order to achieve a prescribed accuracy.

In theory, BCS could be used for that purpose, since it has the property that the longest edge of any piece is smaller than the longest edge of the original polytope by a factor less than . Therefore, by applying BCS sufficiently many times, the largest edge can be made as small as desired.

However, in practice BCS is not well-suited for that purpose. For one thing, each application after the first one multiplies the number of simplices by . BCS also multiplies the degree of each original vertex by , and the degree of each edge by . Moreover, the BCS will split all simplices, even those that are already small enough. Finally, each BCS stage also makes the simplices not only smaller but "skinnier", i.e. it tends to increase their *aspect ratio* (the ratio between the longest and shortest edge). For all these reasons, in practice one rarely applies more than one round of BCS, and other subdivision schemes are used instead.

## Relative barycentric subdivision

For simplicial complexes one defines the relative barycentric subdivision of *modulo* that consists of those simplixes with vertices associated to a sequence of proper faces of and barycenters of simplexes in .

Clearly, remains a subcomplex of . Only the simplexes away from shrink.

## Related notions

### False barycentric subdivision

Sometimes the term "barycentric subdivision" is improperly used for any subdivision of a polytope into simplices that have one vertex at the centroid of , and the opposite facet on the boundary of . While this property holds for the true barycentric subdivision, it also holds for other subdivisions which are not the BCS.

For example, if one makes a straight cut from the barycenter of a triangle to each of its three corners, one obtains a subdivision into three triangles. Generalizing this idea, one obtains a schema for subdividing an -dimensional simplex into simplices. However, this subdivision is not the BCS.

### Simplicial sets

The barycentric division can also be defined for simplicial sets, in a way that is compatible (with respect to the topological realization functor) with the above division of simplices.^{[3]}