a SOD b Zoomed
c Naive d Difference
e Shift f Difference
g Wormhole h Difference
i Pseudo-
triangle j Difference
k Sudden Death l Difference
Fig. 12.8. Reordering algorithms on SOD. a displays the k-triangles of SOD with the region of interest boxed and zoomed in b. c–l show the results of each reordering
algorithm and the image difference between these results and b. The difference be- tween images is shown in shades of gray. I have increased the saturation by 25 for
better viewing.
Table 12.13. Time in seconds for the pseudo-triangle reordering algorithm, as well as the number of basic and recursive conflicts.
conflicts time
basic recursive
torus 0.03
297 1,938
hopf 0.04
1 SOD
0.17 26
1grm 0.05
möbius 0.07
1 LTA
0.38 22
1mbn 0.34
9 FAU
0.28 1
2 KFI
0.52 20
1qb0 0.39
2 15
BOG 1.81
132 1hiv
0.52 1
21 1hck
0.83 15
bearing 3.34
22 219
dragon1 0.96
1 TAO
3.26 212
bunny 12.40
bone 51.82
1 188
dragon10 15.77
1 buddha10
18.47 10
dragon20 36.40
2
12.4.3 Discussion
The timings show that the reordering algorithms are fast and feasible. The data also confirm the rarity of conflicts. Conflicts are structural in nature and may
be used as an additional measure of complexity of the connectivity of a space. They arise when a topologically complicated region of space is coarsely trian-
gulated. This is the case for both small triangulations like the data set torusand large triangulations of complex spaces like the data set bone. As we saw ear-
lier, conflicts may be eliminated by refining a complex. Fine triangulations of topologically simple spaces, such as bunny or the dragon family, generally
have few, if any, conflicts.
12.5 The Morse-Smale Complex Algorithm
In this section, we present experimental results to support the practical via- bility of the Morse-complex algorithm presented in Chapter 9. I have only
Table 12.14. The four data sets. The second column gives the latitude and longitude coordinates in degrees for the upper-left and lower-right corners
of the terrain. The south and west coordinates are negative.
coordinates grid size
filt. length simplices
Sine na
100 × 100
10,001 59,996
Iran 42, 42, 23, 65
277 × 229
63,434 380,594
Himalayas 46, 66, 24, 105
469 × 265
124,286 745,706
Andes 15, –87, –58, –55
385 × 877
337,646 2,025,866
North America 55, –127, 13, –61
793 × 505
400,466 2,402,786
implemented the algorithms for constructing QMS complexes and computing the persistence of the critical points. My implementation for the former uses a
different algorithm than the one presented in this chapter. The algorithm uses edge tags to reroute paths using a single pass through the critical points.
12.5.1 Data
We use four rectangle sections of rectilinear 5-minute gridded elevation data of Earth National Geophysical Data Center, 1988 and one synthetic data sam-
pled from h x, y = sin x + sin y for input. Table 12.14 gives the names and
sizes of the data sets. Each data set is a height function h : Z
2
→ R, assign- ing a height value h
x, y to each point of its domain. Consequently, we may view the data sets as gray-scale images, mapping heights to pixel intensities,
as in Figure 12.9. In each case, we compactify the domain of the function, a gridded rectangle, into a sphere by adding a dummy vertex at height minus in-
finity. We then triangulate the resulting mesh by adding diagonals to the square cells. As a result, the 2-manifold that we use for experimentation is always S
2
. The filtration is generated by a manifold sweep, as described in Section 2.5.
Therefore, each filtration has length equivalent to the number of vertices in the manifold, which is one more than the size of the grid because of the dummy
vertex. For example, Sine has a filtration of 100 × 100 + 1 = 10, 001 com-
plexes.
12.5.2 Timings and Statistics
We first compute a filtration of the sphere triangulation by a manifold sweep. We then use the persistence algorithm to compute and classify the critical