**triangulation_corner_test**,
a C++ code which
calls triangulation_corner(), which
tries to correct situations in which a triangulation includes
corner triangles, that is, triangles which have two sides on boundary.

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

triangulation_corner, a C++ code which patches triangulations so that no triangle has two sides on the boundary.

- triangulation_corner_test.sh, runs all the tests.
- triangulation_corner_test.txt, the output file.

**P03** is the square with a hole. The initial mesh has 1 corner triangle.

- p03_nodes.txt the mesh nodes of the problem.
- p03_elements.txt the mesh triangles of the problem.
- p03.png a PNG image of the initial mesh.
- p02_corner_elements.txt the triangle file after corner triangles have been repaired.
- p02_corner.png a PNG image of the repaired mesh.

**P05** is the horn. The initial mesh has 4 corner triangles.

- p05_nodes.txt the mesh nodes of the problem.
- p05_elements.txt the mesh triangles of the problem.
- p05.png a PNG image of the initial mesh.
- p05_corner_elements.txt the triangle file after corner triangles have been repaired.
- p05_corner.png a PNG image of the repaired mesh.

**P08** is the holey pie slice. The initial mesh has 2 corner triangles.

- p08_nodes.txt the mesh nodes of the problem.
- p08_elements.txt the mesh triangles of the problem.
- p08.png, a PNG image of the initial mesh.
- p08_corner_elements.txt the triangle file after corner triangles have been repaired.
- p08_corner.png a PNG image of the repaired mesh.

**P09** is Jeff Borggaard's square with two hexagonal holes.
The initial mesh has 3 corner triangles.

- p09_nodes.txt the mesh nodes of the problem.
- p09_elements.txt the mesh triangles of the problem.
- p09.png a PNG image of the initial mesh.
- p09_corner_elements.txt the triangle file after corner triangles have been repaired.
- p09_corner.png a PNG image of the repaired mesh.

**P10** is the unit square. The initial mesh has 4 corner triangles.

- p10_nodes.txt the mesh nodes of the problem.
- p10_elements.txt the mesh triangles of the problem.
- p10.png a PNG image of the initial mesh.
- p10_corner_elements.txt the triangle file after corner triangles have been repaired.
- p10_corner.png a PNG image of the repaired mesh.

**P11** is the L-shaped region. The initial mesh has 4 corner triangles.

- p11_nodes.txt the mesh nodes of the problem.
- p11_elements.txt the mesh triangles of the problem.
- p11.png a PNG image of the initial mesh.
- p11_corner_elements.txt the triangle file after corner triangles have been repaired.
- p11_corner.png a PNG image of the repaired mesh.

**Q11** is the L-shaped region, but with quadratric (6 node) triangles.
The initial mesh has 4 corner triangles. Because we are using quadratic
triangles, when we merge two triangles and swap the diagonal, the midside
node on the common diagonal will no longer lie on a line, midway between the
two vertices. **TRIANGULATION_CORNER** assumes this is undesirable,
and recomputes the coordinates of such midside nodes, and outputs
a modified node coordinate file as well as the new triangle file.

- q11_nodes.txt the mesh nodes of the problem.
- q11_elements.txt the mesh triangles of the problem.
- q11.png a PNG image of the initial mesh.
- q11_nodes.corner.txt the node coordinate file after corner triangles have been repaired, which, for quadratric triangles, requires adjusting some midside nodes.
- q11_corner_elements.txt the triangle file after corner triangles have been repaired.
- q11_corner.png a PNG image of the repaired mesh.

**P12** is the John Shadid's H-shaped region. The initial mesh has 7 corner triangles.

- p12_nodes.txt the mesh nodes of the problem.
- p12_elements.txt the mesh triangles of the problem.
- p12.png a PNG image of the initial mesh.
- p12_corner_elements.txt the triangle file after corner triangles have been repaired.
- p12_corner.png a PNG image of the repaired mesh.

**P13** is the Sandia fork. The initial mesh has 6 corner triangles.

- p13_nodes.txt the mesh nodes of the problem.
- p13_elements.txt the mesh triangles of the problem.
- p13.png a PNG image of the initial mesh.
- p13_corner_elements.txt the triangle file after corner triangles have been repaired.
- p13_corner.png a PNG image of the repaired mesh.

**P14** is Marcus Garvie's Lake Alpha, with Beta Island.
The initial mesh has 5 corner triangles. (Must be small!)

- p14_nodes.txt the mesh nodes of the problem.
- p14_elements.txt the mesh triangles of the problem.
- p14.png a PNG image of the initial mesh.
- p14_corner_elements.txt the triangle file after corner triangles have been repaired.
- p14_corner.png a PNG image of the repaired mesh.

**P15** is Sangbum Kim's forward step region. The initial mesh has 6 corner triangles.

- p15_nodes.txt the mesh nodes of the problem.
- p15_elements.txt the mesh triangles of the problem.
- p15.png a PNG image of the initial mesh.
- p15_corner_elements.txt the triangle file after corner triangles have been repaired.
- p15_corner.png a PNG image of the repaired mesh.

**P16** is Kevin Pond's elbow, a quarter of a circular annulus.
The initial mesh has 1 corner triangle.

- p16_nodes.txt the mesh nodes of the problem.
- p16_elements.txt the mesh triangles of the problem.
- p16.png a PNG image of the initial mesh.
- p16_corner_elements.txt the triangle file after corner triangles have been repaired.
- p16_corner.png a PNG image of the repaired mesh.

**P17** is the rectangular channel with a Reuleaux triangle obstacle.
The initial mesh has 4 corner triangles.

- p17_nodes.txt the mesh nodes of the problem.
- p17_elements.txt the mesh triangles of the problem.
- p17.png a PNG image of the initial mesh.
- p17_corner_elements.txt the triangle file after corner triangles have been repaired.
- p17_corner.png a PNG image of the repaired mesh.