Data Analysis and Visualization Using the Morse-Smale complex Attila Gyulassy Institute for Data Analysis and Visualization Computer Science Department University of California, Davis Center for Applied Scientific Computing LLNS
Seminar Overview Introduce basic concepts from topology Intuitive definition of the Morse-Smale complex What is a feature? Examples from various application areas Algorithm
Topology Background - Critical Points Let ƒ be a scalar valued function whose critical points are not degenerate. We call ƒ a Morse function, and in the neighborhood of a critical point p, the function can be represented as ƒ(p) = 0 ƒ(x, y, z) = ƒ(p) ± x2 ± y2 ± z2 ∆ Regular Minimum 1-Saddle 2-Saddle Maximum Index 0 Index 1 Index 2 Index 3
Topology Background - Integral Lines An integral line is a maximal path that agrees with the gradient of at every point
Topology Background - Manifolds Descending Manifolds D(p) = {p} { x | x є l, dest(l) = p} Ascending Manifolds A(p) = {p} { x | x є l, orig(l) = p} ∩ ∩ 3-Manifold 1-Manifold 3-Manifold 1-Manifold 2-Manifold 0-Manifold 2-Manifold 0-Manifold Maximum 2-Saddle 1-Saddle Minimum
What is the Morse-Smale Complex? The intersection of all descending and ascending manifolds D(p) ∩ A(q), for all pairs p,q of f Any cell in the complex has the property that all integral lines in that cell share an origin and a destination The Morse-Smale complex is a segmentation of the domain that clusters integral lines that share a common origin and destination.
Morse-Smale Complex - 1D Example
Morse-Smale Complex - 1D Example
Morse-Smale Complex - 1D Example
Morse-Smale Complex - 2D Example
Morse-Smale Complex - 2D Example
Morse-Smale Complex - 2D Example
Morse-Smale Complex - 2D Example
Morse-Smale Complex - 3D Example Cells of dimension i connect critical points with index that differ by i. Crystal Quad Arc Node
Topology based simplification A lemma from morse theory states that we can remove critical points in pairs whose indices differ by one, and are connected by the complex. We use the notion of persistence to order critical point pairs, where persistence is the absolute difference in function value of the pair that is removed. Generally we consider low persistence pairs to be small features in the data. Going back to the construction, we insterted all the extra nodes so they have low persistence, and hence are removed first. Next: Simplification algorithm We formalize our simplification algorithm as
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature?
What is a feature? Critical Points
What is a feature? Arcs
What is a feature? Higher Degree Cells
Examples from applications Persistent extrema are the features Finding atom locations in molecular simulations including reeb graphs, contour trees, and other hierarchical representations. The advantage of using a Morse-Smale complex is that it is a complete characterization of the gradient behavior, and therefore is a more complete representation. We extend work from 2D to idendentify and simplify the Morse-Smale complex for volumetric domains. We use the basic definitions for three-dimensional Morse Smale complexes, and the notion of persistence based simplification in our approach. Next: New approach
Motivation Previous Work Examples from applications Persistent extrema are the features Morse-Smale comple in 2D (Multi-Scale Analysis) There are loads of scalar functions used in scientific computing, including physical simulations, mri and CT scans, and x-ray crystallography and we want to understand the structure of these functions. We use a global analysis technique to identify this structure, in particular, we find the three dimensional morse-smale complex of the function. Next: motivation pic Tracking the formation of bubbles in turbulent mixing fluids (Laney et al.)
Examples from applications Persistent extrema are the features Testing the “smoothness” of a generated function How does the critical point count change as a function of persistence? Length of the persistent arcs? Size of the persistent cells? Critical point count Persistence
Examples from applications Persistent arcs are the features Terrain representation (Bremer et al.) including reeb graphs, contour trees, and other hierarchical representations. The advantage of using a Morse-Smale complex is that it is a complete characterization of the gradient behavior, and therefore is a more complete representation. We extend work from 2D to idendentify and simplify the Morse-Smale complex for volumetric domains. We use the basic definitions for three-dimensional Morse Smale complexes, and the notion of persistence based simplification in our approach. Next: New approach
Examples from applications Persistent arcs are the features There are loads of scalar functions used in scientific computing, including physical simulations, mri and CT scans, and x-ray crystallography and we want to understand the structure of these functions. We use a global analysis technique to identify this structure, in particular, we find the three dimensional morse-smale complex of the function. Next: motivation pic Surface Quadrangulation (Dong et al.)
Examples from applications Persistent arcs are the features Analysis of porous media
Time comparison of the reconstructions Examples from applications Persistent arcs are the features Time comparison of the reconstructions
Examples from applications Persistent arcs are the features Analysis of the structure of galaxies including reeb graphs, contour trees, and other hierarchical representations. The advantage of using a Morse-Smale complex is that it is a complete characterization of the gradient behavior, and therefore is a more complete representation. We extend work from 2D to idendentify and simplify the Morse-Smale complex for volumetric domains. We use the basic definitions for three-dimensional Morse Smale complexes, and the notion of persistence based simplification in our approach. Next: New approach
Examples from applications Persistent cells are the features including reeb graphs, contour trees, and other hierarchical representations. The advantage of using a Morse-Smale complex is that it is a complete characterization of the gradient behavior, and therefore is a more complete representation. We extend work from 2D to idendentify and simplify the Morse-Smale complex for volumetric domains. We use the basic definitions for three-dimensional Morse Smale complexes, and the notion of persistence based simplification in our approach. Next: New approach Analysis of a combustion simulation
A Simple Algorithm For Constructing the Morse-Smale Complex Construct the known complex for a similar function called the augmented function Simplify the artificial complex including reeb graphs, contour trees, and other hierarchical representations. The advantage of using a Morse-Smale complex is that it is a complete characterization of the gradient behavior, and therefore is a more complete representation. We extend work from 2D to idendentify and simplify the Morse-Smale complex for volumetric domains. We use the basic definitions for three-dimensional Morse Smale complexes, and the notion of persistence based simplification in our approach. Next: New approach
A Simple Algorithm For Constructing the Morse-Smale Complex Contributions A Simple Algorithm For Constructing the Morse-Smale Complex Constructing the Morse-Smale complex of an Augmented Morse Function The augmented Morse function has a very regular structure. Every vertex of S is critical, with index = dimension of its cell in K. Arcs of the complex are the edges of S. Therefore we present a simple construction for a similar function. Here we see a simple 1D PL function defined at the yellow data points. To compute the complex directly, we would have to look at local neighborhoods of each points, and trace ascending and descending paths. In 3D this is much worse, since we need to find maximally ascending and descending surfaces. Instead, we modify the function so that the entire complex for that function is known. Here we insert bumps into the function to make every point critical, therefore we can easily give the complex for the function. next: in 3D,....
Topology based simplification Contributions A Simple Algorithm For Constructing the Morse-Smale Complex Topology based simplification We go back to the 1-D example to see how this is done. The complex tells us nothing about the critical point behavior of the original function, next: simplified
Topology based simplification Contributions A Simple Algorithm For Constructing the Morse-Smale Complex Topology based simplification Until we remove the extra critical points. If we simplify in a controlled manner, we can remove exactly those critical points that do not correspond to critical points in the original function. So the question remains what ordering do we use in our simplification to remove the right critical points? Next: the index lemma Remove extra critical points Correct Morse-Smale complex within small error bound
A Simple Algorithm For Constructing the Morse-Smale Complex Original data points
A Simple Algorithm For Constructing the Morse-Smale Complex
Questions? aggyulassy@ucdavis.edu
Structural Analysis of a Simulated Porous Material 25% dense copper foam, 70nm 70nm 80nm Filament structure? Length? Number of cycles? How many cuts needed? Further experiments on the structure...
Time comparison of the reconstructions We Obtain a Consistent Reconstruction of the Filament Structures in the Material Time comparison of the reconstructions
Efficient Computation of Morse-Smale Complexes for 3D Scalar Fields Attila Gyulassy, Vijay Natarajan, Valerio Pascucci, Bernd Hamann Center for Applied Scientific Computing Lawrence Livermore National Laboratory Department of Computer Science and Automation, Indian Institute of Science Bangalore, India Institute for Data Analysis and Visualization Computer Science Department University of California, Davis
Contributions Filtering Filtering the Morse-Smale complex - Certain conditions can be set to determine whether or not it is possible to cancel an arc: Therefore we present a simple construction for a similar function. Here we see a simple 1D PL function defined at the yellow data points. To compute the complex directly, we would have to look at local neighborhoods of each points, and trace ascending and descending paths. In 3D this is much worse, since we need to find maximally ascending and descending surfaces. Instead, we modify the function so that the entire complex for that function is known. Here we insert bumps into the function to make every point critical, therefore we can easily give the complex for the function. next: in 3D,.... - These can be conditions for inclusion/exclusion - still maintain a “valid” complex in terms of gradient behavior - restrict certain cancellations