next up previous
Next: Summary of Debugging Up: Sample Ariadne Debugging Previous: Debugging Session.

Delaunay Triangulation

This example demonstrates that Ariadne can model complex behaviors. The program is a parallel version of Bowyer's algorithm to construct a Delaunay Triangulation [4]. In Bowyer's algorithm, points are inserted into an existing mesh one at a time; in our version, they are inserted in parallel. Each point is managed by its own process which communicates with surrounding processes looking for triangles with circumcirclesgif that contain its point. The triangles located in this search are ``locked" to prevent concurrent access by other insertions, and the polygonal region they form is modified to add the new point. To avoid deadlock, conflicting requests for locks on triangles are resolved by aborting one of the insertions.





Joydip Kundu kundu@neweng.enet.dec.com