Implementation Algorithm for Fields

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