mesh generation and topological data analysis
DESCRIPTION
In this talk, I show how mesh generation and topological data analysis are a natural fit.TRANSCRIPT
![Page 1: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/1.jpg)
Mesh Generation andTopological Data Analysis
Don SheehyINRIA Saclay, France
![Page 2: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/2.jpg)
![Page 3: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/3.jpg)
Obvious.
![Page 4: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/4.jpg)
Obvious.“I could have thought of that.”
![Page 5: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/5.jpg)
Obvious.“I could have thought of that.”
“I should have thought of that.”
![Page 6: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/6.jpg)
Outline
![Page 7: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/7.jpg)
Outline
1 The Obvious.
![Page 8: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/8.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
![Page 9: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/9.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.
![Page 10: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/10.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation
![Page 11: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/11.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation(and their solution)
![Page 12: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/12.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation(and their solution)
3 Some things that are true.
![Page 13: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/13.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation(and their solution)
3 Some things that are true.The main theorems about approximating persistence diagrams using mesh filtrations
![Page 14: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/14.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation(and their solution)
3 Some things that are true.The main theorems about approximating persistence diagrams using mesh filtrations
4 Some things that might be true.
![Page 15: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/15.jpg)
Outline
1 The Obvious.Mesh generation as a preprocess for TDA
2 The Not Obvious.Some challenges of mesh generation(and their solution)
3 Some things that are true.The main theorems about approximating persistence diagrams using mesh filtrations
4 Some things that might be true.Wild speculation.
![Page 16: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/16.jpg)
We consider point clouds in low-dimensional Euclidean space.
Maybe there is underlying structure, but maybe not.
![Page 17: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/17.jpg)
A trip down memory lane...
![Page 18: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/18.jpg)
A trip down memory lane...
![Page 19: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/19.jpg)
A trip down memory lane...
VRCechalpha-shapesWitnessMapper
![Page 20: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/20.jpg)
A trip down memory lane...
How to get very small and understandable representations
VRCechalpha-shapesWitnessMapper
![Page 21: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/21.jpg)
A trip down memory lane...
Conventional Wisdom: If you want a smaller complex,you need to use fewer vertices.
How to get very small and understandable representations
VRCechalpha-shapesWitnessMapper
![Page 22: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/22.jpg)
A trip down memory lane...
Conventional Wisdom: If you want a smaller complex,you need to use fewer vertices.
How to get very small and understandable representations
VRCechalpha-shapesWitnessMapper
Obvious?
![Page 23: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/23.jpg)
A trip down memory lane...
Conventional Wisdom: If you want a smaller complex,you need to use fewer vertices.
How to get very small and understandable representations
VRCechalpha-shapesWitnessMapper
Obvious? True?
![Page 24: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/24.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
![Page 25: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/25.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
![Page 26: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/26.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
For α-complexes: !(n) ! number of faces ! O(n!d/2")
![Page 27: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/27.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
Geometry matters!
For α-complexes: !(n) ! number of faces ! O(n!d/2")
![Page 28: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/28.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
Geometry matters!
For α-complexes: !(n) ! number of faces ! O(n!d/2")
Example:Delaunay triangulation of points sampled from 2 skew lines.
![Page 29: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/29.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
Geometry matters!
For α-complexes: !(n) ! number of faces ! O(n!d/2")
Example:Delaunay triangulation of points sampled from 2 skew lines.
Complexity: O(n2)
![Page 30: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/30.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
Geometry matters!
For α-complexes: !(n) ! number of faces ! O(n!d/2")
Example:Delaunay triangulation of points sampled from 2 skew lines.
Complexity: O(n2)
Complexity with noise: O(n)
![Page 31: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/31.jpg)
The complexity of simplicial complexes is not dominated by vertex counts.
For simplicial polytopes: !(n) ! number of faces ! O(n!d/2")
Geometry matters!
For α-complexes: !(n) ! number of faces ! O(n!d/2")
Example:Delaunay triangulation of points sampled from 2 skew lines.
Complexity: O(n2)
Complexity with noise: O(n)Does noise help?
![Page 32: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/32.jpg)
A TDA Pipeline
![Page 33: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/33.jpg)
A TDA Pipeline
Data Points
![Page 34: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/34.jpg)
A TDA Pipeline
Data Points
a Function(Lipschitz)
![Page 35: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/35.jpg)
A TDA Pipeline
Data Points
a Function(Lipschitz)
A (filtered) Simplicial Complex(to approx. the function)
![Page 36: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/36.jpg)
A TDA Pipeline
Data Points
a Function(Lipschitz)
A (filtered) Simplicial Complex(to approx. the function)
Compute Persistence
![Page 37: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/37.jpg)
Mes
h G
ener
atio
n
A TDA Pipeline
Data Points
a Function(Lipschitz)
A (filtered) Simplicial Complex(to approx. the function)
Compute Persistence
![Page 38: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/38.jpg)
Mes
h G
ener
atio
n
A TDA Pipeline
Data Points
a Function(Lipschitz)
A (filtered) Simplicial Complex(to approx. the function)
Compute Persistence
(Alm
ost)
![Page 39: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/39.jpg)
Mes
h G
ener
atio
n
A TDA Pipeline
Data Points
a Function(Lipschitz)
A (filtered) Simplicial Complex(to approx. the function)
Compute Persistence
(Alm
ost)
![Page 40: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/40.jpg)
Mesh Generation
![Page 41: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/41.jpg)
Mesh GenerationDecompose a domain into simple elements.
![Page 42: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/42.jpg)
Mesh GenerationDecompose a domain into simple elements.
![Page 43: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/43.jpg)
Mesh Generation
Mesh Quality
Radius/Edge < const
Decompose a domain into simple elements.
![Page 44: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/44.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Decompose a domain into simple elements.
![Page 45: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/45.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Conforming to InputDecompose a domain into simple elements.
![Page 46: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/46.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Conforming to InputDecompose a domain into simple elements.
![Page 47: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/47.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Conforming to InputDecompose a domain into simple elements.
![Page 48: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/48.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Conforming to InputDecompose a domain into simple elements.
![Page 49: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/49.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
Conforming to InputDecompose a domain into simple elements.
Voronoi Diagram
![Page 50: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/50.jpg)
Mesh Generation
X X✓
Mesh Quality
Radius/Edge < const
OutRadius/InRadius < const
Conforming to InputDecompose a domain into simple elements.
Voronoi Diagram
![Page 51: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/51.jpg)
Mesh Generation
X X✓
✓X
Mesh Quality
Radius/Edge < const
OutRadius/InRadius < const
Conforming to InputDecompose a domain into simple elements.
Voronoi Diagram
![Page 52: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/52.jpg)
Mesh Generation
X X✓
✓X
Mesh Quality
Radius/Edge < const
OutRadius/InRadius < const
Conforming to InputDecompose a domain into simple elements.
Voronoi Diagram
![Page 53: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/53.jpg)
Meshing PointsInput: P ! Rd
Output: M " P with a “nice” Voronoi diagram
n = |P |,m = |M |
![Page 54: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/54.jpg)
Meshing PointsInput: P ! Rd
Output: M " P with a “nice” Voronoi diagram
n = |P |,m = |M |
![Page 55: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/55.jpg)
Meshing PointsInput: P ! Rd
Output: M " P with a “nice” Voronoi diagram
n = |P |,m = |M |
![Page 56: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/56.jpg)
Meshing PointsInput: P ! Rd
Output: M " P with a “nice” Voronoi diagram
n = |P |,m = |M |
![Page 57: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/57.jpg)
Meshing Guarantees
Aspect Ratio (quality):
Cell Sizing:
Constant Local Complexity:
Optimality and Running time:
vRv
rvRv
rv! !
Rv ! !lfs(v)lfs(x) := d(x, P \ {NN(x)})
|M | = !(|Optimal|)
Running time: O(n log n+ |M |)
The degree of the 1-skeleton is 2O(d).
![Page 58: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/58.jpg)
Meshing Guarantees
Aspect Ratio (quality):
Cell Sizing:
Constant Local Complexity:
Optimality and Running time:
vRv
rvRv
rv! !
Rv ! !lfs(v)lfs(x) := d(x, P \ {NN(x)})
|M | = !(|Optimal|)
Running time: O(n log n+ |M |)
The degree of the 1-skeleton is 2O(d).
ε-refined
![Page 59: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/59.jpg)
Mesh FiltrationsGeometric
ApproximationTopologically Equivalent
1. Compute the function on the vertices.
2. Approximate the sublevel with a union of Voronoi cells.
3. Filter the Delaunay triangulation appropriately.
![Page 60: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/60.jpg)
Mesh FiltrationsGeometric
ApproximationTopologically Equivalent
1. Compute the function on the vertices.
2. Approximate the sublevel with a union of Voronoi cells.
3. Filter the Delaunay triangulation appropriately.
![Page 61: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/61.jpg)
Persistence Diagrams
Birth
Dea
th
![Page 62: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/62.jpg)
Persistence Diagrams
Birth
Dea
th
![Page 63: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/63.jpg)
Persistence Diagrams
d!B = maxi
|pi ! qi|!
Bottleneck Distance
Birth
Dea
th
![Page 64: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/64.jpg)
Persistence Diagrams
d!B = maxi
|pi ! qi|!
Bottleneck Distance
Approximate
Birth
Dea
th
![Page 65: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/65.jpg)
Persistence Diagrams
d!B = maxi
|pi ! qi|!
Bottleneck Distance
Approximate
Birth and Death times differ by a constant factor.
Birth
Dea
th
![Page 66: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/66.jpg)
Persistence Diagrams
d!B = maxi
|pi ! qi|!
Bottleneck Distance
This is just the bottleneck distance of the log-scale diagrams.
Approximate
Birth and Death times differ by a constant factor.
Birth
Dea
th
![Page 67: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/67.jpg)
Stability theorems can be viewed as approximation theorems.
![Page 68: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/68.jpg)
Stability theorems can be viewed as approximation theorems.This is just a change in perspective.
![Page 69: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/69.jpg)
Stability theorems can be viewed as approximation theorems.This is just a change in perspective.
F log:= {F log
!} where F
loglog!
:= F!
Define the log-scale filtration of F = {F!} as
![Page 70: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/70.jpg)
Stability theorems can be viewed as approximation theorems.This is just a change in perspective.
F log:= {F log
!} where F
loglog!
:= F!
Define the log-scale filtration of F = {F!} as
Given filtrations F and G, we sayDgm F is a !-approximation to Dgm G i!
dB(Dgm F log,Dgm Glog) ! log !.
![Page 71: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/71.jpg)
Stability theorems can be viewed as approximation theorems.This is just a change in perspective.
F log:= {F log
!} where F
loglog!
:= F!
Define the log-scale filtration of F = {F!} as
Given filtrations F and G, we sayDgm F is a !-approximation to Dgm G i!
dB(Dgm F log,Dgm Glog) ! log !.
Lemma. Let F = {F!} and G = {G!} be filtrations. IfF!/" ! G! ! F!" for all ! " 0, then Dgm F is a "-approximation to Dgm G.
![Page 72: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/72.jpg)
The main idea
![Page 73: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/73.jpg)
The main idea
Given a function f : Rd ! R, let F = {F!} be its sublevelfiltration.
F! := f!1[0,!]
![Page 74: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/74.jpg)
The main idea
Let M be a quality mesh.
Given a function f : Rd ! R, let F = {F!} be its sublevelfiltration.
F! := f!1[0,!]
![Page 75: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/75.jpg)
The main idea
Let M be a quality mesh.
Given a function f : Rd ! R, let F = {F!} be its sublevelfiltration.
F! := f!1[0,!]
Let V = {V!} be the Voronoi filtration of f on M .
V! :=!
v!Mf(v)"!
Vor(v)
![Page 76: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/76.jpg)
The main idea
Let M be a quality mesh.
Given a function f : Rd ! R, let F = {F!} be its sublevelfiltration.
F! := f!1[0,!]
Let V = {V!} be the Voronoi filtration of f on M .
V! :=!
v!Mf(v)"!
Vor(v)
We will show Dgm V is a good approximation to Dgm F .
![Page 77: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/77.jpg)
The Voronoi filtration interleaves with the offset filtration.
![Page 78: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/78.jpg)
The Voronoi filtration interleaves with the offset filtration.
![Page 79: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/79.jpg)
The Voronoi filtration interleaves with the offset filtration.
![Page 80: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/80.jpg)
The Voronoi filtration interleaves with the offset filtration.
![Page 81: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/81.jpg)
The Voronoi filtration interleaves with the offset filtration.
V!/" ! P
! ! V!"
![Page 82: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/82.jpg)
The Voronoi filtration interleaves with the offset filtration.
Finer refinement yields a tighter interleaving.
V!/(1+") ! P
! ! V!(1+")
V!/" ! P
! ! V!"
![Page 83: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/83.jpg)
The Voronoi filtration interleaves with the offset filtration.
Finer refinement yields a tighter interleaving.
caveat: Special case for small scales.
V!/(1+") ! P
! ! V!(1+")
V!/" ! P
! ! V!"
![Page 84: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/84.jpg)
The Not Obvious.
![Page 85: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/85.jpg)
The Not Obvious.
1 Why meshing is not obviously a good idea for TDA.
![Page 86: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/86.jpg)
The Not Obvious.
1 Why meshing is not obviously a good idea for TDA.
2 Why meshing is a nonobvious good idea for TDA.
![Page 87: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/87.jpg)
The Not Obvious.
1 Why meshing is not obviously a good idea for TDA.
2 Why meshing is a nonobvious good idea for TDA.
3 Why meshing is obviously not a good idea for TDA.
![Page 88: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/88.jpg)
The Not Obvious.
1 Why meshing is not obviously a good idea for TDA.
2 Why meshing is a nonobvious good idea for TDA.
3 Why meshing is obviously not a good idea for TDA.
![Page 89: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/89.jpg)
Meshing codes are hard to write.
image credit: Pointwise
![Page 90: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/90.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
image credit: Pointwise
![Page 91: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/91.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
2 Understanding tradeoffs
image credit: Pointwise
![Page 92: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/92.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
2 Understanding tradeoffs
3 “Necessary” heuristics
image credit: Pointwise
![Page 93: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/93.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
2 Understanding tradeoffs
3 “Necessary” heuristics
image credit: Pointwise
On the other hand, meshing for FEA often has stricter requirements than those for TDA.
![Page 94: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/94.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
2 Understanding tradeoffs
3 “Necessary” heuristics
image credit: Pointwise
On the other hand, meshing for FEA often has stricter requirements than those for TDA.
- Approximate gradients
![Page 95: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/95.jpg)
Meshing codes are hard to write.
1 Numerical Robustness
2 Understanding tradeoffs
3 “Necessary” heuristics
image credit: Pointwise
On the other hand, meshing for FEA often has stricter requirements than those for TDA.
- Approximate gradients- Slivers
![Page 96: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/96.jpg)
The size of an optimal mesh is given by the feature size measure.
![Page 97: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/97.jpg)
The size of an optimal mesh is given by the feature size measure.
lfsP (x) := Distance to second nearest neighbor in P .
![Page 98: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/98.jpg)
The size of an optimal mesh is given by the feature size measure.
lfsP (x) := Distance to second nearest neighbor in P .
![Page 99: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/99.jpg)
The size of an optimal mesh is given by the feature size measure.
lfsP (x) := Distance to second nearest neighbor in P .
![Page 100: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/100.jpg)
The size of an optimal mesh is given by the feature size measure.
x
lfsP (x) := Distance to second nearest neighbor in P .
![Page 101: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/101.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)
x
lfsP (x) := Distance to second nearest neighbor in P .
![Page 102: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/102.jpg)
The size of an optimal mesh is given by the feature size measure.
x
lfsP (x) := Distance to second nearest neighbor in P .
![Page 103: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/103.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)x
lfsP (x) := Distance to second nearest neighbor in P .
![Page 104: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/104.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)x
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
![Page 105: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/105.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)x
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
number of vertices
![Page 106: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/106.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)x
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
hides simple exponential in d
number of vertices
![Page 107: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/107.jpg)
The size of an optimal mesh is given by the feature size measure.
lfs(x)x
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
hides simple exponential in d
number of vertices
µP (!) =
!!
dx
lfsP (x)dThe Feature Size Measure:
![Page 108: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/108.jpg)
The size of an optimal mesh is given by the feature size measure.
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
hides simple exponential in d
number of vertices
µP (!) =
!!
dx
lfsP (x)dThe Feature Size Measure:
When is µP (!) = O(n)?
![Page 109: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/109.jpg)
The size of an optimal mesh is given by the feature size measure.
lfsP (x) := Distance to second nearest neighbor in P .
Optimal Mesh Size = !!
"
!dx
lfs(x)d
#
hides simple exponential in d
number of vertices
µP (!) =
!!
dx
lfsP (x)dThe Feature Size Measure:
When is µP (!) = O(n)?Pacing and the Empty Annulus Condition [S. 2012]
![Page 110: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/110.jpg)
The Main Approximation Theorem
Theorem. Let P be a point cloud and let M be an !-refined mesh of P . Let f ! 1
clfsP be a t-Lipschitz function
Rd " R for some constant c > 0. Let F be the sublevelfiltration of f and let V be the Voronoi filtration of f on M .
Then Dgm V is a!
1 + ct!
1!!
"
-approximation to Dgm F .
![Page 111: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/111.jpg)
Proof of the main theorem
!v " x! # Rv # !lfs(v) # c!f(v) !v " x! #c!
1" !f(x)
f(x) ! f(v) + t"v # x" ! (1 + ct!)f(v) f(v) ! f(x) + t"v # x" !
!
1 +ct!
1# !
"
f(x)
!v " M,Vor(v) # F(1+ct!)f(v)
!! " 0, V! # F(1+ct")!!! " 0, F! # F(1+ ct!
1!! )!
!! " 0, V!/" # F! # V!" where " = 1 +ct#
1$ #
Dgm V is a !-approximation to Dgm F .
f !1
clfs
Rv ! !lfs(v)
Fix any v ! M and any x ! Vor(v)
v
x
Rv
![Page 112: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/112.jpg)
The Main Approximation Theorem
Theorem. Let P be a point cloud and let M be an !-refined mesh of P . Let f ! 1
clfsP be a t-Lipschitz function
Rd " R for some constant c > 0. Let F be the sublevelfiltration of f and let V be the Voronoi filtration of f on M .
Then Dgm V is a!
1 + ct!
1!!
"
-approximation to Dgm F .
![Page 113: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/113.jpg)
The Main Approximation Theorem
Theorem. Let P be a point cloud and let M be an !-refined mesh of P . Let f ! 1
clfsP be a t-Lipschitz function
Rd " R for some constant c > 0. Let F be the sublevelfiltration of f and let V be the Voronoi filtration of f on M .
Then Dgm V is a!
1 + ct!
1!!
"
-approximation to Dgm F .
Observations:M can be made to have size O(n).The construction of M does not depend on f.One mesh works for many functions.
![Page 114: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/114.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
![Page 115: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/115.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
Dealing with anisotropy.
![Page 116: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/116.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
Dealing with anisotropy.
Approximation of gradients.
![Page 117: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/117.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
Dealing with anisotropy.
Approximation of gradients.
Mesh Coarsening.
![Page 118: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/118.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
Dealing with anisotropy.
Approximation of gradients.
Mesh Coarsening.
Adaptive/Dynamic/Kinetic
![Page 119: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/119.jpg)
We know how to do many things with meshes.(Some of these should be useful for TDA).
Dealing with anisotropy.
Approximation of gradients.
Mesh Coarsening.
Adaptive/Dynamic/Kinetic
Geometric Separators
![Page 120: Mesh Generation and Topological Data Analysis](https://reader034.vdocuments.net/reader034/viewer/2022052321/55509748b4c90590208b4679/html5/thumbnails/120.jpg)
Meshing!
Thank You!
Mesh generation is a natural preprocess for TDA in low-dimensional Euclidean space.