User Tools

Site Tools



Meshes for simulations are often required to be conforming, non-selfintersecting, have elements of good quality, … In short, meshes have to be of good quality and intact. The goal of this project is to provide validation cheks for two- and three-dimensional meshes as well as algorithms to repair broken meshes.

Prospective Student

This project is currently unassigned.


The student should be familiar with C++ and template programming.

Milestone Tasklist

We envision milestones, each containing its own list of tasks to be completed to be able to claim the assigned salary.

Milestone 1

  1. Learning: Getting familiar with the ViennaGrid mesh data structure library
  2. Implementation: Generic algorithm which tests if a segments are disjunct and if each cells in a mesh is also in a segment (is each cell in exactly one segment?).

Milestone is already finished

Milestone 2

  1. Implementation: Generic algorithm which tests self-intersection of meshes. Implementation for triangular 2d and tetrahedral 3d meshes required.

Milestone 3

  1. Implementation: Generic algorithm which tries to heal self-intersection of meshes and segmentations (remove dublicate elements).
  2. Implementation: Algorithm which checks for holes in triangular 3d hull meshes.

Milestone 4

  1. Implementation: Algorithm which fills holes in triangular 3d hull meshes.

Milestone 5 (Optional)

  1. Implementation: Algorithm which checks the orientated segmentation of a triangular 3d hull mesh (is each triangle in exactly one or two segments? if a triangle is in 2 segments, does the orientation differ?)

Additional Information

Herbert Edelsbrunners book gives a nice overview over triangular and tetrahedral meshes. The ViennaGrid manual also might be interesting.

Primary Mentor

viennamesh_-_validation_mesh_doctor.txt · Last modified: 2015/01/22 14:48 by viennastar