Laplace-Beltrami: The Swiss Army Knife of Geometry Processing
|
|
- Kathryn Newman
- 6 years ago
- Views:
Transcription
1 Laplace-Beltrami: The Swiss Army Knife of Geometry Processing (SGP 2014 Tutorial July ) Justin Solomon / Stanford University Keenan Crane / Columbia University Etienne Vouga / Harvard University
2 INTRODUCTION
3 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks.
4 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline:
5 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f )
6 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f ) 2 solve a PDE involving the Laplacian (e.g., Du = f )
7 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f ) 2 solve a PDE involving the Laplacian (e.g., Du = f ) 3 simple post-processing (do something with u)
8 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f ) 2 solve a PDE involving the Laplacian (e.g., Du = f ) 3 simple post-processing (do something with u) Expressing tasks in terms of Laplacian/smooth PDEs makes life easier at code/implementation level.
9 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f ) 2 solve a PDE involving the Laplacian (e.g., Du = f ) 3 simple post-processing (do something with u) Expressing tasks in terms of Laplacian/smooth PDEs makes life easier at code/implementation level. Lots of existing theory to help understand/interpret algorithms, provide analysis/guarantees.
10 Introduction Laplace-Beltrami operator ( Laplacian ) provides a basis for a diverse variety of geometry processing tasks. Remarkably common pipeline: 1 simple pre-processing (build f ) 2 solve a PDE involving the Laplacian (e.g., Du = f ) 3 simple post-processing (do something with u) Expressing tasks in terms of Laplacian/smooth PDEs makes life easier at code/implementation level. Lots of existing theory to help understand/interpret algorithms, provide analysis/guarantees. Also makes it easy to work with a broad range of geometric data structures (meshes, point clouds, etc.)
11 Goals of this tutorial: Introduction
12 Goals of this tutorial: Introduction Understand the Laplacian in the smooth setting. (Etienne)
13 Goals of this tutorial: Introduction Understand the Laplacian in the smooth setting. (Etienne) Build the Laplacian in the discrete setting. (Keenan)
14 Goals of this tutorial: Introduction Understand the Laplacian in the smooth setting. (Etienne) Build the Laplacian in the discrete setting. (Keenan) Use Laplacian to implement a variety of methods. (Justin)
15 SMOOTH THEORY
16 The Interpolation Problem f = 1 given: region W R 2 with boundary W function f on W fill in f as smoothly as possible W W f = 1
17 The Interpolation Problem f = 1 W given: region W R 2 with boundary W function f on W fill in f as smoothly as possible (what does this even mean?) W f = 1
18 The Interpolation Problem f = 1 W W f = 1 given: region W R 2 with boundary W function f on W fill in f as smoothly as possible (what does this even mean?) smooth: constant functions linear functions
19 The Interpolation Problem f = 1 W W f = 1 given: region W R 2 with boundary W function f on W fill in f as smoothly as possible (what does this even mean?) smooth: constant functions linear functions not smooth: f not continuous
20 The Interpolation Problem f = 1 W W f = 1 given: region W R 2 with boundary W function f on W fill in f as smoothly as possible (what does this even mean?) smooth: constant functions linear functions not smooth: f not continuous large variations over short distances (krf k large)
21 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da properties: nonnegative zero for constant functions measures smoothness krf k 2
22 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da properties: nonnegative zero for constant functions measures smoothness solution to interpolation problem is minimizer of E krf k 2
23 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da properties: nonnegative zero for constant functions measures smoothness solution to interpolation problem is minimizer of E how do we find minimum? krf k 2
24 Dirichlet Energy E(f )= R W krf k2 da it can be shown that: E(f )=C R W f Df da non-smooth f (x) krf k 2
25 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da it can be shown that: E(f )=C R W f Df da 2Df is the gradient of Dirichlet energy Df
26 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da it can be shown that: E(f )=C R W f Df da 2Df is the gradient of Dirichlet energy f minimizes E if Df = 0 Df
27 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da it can be shown that: E(f )=C R W f Df da 2Df is the gradient of Dirichlet energy f minimizes E if Df = 0 PDE form (Laplace s Equation): Df (x) =0 f (x) =f 0 (x) x 2 W x 2 W solution Df = 0
28 Dirichlet Energy non-smooth f (x) E(f )= R W krf k2 da it can be shown that: E(f )=C R W f Df da 2Df is the gradient of Dirichlet energy f minimizes E if Df = 0 PDE form (Laplace s Equation): Df (x) =0 f (x) =f 0 (x) x 2 W x 2 W solution Df = 0 physical interpretation: temperature at steady state
29 f = 1 On a Surface f = 1 boundary conditions nonsmooth f (x)
30 f = 1 On a Surface f = 1 boundary conditions nonsmooth f (x) krf k 2 can still define Dirichlet energy E(f )= R krf k2 M
31 f = 1 On a Surface f = 1 boundary conditions nonsmooth f (x) Df = 0 can still define Dirichlet energy E(f )= R krf k2 M re(f )= Df, now D is the Laplace-Beltrami operator of M
32 f = 1 On a Surface f = 1 boundary conditions nonsmooth f (x) Df = 0 can still define Dirichlet energy E(f )= R krf k2 M re(f )= Df, now D is the Laplace-Beltrami operator of M also works in higher dimensions, on discrete graphs/point clouds,...
33 Existence and Uniqueness Laplace s equation Df (x) =0 f (x) =f 0 (x) x 2 M x 2 M has a unique solution for all reasonable 1 surfaces M 1 e.g. compact, smooth, with piecewise smooth boundary
34 Existence and Uniqueness Laplace s equation Df (x) =0 f (x) =f 0 (x) x 2 M x 2 M has a unique solution for all reasonable 1 surfaces M physical interpretation: apply heating/cooling f 0 to the boundary of a metal plate. Interior temperature will reach some steady state 1 e.g. compact, smooth, with piecewise smooth boundary
35 Existence and Uniqueness Laplace s equation Df (x) =0 f (x) =f 0 (x) x 2 M x 2 M has a unique solution for all reasonable 1 surfaces M physical interpretation: apply heating/cooling f 0 to the boundary of a metal plate. Interior temperature will reach some steady state gradient descent is exactly the heat or diffusion equation df (x) =Df (x). dt 1 e.g. compact, smooth, with piecewise smooth boundary
36 time Heat Equation Illustrated
37 Boundary Conditions f 0 = 1 W N g 0 = 0 W can specify rf ˆn on boundary instead of f : Df (x) =0 x 2 W f (x) =f 0 (x) x 2 W D (Dirichlet bdry) rf ˆn = g 0 (x) x 2 W N (Neumann bdry) W D f 0 = 1
38 Boundary Conditions f 0 = 1 W N g 0 = 0 W can specify rf ˆn on boundary instead of f : Df (x) =0 x 2 W f (x) =f 0 (x) x 2 W D (Dirichlet bdry) rf ˆn = g 0 (x) x 2 W N (Neumann bdry) W D f 0 = 1 usually: g 0 = 0(natural bdry conds)
39 Boundary Conditions f 0 = 1 W N g 0 = 0 W can specify rf ˆn on boundary instead of f : Df (x) =0 x 2 W f (x) =f 0 (x) x 2 W D (Dirichlet bdry) rf ˆn = g 0 (x) x 2 W N (Neumann bdry) W D f 0 = 1 usually: g 0 = 0(natural bdry conds) physical interpretation: free boundary through which heat cannot flow
40 Interpolation with D in Practice in geometry processing: positions displacements vector fields parameterizations... you name it Joshi et al Eck et al Sorkine and Cohen-Or
41 Heat Equation with Source f = 1 what if you add heat sources inside W? g = 1
42 Heat Equation with Source f = 1 what if you add heat sources inside W? g = 1 df (x) =g(x)+df (x) dt
43 Heat Equation with Source f = 1 what if you add heat sources inside W? g = 1 df (x) =g(x)+df (x) dt PDE form: Poisson s equation Df (x) =g(x) f (x) =f 0 (x) x 2 W x 2 W
44 Heat Equation with Source f = 1 what if you add heat sources inside W? g = 1 df (x) =g(x)+df (x) dt PDE form: Poisson s equation Df (x) =g(x) f (x) =f 0 (x) x 2 W x 2 W common variational problem: Z min krf f M vk 2 da
45 Heat Equation with Source f = 1 what if you add heat sources inside W? g = 1 df (x) =g(x)+df (x) dt PDE form: Poisson s equation Df (x) =g(x) f (x) =f 0 (x) x 2 W x 2 W common variational problem: Z min krf f M vk 2 da becomes Poisson problem, g = r v
46 Essential Algebraic Properties I linearity: D (f (x) + ag(x)) = Df (x) + adg(x)
47 Essential Algebraic Properties I linearity: constants in kernel: Da = 0 D (f (x) + ag(x)) = Df (x) + adg(x)
48 Essential Algebraic Properties I linearity: D (f (x) + ag(x)) = Df (x) + adg(x) constants in kernel: Da = 0 for functions that vanish on M: Z Z self-adjoint: f Dg da = Z M negative: f Df da apple 0 M M Z hrf, rgi da = M gdf da
49 Essential Algebraic Properties I linearity: D (f (x) + ag(x)) = Df (x) + adg(x) constants in kernel: Da = 0 for functions that vanish on M: Z Z self-adjoint: f Dg da = Z M negative: f Df da apple 0 M M Z hrf, rgi da = M gdf da (intuition: D an -dimensional negative-semidefinite matrix)
50 Solving Poisson s Equation with Green s Functions the Green s function G on R 2 solves Df = g for g = d d(x) G(x)
51 Solving Poisson s Equation with Green s Functions the Green s function G on R 2 solves Df = g for g = d linearity: if g = Â a i d(x x i ), f = Â a i G(x x i ) d(x) G(x)
52 Solving Poisson s Equation with Green s Functions the Green s function G on R 2 solves Df = g for g = d linearity: if g = Â a i d(x x i ), f = Â a i G(x x i ) for any g, f = G g d(x) G(x)
53 Essential Algebraic Properties II a function f : M! R with Df = 0 is called harmonic. Properties: f is smooth and analytic some harmonic f (x, y)
54 Essential Algebraic Properties II a function f : M! R with Df = 0 is called harmonic. Properties: f is smooth and analytic f (x) is the average of f over any disk around x: f (x) = 1 Z pr 2 f (y) da B(x,r)
55 Essential Algebraic Properties II a function f : M! R with Df = 0 is called harmonic. Properties: f is smooth and analytic f (x) is the average of f over any disk around x: f (x) = 1 Z pr 2 f (y) da B(x,r) maximum principle: f has no local maxima or minima in M
56 Essential Algebraic Properties II a function f : M! R with Df = 0 is called harmonic. Properties: f is smooth and analytic f (x) is the average of f over any disk around x: f (x) = 1 Z pr 2 f (y) da B(x,r) maximum principle: f has no local maxima or minima in M (can have saddle points)
57 Essential Geometric Properties I for a curve g(u) =(x[u], y[u]) : R! R 2 total Dirichlet energy R krxk 2 + kryk 2 is arc length
58 Essential Geometric Properties I for a curve g(u) =(x[u], y[u]) : R! R 2 total Dirichlet energy R krxk 2 + kryk 2 is arc length Dg =(Dx, Dy) is gradient of arc length
59 Essential Geometric Properties I for a curve g(u) =(x[u], y[u]) : R! R 2 total Dirichlet energy R krxk 2 + kryk 2 is arc length Dg =(Dx, Dy) is gradient of arc length Dg is the curvature normal k ˆn
60 Essential Geometric Properties I for a curve g(u) =(x[u], y[u]) : R! R 2 total Dirichlet energy R krxk 2 + kryk 2 is arc length Dg =(Dx, Dy) is gradient of arc length Dg is the curvature normal k ˆn minimal curves are harmonic
61 Essential Geometric Properties I for a curve g(u) =(x[u], y[u]) : R! R 2 total Dirichlet energy R krxk 2 + kryk 2 is arc length Dg =(Dx, Dy) is gradient of arc length Dg is the curvature normal k ˆn minimal curves are harmonic (straight lines)
62 Essential Geometric Properties II for a surface r(u, v) =(x[u, v], y[u, v], z[u, v]) : R! R 3 total Dirichlet energy is surface area Dr =(Dx, Dy, Dz) is gradient of surface area
63 Essential Geometric Properties II for a surface r(u, v) =(x[u, v], y[u, v], z[u, v]) : R! R 3 total Dirichlet energy is surface area Dr =(Dx, Dy, Dz) is gradient of surface area Dr is the mean curvature normal 2H ˆn
64 Essential Geometric Properties II for a surface r(u, v) =(x[u, v], y[u, v], z[u, v]) : R! R 3 total Dirichlet energy is surface area Dr =(Dx, Dy, Dz) is gradient of surface area Dr is the mean curvature normal 2H ˆn minimal surfaces are harmonic! Images: Paul Nylander
65 D is intrinsic Essential Geometric Properties III
66 Essential Geometric Properties III D is intrinsic for W R 2, rigid motions of W don t change D
67 Essential Geometric Properties III D is intrinsic for W R 2, rigid motions of W don t change D for a surface W, isometric deformations of W don t change D
68 Signal Processing on a Line on line segment [0, 1]: recall Fourier basis: f i (x) =cos(ix)
69 Signal Processing on a Line on line segment [0, 1]: recall Fourier basis: f i (x) =cos(ix) can decompose f = Â a i f i
70 Signal Processing on a Line on line segment [0, 1]: recall Fourier basis: f i (x) =cos(ix) can decompose f = Â a i f i f i satisfies Df i = i 2 f i
71 Signal Processing on a Line on line segment [0, 1]: recall Fourier basis: f i (x) =cos(ix) can decompose f = Â a i f i f i satisfies Df i = i 2 f i Dirichlet energy of f : Â i 2 a i
72 Signal Processing on a Line on line segment [0, 1]: recall Fourier basis: f i (x) =cos(ix) can decompose f = Â a i f i f i satisfies Df i = i 2 f i Dirichlet energy of f : Â i 2 a i f (x) = N Â i=1 a i f i (x) {z } low-frequency base + Â i=n+1 a i f i (x) {z } high-frequency detail
73 Laplacian Spectrum f is a (Dirichlet) eigenfunction of D on M w/ eigenvalue l: Df(x) =lf(x), x 2 M 0 = f(x), x 2 M Z 1 = kfk da. M
74 Laplacian Spectrum f is a (Dirichlet) eigenfunction of D on M w/ eigenvalue l: Df(x) =lf(x), x 2 M 0 = f(x), x 2 M Z 1 = kfk da. M recall intuition: D as -dim negative-semidefinite matrix
75 Laplacian Spectrum f is a (Dirichlet) eigenfunction of D on M w/ eigenvalue l: Df(x) =lf(x), x 2 M 0 = f(x), x 2 M Z 1 = kfk da. M recall intuition: D as -dim negative-semidefinite matrix expect orthogonal eigenfunctions with negative eigenvalue
76 Laplacian Spectrum f is a (Dirichlet) eigenfunction of D on M w/ eigenvalue l: Df(x) =lf(x), x 2 M 0 = f(x), x 2 M Z 1 = kfk da. M recall intuition: D as -dim negative-semidefinite matrix expect orthogonal eigenfunctions with negative eigenvalue spectrum is discrete: countably many eigenfunctions, 0 l 1 l 2 l 3...
77 Laplacian Spectrum of Bunny f 2 f 3 f 6 f 18
78 Laplacian Spectrum: Signal Processing expand function f in eigenbasis: f (x) =Â a i f i (x) i Dirichlet energy of f : Z E(f )= M krf k 2 da = Z M f Df da = Â a 2 i ( l i) i
79 Laplacian Spectrum: Signal Processing expand function f in eigenbasis: f (x) =Â a i f i (x) i Dirichlet energy of f : Z E(f )= M krf k 2 da = large l i terms dominate Z M f Df da = Â a 2 i ( l i) i
80 Laplacian Spectrum: Signal Processing 10 modes 25 modes 50 modes large l i terms dominate f (x) = N Â i=1 a i f i (x) {z } low-frequency base + Â i=n+1 a i f i (x) {z } high-frequency detail
81 Laplacian Spectrum: Special Cases perhaps you ve heard of Fourier basis: M = R n spherical harmonics: M = sphere
82 Laplacian Spectrum: Special Cases perhaps you ve heard of Fourier basis: M = R n spherical harmonics: M = sphere Laplacian spectrum generalizes these to any surface
83 DISCRETIZATION
84 Discrete Geometry
85 Triangle Meshes approximate surface by triangles
86 Triangle Meshes approximate surface by triangles glued together along edges
87 Triangle Meshes approximate surface by triangles glued together along edges many possible data structures
88 Triangle Meshes approximate surface by triangles glued together along edges many possible data structures half edge, quad edge, corner table,...
89 Triangle Meshes approximate surface by triangles glued together along edges many possible data structures half edge, quad edge, corner table,... for simplicity: vertex-face adjacency list
90 Triangle Meshes approximate surface by triangles glued together along edges many possible data structures half edge, quad edge, corner table,... for simplicity: vertex-face adjacency list (will be enough for our applications!)
91 Vertex-Face Adjacency List Example # xyz-coordinates of vertices v v v v # vertex-face adjacency info f f 1 4 2
92 Manifold
93 Nonmanifold
94 Manifold Triangle Mesh manifold () locally disk-like
95 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold?
96 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold? Two triangles per edge (no fins )
97 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold? Two triangles per edge (no fins ) Every vertex looks like a fan
98 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold? Two triangles per edge (no fins ) Every vertex looks like a fan Why? Simplicity.
99 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold? Two triangles per edge (no fins ) Every vertex looks like a fan Why? Simplicity. (Sometimes not necessary... )
100 Manifold Triangle Mesh manifold () locally disk-like Which triangle meshes are manifold? Two triangles per edge (no fins ) Every vertex looks like a fan Why? Simplicity. (Sometimes not necessary... )
101 (Assuming a manifold triangle mesh... ) The Cotangent Laplacian (Du) i 1 2A i  j2n (i) (cot a ij + cot b ij )(u i u j )
102 (Assuming a manifold triangle mesh... ) The Cotangent Laplacian (Du) i 1 2A i  j2n (i) (cot a ij + cot b ij )(u i u j ) The set N (i) contains the immediate neighbors of vertex i
103 (Assuming a manifold triangle mesh... ) The Cotangent Laplacian (Du) i 1 2A i  j2n (i) (cot a ij + cot b ij )(u i u j ) The set N (i) contains the immediate neighbors of vertex i The quantity A i is vertex area for now: 1/3rd of triangle areas
104 Many different ways to derive it Origin of the Cotan Formula?
105 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM)
106 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes
107 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)
108 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)...
109 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999]
110 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993]
111 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993] electrical networks [Duffin, 1959]
112 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993] electrical networks [Duffin, 1959] Poisson equation [MacNeal, 1949]
113 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993] electrical networks [Duffin, 1959] Poisson equation [MacNeal, 1949] (Courant? Frankel? Manhattan Project?)
114 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993] electrical networks [Duffin, 1959] Poisson equation [MacNeal, 1949] (Courant? Frankel? Manhattan Project?) All these different viewpoints yield exact same cotan formula
115 Origin of the Cotan Formula? Many different ways to derive it piecewise linear finite elements (FEM) finite volumes discrete exterior calculus (DEC)... Re-derived in many different contexts: mean curvature flow [Desbrun et al., 1999] minimal surfaces [Pinkall and Polthier, 1993] electrical networks [Duffin, 1959] Poisson equation [MacNeal, 1949] (Courant? Frankel? Manhattan Project?) All these different viewpoints yield exact same cotan formula For three different derivations, see [Crane et al., 2013a]
116 MacNeal, 1949
117 Integrate over each dual cell C i Cotan-Laplacian via Finite Volumes
118 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak )
119 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak ) Right-hand side approximated as A i f i
120 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak ) Right-hand side approximated as A i f i Left-hand side becomes R C i r ru = R C i n ru (Stokes )
121 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak ) Right-hand side approximated as A i f i Left-hand side becomes R C i r ru = R C i n ru (Stokes ) Get piecewise integral over boundary  ej 2 C i n Re j j ru
122 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak ) Right-hand side approximated as A i f i Left-hand side becomes R C i r ru = R C i n ru (Stokes ) Get piecewise integral over boundary  ej 2 C i n Re j j ru After some trigonometry: 1 2  j2n (i)(cot a ij + cot b ij )(u i u j )
123 Cotan-Laplacian via Finite Volumes Integrate over each dual cell C i R C i Du = R C i f ( weak ) Right-hand side approximated as A i f i Left-hand side becomes R C i r ru = R C i n ru (Stokes ) Get piecewise integral over boundary  ej 2 C i n Re j j ru After some trigonometry: 1 2  j2n (i)(cot a ij + cot b ij )(u i u j ) (Can divide by A i to approximate pointwise value)
124 Triangle Quality Rule of Thumb good triangles bad triangles (For further discussion see Shewchuk, What Is a Good Linear Finite Element? )
125 Triangle Quality Delaunay Property Delaunay Not Delaunay
126 Local Mesh Improvement Some simple ways to improve quality of Laplacian
127 Local Mesh Improvement Some simple ways to improve quality of Laplacian E.g., if a + b > p, flip the edge; after enough flips, mesh will be Delaunay [Bobenko and Springborn, 2005]
128 Local Mesh Improvement Some simple ways to improve quality of Laplacian E.g., if a + b > p, flip the edge; after enough flips, mesh will be Delaunay [Bobenko and Springborn, 2005] Other ways to improve mesh (edge collapse, edge split,... )
129 Local Mesh Improvement Some simple ways to improve quality of Laplacian E.g., if a + b > p, flip the edge; after enough flips, mesh will be Delaunay [Bobenko and Springborn, 2005] Other ways to improve mesh (edge collapse, edge split,... ) Particular interest recently in interface tracking
130 Local Mesh Improvement Some simple ways to improve quality of Laplacian E.g., if a + b > p, flip the edge; after enough flips, mesh will be Delaunay [Bobenko and Springborn, 2005] Other ways to improve mesh (edge collapse, edge split,... ) Particular interest recently in interface tracking For more, see [Dunyach et al., 2013, Wojtan et al., 2011].
131 Meshes and Matrices 1 So far, Laplacian expressed as a sum: (Laplace matrix, ignoring weights!)
132 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) (Laplace matrix, ignoring weights!)
133 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices (Laplace matrix, ignoring weights!)
134 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V (Laplace matrix, ignoring weights!)
135 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V (Laplace matrix, ignoring weights!)
136 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex (Laplace matrix, ignoring weights!)
137 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex C ij = 1 2 cot a ij + cot b ij for j 2N(i) (Laplace matrix, ignoring weights!)
138 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex C ij = 1 2 cot a ij + cot b ij for j 2N(i) C ii = Â j2n (i) C ij (Laplace matrix, ignoring weights!)
139 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex C ij = 1 2 cot a ij + cot b ij for j 2N(i) C ii = Â j2n (i) C ij All other entries are zero (Laplace matrix, ignoring weights!)
140 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex C ij = 1 2 cot a ij + cot b ij for j 2N(i) C ii = Â j2n (i) C ij All other entries are zero (Laplace matrix, ignoring weights!) Use sparse matrices!
141 Meshes and Matrices 1 So far, Laplacian expressed as a sum: Â j2n (i)(cot a ij + cot b ij )(u j u i ) For computation, encode using matrices First, give each vertex an index 1,..., V Weak Laplacian is matrix C 2 R V V Row i represents sum for ith vertex C ij = 1 2 cot a ij + cot b ij for j 2N(i) C ii = Â j2n (i) C ij All other entries are zero (Laplace matrix, ignoring weights!) Use sparse matrices! (MATLAB: sparse, SuiteSparse: cholmod_sparse, Eigen: SparseMatrix)
142 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i )
143 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i ) Still need to incorporate vertex areas A i
144 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i ) Still need to incorporate vertex areas A i For convenience, build diagonal mass matrix M 2 R V V : 2 A 1 6 M = 4... A V 3 7 5
145 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i ) Still need to incorporate vertex areas A i For convenience, build diagonal mass matrix M 2 R V V : 2 A 1 6 M = 4... A V Entries are just M ii = A i (all other entries are zero)
146 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i ) Still need to incorporate vertex areas A i For convenience, build diagonal mass matrix M 2 R V V : 2 A 1 6 M = 4... A V Entries are just M ii = A i (all other entries are zero) Laplace operator is then L := M 1 C
147 Mass Matrix Matrix C encodes only part of Laplacian recall that (Du) i = 1 2A i  j2n (i) (cot a ij + cot b ij )(u j u i ) Still need to incorporate vertex areas A i For convenience, build diagonal mass matrix M 2 R V V : 2 A 1 6 M = 4... A V Entries are just M ii = A i (all other entries are zero) Laplace operator is then L := M 1 C Applying L to a column vector u 2 R V implements the cotan formula shown above
148 Discrete Poisson / Laplace Equation Poisson equation Du = f becomes linear algebra problem: Lu = f
149 Discrete Poisson / Laplace Equation Poisson equation Du = f becomes linear algebra problem: Lu = f Vector f 2 R V is given data; u 2 R V is unknown.
150 Discrete Poisson / Laplace Equation Poisson equation Du = f becomes linear algebra problem: Lu = f Vector f 2 R V is given data; u 2 R V is unknown. Discrete approximation u approaches smooth solution u as mesh is refined (for smooth data, good meshes... ).
151 Discrete Poisson / Laplace Equation Poisson equation Du = f becomes linear algebra problem: Lu = f Vector f 2 R V is given data; u 2 R V is unknown. Discrete approximation u approaches smooth solution u as mesh is refined (for smooth data, good meshes... ). Laplace is just Poisson with zero on right hand side!
152 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time
153 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time Replace time derivative with finite difference: du dt ) u k+1 h u k, h > 0 {z } time step
154 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time Replace time derivative with finite difference: du dt ) u k+1 h u k, h > 0 {z } time step How (or really, when ) do we approximate Du?
155 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time Replace time derivative with finite difference: du dt ) u k+1 h u k, h > 0 {z } time step How (or really, when ) do we approximate Du? Explicit: (u k+1 u k )/h = Lu k (cheaper to compute)
156 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time Replace time derivative with finite difference: du dt ) u k+1 h u k, h > 0 {z } time step How (or really, when ) do we approximate Du? Explicit: (u k+1 u k )/h = Lu k (cheaper to compute) Implicit: (u k+1 u k )/h = Lu k+1 (more stable)
157 Discrete Heat Equation Heat equation du dt = Du must also be discretized in time Replace time derivative with finite difference: du dt ) u k+1 h u k, h > 0 {z } time step How (or really, when ) do we approximate Du? Explicit: (u k+1 u k )/h = Lu k (cheaper to compute) Implicit: (u k+1 u k )/h = Lu k+1 (more stable) Implicit update becomes linear system (I hl)u k+1 = u k
158 Discrete Eigenvalue Problem Smallest eigenvalue problem Du = lu becomes Lu = lu for smallest nonzero eigenvalue l.
159 Discrete Eigenvalue Problem Smallest eigenvalue problem Du = lu becomes Lu = lu for smallest nonzero eigenvalue l. Can be solved using (inverse) power method: Pick random u 0 Until convergence: Solve Lu k+1 = u k Remove mean value from u k+1 u k+1 u k+1 / u k+1
160 Discrete Eigenvalue Problem Smallest eigenvalue problem Du = lu becomes Lu = lu for smallest nonzero eigenvalue l. Can be solved using (inverse) power method: Pick random u 0 Until convergence: Solve Lu k+1 = u k Remove mean value from u k+1 u k+1 u k+1 / u k+1 By prefactoring L, overall cost is nearly identical to solving a single Poisson equation!
161 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!)
162 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2!
163 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel
164 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation:
165 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift
166 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved!
167 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved! Exhibits maximum principle on Delaunay mesh
168 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved! Exhibits maximum principle on Delaunay mesh Delaunay: triangle circumcircles are empty
169 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved! Exhibits maximum principle on Delaunay mesh Delaunay: triangle circumcircles are empty Maximum principle: solution to Laplace equation has no interior extrema (local max or min)
170 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved! Exhibits maximum principle on Delaunay mesh Delaunay: triangle circumcircles are empty Maximum principle: solution to Laplace equation has no interior extrema (local max or min) NOTE: non-delaunay meshes can also exhibit max principle! (And often do.) Delaunay sufficient but not necessary. Currently no nice, simple necessary condition on mesh geometry.
171 Properties of cotan-laplace Always, always, always positive-semidefinite f T Cf 0 (even if cotan weights are negative!) Why? f T Cf is identical to summing rf 2! No boundary ) constant vector in the kernel / cokernel Why does it matter? E.g., for Poisson equation: solution is unique only up to constant shift if RHS has nonzero mean, cannot be solved! Exhibits maximum principle on Delaunay mesh Delaunay: triangle circumcircles are empty Maximum principle: solution to Laplace equation has no interior extrema (local max or min) NOTE: non-delaunay meshes can also exhibit max principle! (And often do.) Delaunay sufficient but not necessary. Currently no nice, simple necessary condition on mesh geometry. For more, see [Wardetzky et al., 2007]
172 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x)
173 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... )
174 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f
175 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f C is symmetric, but M 1 C is not! Can easily be made symmetric: Cu = Mf
176 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f C is symmetric, but M 1 C is not! Can easily be made symmetric: Cu = Mf In other words: just multiply by vertex areas!
177 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f C is symmetric, but M 1 C is not! Can easily be made symmetric: Cu = Mf In other words: just multiply by vertex areas! Seemingly superficial change...
178 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f C is symmetric, but M 1 C is not! Can easily be made symmetric: Cu = Mf In other words: just multiply by vertex areas! Seemingly superficial change but makes computation simpler / more efficient
179 Numerical Issues Symmetry Best case for sparse linear systems: symmetric positive-(semi)definite (A T = A, x T Ax 0 8x) Many good solvers (Cholesky, conjugate gradient,... ) Discrete Poisson equation looks like M 1 Cu = f C is symmetric, but M 1 C is not! Can easily be made symmetric: Cu = Mf In other words: just multiply by vertex areas! Seemingly superficial change but makes computation simpler / more efficient
180 Numerical Issues Symmetry, continued Can also make heat equation symmetric
181 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k
182 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu?
183 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu? Two options:
184 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu? Two options: 1 Solve generalized eigenvalue problem Cu = lmu
185 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu? Two options: 1 Solve generalized eigenvalue problem Cu = lmu 2 Solve M 1/2 CM 1/2 ũ = lũ, recover u = M 1/2 ũ
186 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu? Two options: 1 Solve generalized eigenvalue problem Cu = lmu 2 Solve M 1/2 CM 1/2 ũ = lũ, recover u = M 1/2 ũ Note: M 1/2 just means put 1/ p A i on the diagonal!
187 Numerical Issues Symmetry, continued Can also make heat equation symmetric Instead of (I hl)u k+1 = u k, use (M hc)u k+1 = Mu k What about smallest eigenvalue problem Lu = lu? Two options: 1 Solve generalized eigenvalue problem Cu = lmu 2 Solve M 1/2 CM 1/2 ũ = lũ, recover u = M 1/2 ũ Note: M 1/2 just means put 1/ p A i on the diagonal!
188 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...)
189 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems.
190 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems. cons: prohibitively expensive for large problems; factors are quite dense for 3D (volumetric) problems
191 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems. cons: prohibitively expensive for large problems; factors are quite dense for 3D (volumetric) problems Iterative (e.g., conjugate gradient, multigrid,... )
192 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems. cons: prohibitively expensive for large problems; factors are quite dense for 3D (volumetric) problems Iterative (e.g., conjugate gradient, multigrid,... ) pros: can handle very large problems; can be implemented via callback (instead of matrix); asymptotic running times approaching linear time (in theory... )
193 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems. cons: prohibitively expensive for large problems; factors are quite dense for 3D (volumetric) problems Iterative (e.g., conjugate gradient, multigrid,... ) pros: can handle very large problems; can be implemented via callback (instead of matrix); asymptotic running times approaching linear time (in theory... ) cons: poor performance without good preconditioners; less benefit for multiple right-hand sides; best-in-class methods may handle only symmetric positive-(semi)definite systems
194 Numerical Issues Direct vs. Iterative Solvers Direct (e.g., LL T, LU, QR,...) pros: great for multiple right-hand sides; (can be) less sensitive to numerical instability; solve many types of problems, under/overdetermined systems. cons: prohibitively expensive for large problems; factors are quite dense for 3D (volumetric) problems Iterative (e.g., conjugate gradient, multigrid,... ) pros: can handle very large problems; can be implemented via callback (instead of matrix); asymptotic running times approaching linear time (in theory... ) cons: poor performance without good preconditioners; less benefit for multiple right-hand sides; best-in-class methods may handle only symmetric positive-(semi)definite systems No perfect solution! Each problem is different.
195 Solving Equations in Linear Time Is solving Poisson, Laplace, etc., truly linear time in 2D?
196 Solving Equations in Linear Time Is solving Poisson, Laplace, etc., truly linear time in 2D? Jury is still out, but keep inching forward: [Vaidya, 1991] use spanning tree as preconditioner [Alon et al., 1995] use low-stretch spanning trees [Spielman and Teng, 2004] first nearly linear time solver [Krishnan et al., 2013] practical solver for graphics Lots of recent activity in both preconditioners and direct solvers (e.g., [Koutis et al., 2011], [Gillman and Martinsson, 2013])
197 Solving Equations in Linear Time Is solving Poisson, Laplace, etc., truly linear time in 2D? Jury is still out, but keep inching forward: [Vaidya, 1991] use spanning tree as preconditioner [Alon et al., 1995] use low-stretch spanning trees [Spielman and Teng, 2004] first nearly linear time solver [Krishnan et al., 2013] practical solver for graphics Lots of recent activity in both preconditioners and direct solvers (e.g., [Koutis et al., 2011], [Gillman and Martinsson, 2013]) Best theoretical results may lack practical implementations!
198 Solving Equations in Linear Time Is solving Poisson, Laplace, etc., truly linear time in 2D? Jury is still out, but keep inching forward: [Vaidya, 1991] use spanning tree as preconditioner [Alon et al., 1995] use low-stretch spanning trees [Spielman and Teng, 2004] first nearly linear time solver [Krishnan et al., 2013] practical solver for graphics Lots of recent activity in both preconditioners and direct solvers (e.g., [Koutis et al., 2011], [Gillman and Martinsson, 2013]) Best theoretical results may lack practical implementations! Older codes benefit from extensive low-level optimization
199 Solving Equations in Linear Time Is solving Poisson, Laplace, etc., truly linear time in 2D? Jury is still out, but keep inching forward: [Vaidya, 1991] use spanning tree as preconditioner [Alon et al., 1995] use low-stretch spanning trees [Spielman and Teng, 2004] first nearly linear time solver [Krishnan et al., 2013] practical solver for graphics Lots of recent activity in both preconditioners and direct solvers (e.g., [Koutis et al., 2011], [Gillman and Martinsson, 2013]) Best theoretical results may lack practical implementations! Older codes benefit from extensive low-level optimization Long term: probably indistinguishable from O(n)
200 Boundary Conditions PDE (Laplace, Poisson, heat equation, etc.) determines behavior inside domain W
201 Boundary Conditions PDE (Laplace, Poisson, heat equation, etc.) determines behavior inside domain W Also need to say how solution behaves on boundary W
202 Boundary Conditions PDE (Laplace, Poisson, heat equation, etc.) determines behavior inside domain W Also need to say how solution behaves on boundary W Often trickiest part (both mathematically & numerically)
203 Boundary Conditions PDE (Laplace, Poisson, heat equation, etc.) determines behavior inside domain W Also need to say how solution behaves on boundary W Often trickiest part (both mathematically & numerically) Very easy to get wrong!
204 Dirichlet () prescribe values Dirichlet Boundary Conditions
205 Dirichlet Boundary Conditions Dirichlet () prescribe values E.g., f(0) =a, f(1) =b
206 Dirichlet Boundary Conditions Dirichlet () prescribe values E.g., f(0) =a, f(1) =b (Many possible functions in between! )
207 Neumann () prescribe derivatives Neumann Boundary Conditions
208 Neumann Boundary Conditions Neumann () prescribe derivatives E.g., f 0 (0) =u, f 0 (1) =v
209 Neumann Boundary Conditions Neumann () prescribe derivatives E.g., f 0 (0) =u, f 0 (1) =v (Again, many possible solutions.)
210 Both Neumann & Dirichlet Or: prescribe some values, some derivatives
211 Both Neumann & Dirichlet Or: prescribe some values, some derivatives E.g., f 0 (0) =u, f(1) =b
212 Both Neumann & Dirichlet Or: prescribe some values, some derivatives E.g., f 0 (0) =u, f(1) =b (What about f 0 (1) =v, f(1) =b?)
213 Laplace w/ Dirichlet Boundary Conditions (1D) 1D Laplace: 2 f/ x 2 = 0
214 Laplace w/ Dirichlet Boundary Conditions (1D) 1D Laplace: 2 f/ x 2 = 0 Solutions: f(x) = cx + d (linear functions)
215 Laplace w/ Dirichlet Boundary Conditions (1D) 1D Laplace: 2 f/ x 2 = 0 Solutions: f(x) = cx + d (linear functions) Can we always satisfy Dirichlet boundary conditions?
216 Laplace w/ Dirichlet Boundary Conditions (1D) 1D Laplace: 2 f/ x 2 = 0 Solutions: f(x) = cx + d (linear functions) Can we always satisfy Dirichlet boundary conditions? Yes: a line can interpolate any two points
217 Laplace w/ Neumann Boundary Conditions (1D) What about Neumann boundary conditions?
218 Laplace w/ Neumann Boundary Conditions (1D) What about Neumann boundary conditions? Solution must still be a line: f(x) =cx + d
219 Laplace w/ Neumann Boundary Conditions (1D) What about Neumann boundary conditions? Solution must still be a line: f(x) =cx + d Can we prescribe the derivative at both ends?
220 Laplace w/ Neumann Boundary Conditions (1D) What about Neumann boundary conditions? Solution must still be a line: f(x) =cx + d Can we prescribe the derivative at both ends? No! A line can have only one slope!
221 Laplace w/ Neumann Boundary Conditions (1D) What about Neumann boundary conditions? Solution must still be a line: f(x) =cx + d Can we prescribe the derivative at both ends? No! A line can have only one slope! In general: solutions to PDE may not exist for given BCs
222 Laplace w/ Dirichlet Boundary Conditions (2D) 2D Laplace: Df = 0
223 Laplace w/ Dirichlet Boundary Conditions (2D) 2D Laplace: Df = 0 Can we always satisfy Dirichlet boundary conditions?
224 Laplace w/ Dirichlet Boundary Conditions (2D) 2D Laplace: Df = 0 Can we always satisfy Dirichlet boundary conditions? Yes: Laplace is steady-state solution to heat flow d dt f = Df Dirichlet data is just heat along boundary
225 Laplace w/ Neumann Boundary Conditions (2D) What about Neumann boundary conditions?
226 Laplace w/ Neumann Boundary Conditions (2D) What about Neumann boundary conditions? Still want to solve Df = 0 Want to prescribe normal derivative n rf
227 Laplace w/ Neumann Boundary Conditions (2D) What about Neumann boundary conditions? Still want to solve Df = 0 Want to prescribe normal derivative n rf Wasn t always possible in 1D...
228 Laplace w/ Neumann Boundary Conditions (2D) What about Neumann boundary conditions? Still want to solve Df = 0 Want to prescribe normal derivative n rf Wasn t always possible in 1D... In 2D, we have divergence theorem: Z Z Z Z 0 =! Df = r rf = n rf W W W W
229 Laplace w/ Neumann Boundary Conditions (2D) What about Neumann boundary conditions? Still want to solve Df = 0 Want to prescribe normal derivative n rf Wasn t always possible in 1D... In 2D, we have divergence theorem: Z Z Z Z 0 =! Df = r rf = n rf W W W W Conclusion: can only solve Df = 0 if Neumann BCs have zero mean!
230 Discrete Boundary Conditions - Dirichlet Suppose we want to solve Du = f s.t. u W = g (Poisson equation w/ Dirichlet boundary conditions)
231 Discrete Boundary Conditions - Dirichlet Suppose we want to solve Du = f s.t. u W = g (Poisson equation w/ Dirichlet boundary conditions) Discretized Poisson equation as Cu = Mf
232 Discrete Boundary Conditions - Dirichlet Suppose we want to solve Du = f s.t. u W = g (Poisson equation w/ Dirichlet boundary conditions) Discretized Poisson equation as Cu = Mf Let I, B denote interior, boundary vertices, respectively. Get " #" # " #" # C II C IB u I M = II 0 f I C BI C BB u B 0 M BB f B
233 Discrete Boundary Conditions - Dirichlet Suppose we want to solve Du = f s.t. u W = g (Poisson equation w/ Dirichlet boundary conditions) Discretized Poisson equation as Cu = Mf Let I, B denote interior, boundary vertices, respectively. Get " #" # " #" # C II C IB u I M = II 0 f I C BI C BB u B 0 M BB f B Since u B is known (boundary values), solve just C II u I = M II f I C IB u B for u I (right-hand side is known).
234 Discrete Boundary Conditions - Dirichlet Suppose we want to solve Du = f s.t. u W = g (Poisson equation w/ Dirichlet boundary conditions) Discretized Poisson equation as Cu = Mf Let I, B denote interior, boundary vertices, respectively. Get " #" # " #" # C II C IB u I M = II 0 f I C BI C BB u B 0 M BB f B Since u B is known (boundary values), solve just C II u I = M II f I C IB u B for u I (right-hand side is known). Can skip matrix multiply and compute entries of RHS directly: A i f i  j2n (i)(cot a ij + cot b ij )u j Here N (i) denotes neighbors of i on the boundary
235 Discrete Boundary Conditions - Neumann Integrate both sides of Du = f over cell C i ( finite volume ) Z Z Z Z! f = Du = r ru = n ru C i C i C i C i Gives usual cotangent formula for interior vertices; for boundary vertex i, yields A ii! = 1 2 (g a + g b )+ 1 2 Â j2n int (cot a ij + cot b ij )(u j u i ) Here g a, g b are prescribed normal derivatives; just subtract from RHS and solve Cu = Mf as usual
236 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin)
237 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar
238 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar When in doubt, return to smooth equations and integrate!
239 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar When in doubt, return to smooth equations and integrate!... and make sure your equation has a solution!
240 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar When in doubt, return to smooth equations and integrate!... and make sure your equation has a solution! Solver will NOT always tell you if there s a problem!
241 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar When in doubt, return to smooth equations and integrate!... and make sure your equation has a solution! Solver will NOT always tell you if there s a problem! Easy test? Compute the residual r := Ax b. If the relative residual r / b is far from zero (e.g., greater than in double precision), you did not actually solve your problem!
242 Discrete Boundary Conditions - Neumann Other possible boundary conditions (e.g., Robin) Dirichlet, Neumann most common implementation of other BCs will be similar When in doubt, return to smooth equations and integrate!... and make sure your equation has a solution! Solver will NOT always tell you if there s a problem! Easy test? Compute the residual r := Ax b. If the relative residual r / b is far from zero (e.g., greater than in double precision), you did not actually solve your problem!
243 Alternative Discretizations Have spent a lot of time on triangle meshes...
244 Alternative Discretizations Have spent a lot of time on triangle meshes plenty of other ways to describe a surface!
245 Alternative Discretizations Have spent a lot of time on triangle meshes plenty of other ways to describe a surface! E.g., points are increasingly popular (due to 3D scanning)
246 Alternative Discretizations Have spent a lot of time on triangle meshes plenty of other ways to describe a surface! E.g., points are increasingly popular (due to 3D scanning) Also: more accurate discretization on triangle meshes
247 Quad, Polygon Meshes Quads popular alternative to triangles. Why?
248 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface
249 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface nice bases can be built via tensor products
250 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface nice bases can be built via tensor products see [Bommes et al., 2013] for further discussion
251 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface nice bases can be built via tensor products see [Bommes et al., 2013] for further discussion More generally: meshes with quads and triangles and...
252 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface nice bases can be built via tensor products see [Bommes et al., 2013] for further discussion More generally: meshes with quads and triangles and... Nice discretization: [Alexa and Wardetzky, 2011]
253 Quad, Polygon Meshes Quads popular alternative to triangles. Why? capture principal curvatures of a surface nice bases can be built via tensor products see [Bommes et al., 2013] for further discussion More generally: meshes with quads and triangles and... Nice discretization: [Alexa and Wardetzky, 2011] Can then solve all the same problems (Laplace, Poisson, heat,... )
254 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... )
255 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator!
256 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D
257 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D d dtu = Du =) Du (u(t) u(0))/t
258 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D d dt u = Du =) Du (u(t) u(0))/t How do we get u(t)? Convolve u with (Euclidean) heat kernel 1 4pT er2 /4T
259 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D d dt u = Du =) Du (u(t) u(0))/t How do we get u(t)? Convolve u with (Euclidean) heat kernel 1 4pT er2 /4T Converges with more samples, T goes to zero (under certain conditions!)
260 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D d dtu = Du =) Du (u(t) u(0))/t How do we get u(t)? Convolve u with 1 (Euclidean) heat kernel 4pT er2 /4T Converges with more samples, T goes to zero (under certain conditions!) Details: [Belkin et al., 2009, Liu et al., 2012]
261 Point Clouds Real data often point cloud with no connectivity (plus noise, holes... ) Can still build Laplace operator! Rough idea: use heat flow to discretize D d dtu = Du =) Du (u(t) u(0))/t How do we get u(t)? Convolve u with 1 (Euclidean) heat kernel 4pT er2 /4T Converges with more samples, T goes to zero (under certain conditions!) Details: [Belkin et al., 2009, Liu et al., 2012] From there, solve all the same problems! (Again.)
262 Dual Mesh barycentric circumcentric (superimposed) Earlier saw Laplacian discretized via dual mesh
263 Dual Mesh barycentric circumcentric (superimposed) Earlier saw Laplacian discretized via dual mesh Different duals lead to operators with different accuracy
264 Dual Mesh barycentric circumcentric (superimposed) Earlier saw Laplacian discretized via dual mesh Different duals lead to operators with different accuracy Space of orthogonal duals explored by [Mullen et al., 2011]
265 Dual Mesh barycentric circumcentric (superimposed) Earlier saw Laplacian discretized via dual mesh Different duals lead to operators with different accuracy Space of orthogonal duals explored by [Mullen et al., 2011] Leads to many applications in geometry processing [de Goes et al., 2012, de Goes et al., 2013, de Goes et al., 2014]
266 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes
267 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes Popular choice: tetrahedral meshes (graded, conform to boundary,... )
268 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes Popular choice: tetrahedral meshes (graded, conform to boundary,... ) Many ways to get Laplace matrix
269 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes Popular choice: tetrahedral meshes (graded, conform to boundary,... ) Many ways to get Laplace matrix One nice way: discrete exterior calculus (DEC) [Hirani, 2003, Desbrun et al., 2005]
270 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes Popular choice: tetrahedral meshes (graded, conform to boundary,... ) Many ways to get Laplace matrix One nice way: discrete exterior calculus (DEC) [Hirani, 2003, Desbrun et al., 2005] Just incidence matrices (e.g., which tets contain which triangles?) & primal / dual volumes (area, length, etc.).
271 Volumes / Tetrahedral Meshes Same problems (Poisson, Laplace, etc.) can also be solved on volumes Popular choice: tetrahedral meshes (graded, conform to boundary,... ) Many ways to get Laplace matrix One nice way: discrete exterior calculus (DEC) [Hirani, 2003, Desbrun et al., 2005] Just incidence matrices (e.g., which tets contain which triangles?) & primal / dual volumes (area, length, etc.). Added bonus: play with definition of dual to improve accuracy [Mullen et al., 2011].
272 ...and More! Covered some standard discretizations
273 ...and More! Covered some standard discretizations Many possibilities (level sets, hex meshes... )
274 ...and More! Covered some standard discretizations Many possibilities (level sets, hex meshes... ) Often enough to have gradient G and inner product W.
275 ...and More! Covered some standard discretizations Many possibilities (level sets, hex meshes... ) Often enough to have gradient G and inner product W. (weak!) Laplacian is then C = G T WG (think Dirichlet energy)
276 ...and More! Covered some standard discretizations Many possibilities (level sets, hex meshes... ) Often enough to have gradient G and inner product W. (weak!) Laplacian is then C = G T WG (think Dirichlet energy) Key message: build Laplace; do lots of cool stuff.
277 APPLICATIONS
278 Remarkably Common Pipeline {simple pre-processing}!d( 1)! {simple post-processing}
279 Common Refrain Our method boils down to backslash in Matlab!
280 Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
281 Look here! Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
282 Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
283 Df = 0 Reminder: Variational Interpretation min f (x) RS krf (x)k2 da l <calculus> Df (x) =0
284 Df = 0 Reminder: Variational Interpretation min f (x) RS krf (x)k2 da l <calculus> Df (x) =0 The (inverse) Laplacian wants to make functions smooth. Elliptic regularity
285 Df = 0 Application: Mesh Parameterization Want smooth f : M! R 2.
286 Df = 0 Variational Approach min f :M!R 2 R krf k 2 Does this work?
287 Df = 0 Variational Approach min f :M!R 2 R krf k 2 Does this work? f (x) const.
288 Df = 0 Harmonic Parameterization min f :M!R 2 f M fixed R krf k 2 [Eck et al., 1995]
289 Df = 0 Harmonic Parameterization min f :M!R 2 f M fixed R krf k 2 [Eck et al., 1995] Df = 0 in M\ M, with f M fixed
290 Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
291 Df = g Recall: Green s Function Dg p = d p for p 2 M
292 Df = g Application: Biharmonic Distances d b (p, q) kg p g q k 2 [Lipman et al., 2010], formula in [Solomon et al., 2014]
293 Df = g Hodge Decomposition ~v(x) =R 90 rg + rf +~ h(x) Divergence-free part: R 90 rg Curl-free part: rf Harmonic part: ~ h(x) (= ~ 0 if surface has no holes)
294 Df = g Computing the Curl-Free Part min f (x) RS krf (x) ~v(x)k2 da l <calculus> Df (x) =r ~v(x) Get divergence-free part as~v(x) rf (x) (when~ h ~ 0)
295 Df = g Application: Vector Field Design Df = K! ~v(x) =rf (x) [Crane et al., 2010, de Goes and Crane, 2010]
296 Df = g Application: Earth Mover s Distance Z min k~ J(x)k ~ J(x) M such that~ J = R 90 rg + rf +~ h(x) Df = r 1 r 0 [Solomon et al., 2014]
297 Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
298 f t = Df Generalizing Gaussian Blurs Gradient descent on R krf (x)k 2 dx: f (x,t) t = D x f (x, t) with f (,0) f 0 ( ). Image by M. Bottazzi
299 f t = Df Application: Implicit Fairing Idea: Take f 0 (x) to be the coordinate function.
300 f t = Df Application: Implicit Fairing Idea: Take f 0 (x) to be the coordinate function. Detail: D changes over time. [Desbrun et al., 1999]
301 Df = g Alternative: Screened Poisson Smoothing Simplest incarnation of [Chuang and Kazhdan, 2011]: min f (x) a 2 kf f 0 k 2 + krf k 2 l (a 2 I D)f = a 2 f 0
302 f t = Df! Df = g Interesting Connection (Semi-)Implicit Euler: (I hl)u k+1 = u k Screened Poisson: (a 2 I D)f = a 2 f 0
303 f t = Df! Df = g Interesting Connection (Semi-)Implicit Euler: (I hl)u k+1 = u k Screened Poisson: (a 2 I D)f = a 2 f 0 One time step of implicit Euler is screened Poisson.
304 f t = Df! Df = g Interesting Connection (Semi-)Implicit Euler: (I hl)u k+1 = u k Screened Poisson: (a 2 I D)f = a 2 f 0 One time step of implicit Euler is screened Poisson. Accidentally replaced one PDE with another!
305 f t = Df and Df = g Application: The Heat Method Eikonal equation for geodesics: krfk 2 = 1 =) Need direction of rf.
306 f t = Df and Df = g Application: The Heat Method Eikonal equation for geodesics: krfk 2 = 1 =) Need direction of rf. Idea: Find u such that ru is parallel to geodesic.
307 f t = Df and Df = g Application: The Heat Method 1 Integrate u 0 = ru (heat equation) to time t 1. 2 Define vector field X ru kruk 2. 3 Solve least-squares problem rf X () Df = r X. Blazingly fast! [Crane et al., 2013b]
308 Reminder: Model Equations Df = 0 Laplace equation Linear solve Df = g Poisson equation Linear solve f t = Df Df i = l i f i Heat equation ODE time-step Vibration modes Eigenproblem
309 Df i = l i f i Laplace-Beltrami Eigenfunctions Image by B. Vallet and B. Lévy Use eigenvalues and eigenfunctions to characterize shape.
310 Df i = l i f i Intrinsic Laplacian-Based Descriptors All computable from eigenfunctions! HKS(x; t) = i e l it f i (x) 2 [Sun et al., 2009] GPS(x) = f1 (x) p l1, p f 2(x) l2,... [Rustamov, 2007] WKS(x; e) =C e  i f i (x) 2 exp 1 2s 2 (e log( l i )) [Aubry et al., 2011] Many others or learn a function of eigenvalues! [Litman and Bronstein, 2014]
311 f t = Df Example: Heat Kernel Signature Heat diffusion encodes geometry for all times t 0! HKS(x; t) k t (x, x) Amount of heat diffused from x to itself over at time t. [Sun et al., 2009] Signature of point x is a function of t 0 Intrinsic descriptor
312 Df i = l i f i HKS via Laplacian Eigenfunctions Df i = l i f i, f 0 (x) =Â a i f i (x) i f (x, t) t = Df with f (x,0) f 0 (x)
313 Df i = l i f i HKS via Laplacian Eigenfunctions Df i = l i f i, f 0 (x) =Â a i f i (x) i f (x, t) t = Df with f (x,0) f 0 (x) =) f (x, t) =Â a i e lit f i (x) i
314 Df i = l i f i HKS via Laplacian Eigenfunctions Df i = l i f i, f 0 (x) =Â a i f i (x) i f (x, t) t = Df with f (x,0) f 0 (x) =) f (x, t) =Â a i e lit f i (x) i =) HKS(x; t) k t (x, x) = Â e l i t f i (x) 2 i
315 Df i = l i f i Application: Shape Retrieval Solve problems like shape similarity search. Shape DNA [Reuter et al., 2006]: Identify a shape by its vector of Laplacian eigenvalues
316 Df i = l i f i Different Application: Quadrangulation Connect critical points (well-spaced) of f i in Morse-Smale complex. [Dong et al., 2006]
317 Other Ideas I Mesh editing: Displacement of vertices and parameters of a deformation should be smooth functions along a surface [Sorkine et al., 2004, Sorkine and Alexa, 2007] (and many others)
318 Other Ideas II Surface reconstruction: Poisson equation helps distinguish inside and outside [Kazhdan et al., 2006] Regularization for mapping: To compute f : M 1! M 2, ask that f D 1 D 2 f [Ovsjanikov et al., 2012]
Discrete Differential Geometry. Discrete Laplace-Beltrami operator and discrete conformal mappings.
Discrete differential geometry. Discrete Laplace-Beltrami operator and discrete conformal mappings. Technische Universität Berlin Geometric Methods in Classical and Quantum Lattice Systems, Caputh, September
More informationSpectral Processing. Misha Kazhdan
Spectral Processing Misha Kazhdan [Taubin, 1995] A Signal Processing Approach to Fair Surface Design [Desbrun, et al., 1999] Implicit Fairing of Arbitrary Meshes [Vallet and Levy, 2008] Spectral Geometry
More informationIFT LAPLACIAN APPLICATIONS. Mikhail Bessmeltsev
IFT 6112 09 LAPLACIAN APPLICATIONS http://www-labs.iro.umontreal.ca/~bmpix/teaching/6112/2018/ Mikhail Bessmeltsev Rough Intuition http://pngimg.com/upload/hammer_png3886.png You can learn a lot about
More informationPDE Solvers for Fluid Flow
PDE Solvers for Fluid Flow issues and algorithms for the Streaming Supercomputer Eran Guendelman February 5, 2002 Topics Equations for incompressible fluid flow 3 model PDEs: Hyperbolic, Elliptic, Parabolic
More informationJustin Solomon MIT, Spring 2017
Justin Solomon MIT, Spring 2017 http://pngimg.com/upload/hammer_png3886.png You can learn a lot about a shape by hitting it (lightly) with a hammer! What can you learn about its shape from vibration frequencies
More informationIFT CONTINUOUS LAPLACIAN Mikhail Bessmeltsev
IFT 6112 07 CONTINUOUS LAPLACIAN http://www-labs.iro.umontreal.ca/~bmpix/teaching/6112/2018/ Mikhail Bessmeltsev Famous Motivation An Experiment Unreasonable to Ask? Length of string http://www.takamine.com/templates/default/images/gclassical.png
More informationLecture 9 Approximations of Laplace s Equation, Finite Element Method. Mathématiques appliquées (MATH0504-1) B. Dewals, C.
Lecture 9 Approximations of Laplace s Equation, Finite Element Method Mathématiques appliquées (MATH54-1) B. Dewals, C. Geuzaine V1.2 23/11/218 1 Learning objectives of this lecture Apply the finite difference
More informationEE Technion, Spring then. can be isometrically embedded into can be realized as a Gram matrix of rank, Properties:
5/25/200 2 A mathematical exercise Assume points with the metric are isometrically embeddable into Then, there exists a canonical form such that for all Spectral methods We can also write Alexander & Michael
More informationCS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher
http://igl.ethz.ch/projects/arap/arap_web.pdf CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher Homework 4: June 5 Project: June 6 Scribe notes: One week
More informationCURRENT MATERIAL: Vector Calculus.
Math 275, section 002 (Ultman) Fall 2011 FINAL EXAM REVIEW The final exam will be held on Wednesday 14 December from 10:30am 12:30pm in our regular classroom. You will be allowed both sides of an 8.5 11
More informationEXAM MATHEMATICAL METHODS OF PHYSICS. TRACK ANALYSIS (Chapters I-V). Thursday, June 7th,
EXAM MATHEMATICAL METHODS OF PHYSICS TRACK ANALYSIS (Chapters I-V) Thursday, June 7th, 1-13 Students who are entitled to a lighter version of the exam may skip problems 1, 8-11 and 16 Consider the differential
More informationLecture 3: Function Spaces I Finite Elements Modeling. Bruno Lévy
Lecture 3: Function Spaces I Finite Elements Modeling Bruno Lévy Overview 1. Motivations 2. Function Spaces 3. Discretizing a PDE 4. Example: Discretizing the Laplacian 5. Eigenfunctions Spectral Mesh
More informationFinal Examination. CS 205A: Mathematical Methods for Robotics, Vision, and Graphics (Fall 2013), Stanford University
Final Examination CS 205A: Mathematical Methods for Robotics, Vision, and Graphics (Fall 2013), Stanford University The exam runs for 3 hours. The exam contains eight problems. You must complete the first
More informationMath 433 Outline for Final Examination
Math 433 Outline for Final Examination Richard Koch May 3, 5 Curves From the chapter on curves, you should know. the formula for arc length of a curve;. the definition of T (s), N(s), B(s), and κ(s) for
More informationPDEs, part 1: Introduction and elliptic PDEs
PDEs, part 1: Introduction and elliptic PDEs Anna-Karin Tornberg Mathematical Models, Analysis and Simulation Fall semester, 2013 Partial di erential equations The solution depends on several variables,
More informationFundamental Solutions and Green s functions. Simulation Methods in Acoustics
Fundamental Solutions and Green s functions Simulation Methods in Acoustics Definitions Fundamental solution The solution F (x, x 0 ) of the linear PDE L {F (x, x 0 )} = δ(x x 0 ) x R d Is called the fundamental
More informationSpectral Algorithms I. Slides based on Spectral Mesh Processing Siggraph 2010 course
Spectral Algorithms I Slides based on Spectral Mesh Processing Siggraph 2010 course Why Spectral? A different way to look at functions on a domain Why Spectral? Better representations lead to simpler solutions
More informationAMS 529: Finite Element Methods: Fundamentals, Applications, and New Trends
AMS 529: Finite Element Methods: Fundamentals, Applications, and New Trends Lecture 3: Finite Elements in 2-D Xiangmin Jiao SUNY Stony Brook Xiangmin Jiao Finite Element Methods 1 / 18 Outline 1 Boundary
More informationLectures in Discrete Differential Geometry 2 Surfaces
Lectures in Discrete Differential Geometry 2 Surfaces Etienne Vouga February 4, 24 Smooth Surfaces in R 3 In this section we will review some properties of smooth surfaces R 3. We will assume that is parameterized
More informationSolving PDEs with Multigrid Methods p.1
Solving PDEs with Multigrid Methods Scott MacLachlan maclachl@colorado.edu Department of Applied Mathematics, University of Colorado at Boulder Solving PDEs with Multigrid Methods p.1 Support and Collaboration
More informationFrequency, Vibration, and Fourier
Lecture 22: Frequency, Vibration, and Fourier Computer Graphics CMU 15-462/15-662, Fall 2015 Last time: Numerical Linear Algebra Graphics via linear systems of equations Why linear? Have to solve BIG problems
More informationThe Laplacian ( ) Matthias Vestner Dr. Emanuele Rodolà Room , Informatik IX
The Laplacian (26.05.2014) Matthias Vestner Dr. Emanuele Rodolà {vestner,rodola}@in.tum.de Room 02.09.058, Informatik IX Seminar «The metric approach to shape matching» Alfonso Ros Wednesday, May 28th
More informationCURRENT MATERIAL: Vector Calculus.
Math 275, section 002 (Ultman) Spring 2012 FINAL EXAM REVIEW The final exam will be held on Wednesday 9 May from 8:00 10:00am in our regular classroom. You will be allowed both sides of two 8.5 11 sheets
More informationSpectral Geometry Processing with Manifold Harmonics. Bruno Vallet Bruno Lévy
Spectral Geometry Processing with Manifold Harmonics Bruno Vallet Bruno Lévy Introduction Introduction II. Harmonics III. DEC formulation IV. Filtering V. Numerics Results and conclusion Introduction Extend
More informationIntroduction to gradient descent
6-1: Introduction to gradient descent Prof. J.C. Kao, UCLA Introduction to gradient descent Derivation and intuitions Hessian 6-2: Introduction to gradient descent Prof. J.C. Kao, UCLA Introduction Our
More informationMath background. Physics. Simulation. Related phenomena. Frontiers in graphics. Rigid fluids
Fluid dynamics Math background Physics Simulation Related phenomena Frontiers in graphics Rigid fluids Fields Domain Ω R2 Scalar field f :Ω R Vector field f : Ω R2 Types of derivatives Derivatives measure
More informationAPPENDIX A. Background Mathematics. A.1 Linear Algebra. Vector algebra. Let x denote the n-dimensional column vector with components x 1 x 2.
APPENDIX A Background Mathematics A. Linear Algebra A.. Vector algebra Let x denote the n-dimensional column vector with components 0 x x 2 B C @. A x n Definition 6 (scalar product). The scalar product
More informationGame Physics. Game and Media Technology Master Program - Utrecht University. Dr. Nicolas Pronost
Game and Media Technology Master Program - Utrecht University Dr. Nicolas Pronost Soft body physics Soft bodies In reality, objects are not purely rigid for some it is a good approximation but if you hit
More informationRelation of Pure Minimum Cost Flow Model to Linear Programming
Appendix A Page 1 Relation of Pure Minimum Cost Flow Model to Linear Programming The Network Model The network pure minimum cost flow model has m nodes. The external flows given by the vector b with m
More informationMATH 590: Meshfree Methods
MATH 590: Meshfree Methods Chapter 34: Improving the Condition Number of the Interpolation Matrix Greg Fasshauer Department of Applied Mathematics Illinois Institute of Technology Fall 2010 fasshauer@iit.edu
More informationNotes for CS542G (Iterative Solvers for Linear Systems)
Notes for CS542G (Iterative Solvers for Linear Systems) Robert Bridson November 20, 2007 1 The Basics We re now looking at efficient ways to solve the linear system of equations Ax = b where in this course,
More information11.3 MATLAB for Partial Differential Equations
276 3. Generate the shape functions N (i) j = a (i) j where i =1, 2, 3,..., m and j =1, 2, 3,..., m. + b (i) j x + c(i) j y (11.2.17) 4. Compute the integrals for matrix elements α ij and vector elements
More informationNumerical Linear Algebra Primer. Ryan Tibshirani Convex Optimization /36-725
Numerical Linear Algebra Primer Ryan Tibshirani Convex Optimization 10-725/36-725 Last time: proximal gradient descent Consider the problem min g(x) + h(x) with g, h convex, g differentiable, and h simple
More informationConservation of mass. Continuum Mechanics. Conservation of Momentum. Cauchy s Fundamental Postulate. # f body
Continuum Mechanics We ll stick with the Lagrangian viewpoint for now Let s look at a deformable object World space: points x in the object as we see it Object space (or rest pose): points p in some reference
More informationFunctional Maps ( ) Dr. Emanuele Rodolà Room , Informatik IX
Functional Maps (12.06.2014) Dr. Emanuele Rodolà rodola@in.tum.de Room 02.09.058, Informatik IX Seminar «LP relaxation for elastic shape matching» Fabian Stark Wednesday, June 18th 14:00 Room 02.09.023
More informationA Hybrid Method for the Wave Equation. beilina
A Hybrid Method for the Wave Equation http://www.math.unibas.ch/ beilina 1 The mathematical model The model problem is the wave equation 2 u t 2 = (a 2 u) + f, x Ω R 3, t > 0, (1) u(x, 0) = 0, x Ω, (2)
More informationDifferential Geometry: Discrete Exterior Calculus
Differential Geometry: Discrete Exterior Calculus [Discrete Exterior Calculus (Thesis). Hirani, 23] [Discrete Differential Forms for Computational Modeling. Desbrun et al., 25] [Build Your Own DEC at Home.
More informationNumerical Optimization
Numerical Optimization Unit 2: Multivariable optimization problems Che-Rung Lee Scribe: February 28, 2011 (UNIT 2) Numerical Optimization February 28, 2011 1 / 17 Partial derivative of a two variable function
More informationMath Linear Algebra II. 1. Inner Products and Norms
Math 342 - Linear Algebra II Notes 1. Inner Products and Norms One knows from a basic introduction to vectors in R n Math 254 at OSU) that the length of a vector x = x 1 x 2... x n ) T R n, denoted x,
More informationScientific Computing with Case Studies SIAM Press, Lecture Notes for Unit VII Sparse Matrix
Scientific Computing with Case Studies SIAM Press, 2009 http://www.cs.umd.edu/users/oleary/sccswebpage Lecture Notes for Unit VII Sparse Matrix Computations Part 1: Direct Methods Dianne P. O Leary c 2008
More informationScattered Interpolation Survey
Scattered Interpolation Survey j.p.lewis u. southern california Scattered Interpolation Survey p.1/53 Scattered vs. Regular domain Scattered Interpolation Survey p.2/53 Motivation modeling animated character
More informationCS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher
CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher http://graphics.stanford.edu/projects/lgl/papers/nbwyg-oaicsm-11/nbwyg-oaicsm-11.pdf Need to understand
More informationElliptic Problems / Multigrid. PHY 604: Computational Methods for Physics and Astrophysics II
Elliptic Problems / Multigrid Summary of Hyperbolic PDEs We looked at a simple linear and a nonlinear scalar hyperbolic PDE There is a speed associated with the change of the solution Explicit methods
More informationMath (P)Review Part II:
Math (P)Review Part II: Vector Calculus Computer Graphics Assignment 0.5 (Out today!) Same story as last homework; second part on vector calculus. Slightly fewer questions Last Time: Linear Algebra Touched
More informationHow to solve the stochastic partial differential equation that gives a Matérn random field using the finite element method
arxiv:1803.03765v1 [stat.co] 10 Mar 2018 How to solve the stochastic partial differential equation that gives a Matérn random field using the finite element method Haakon Bakka bakka@r-inla.org March 13,
More informationA case study in Interaction cohomology Oliver Knill, 3/18/2016
A case study in Interaction cohomology Oliver Knill, 3/18/2016 Simplicial Cohomology Simplicial cohomology is defined by an exterior derivative df (x) = F (dx) on valuation forms F (x) on subgraphs x of
More informationDirectional Field. Xiao-Ming Fu
Directional Field Xiao-Ming Fu Outlines Introduction Discretization Representation Objectives and Constraints Outlines Introduction Discretization Representation Objectives and Constraints Definition Spatially-varying
More informationShort title: Total FETI. Corresponding author: Zdenek Dostal, VŠB-Technical University of Ostrava, 17 listopadu 15, CZ Ostrava, Czech Republic
Short title: Total FETI Corresponding author: Zdenek Dostal, VŠB-Technical University of Ostrava, 17 listopadu 15, CZ-70833 Ostrava, Czech Republic mail: zdenek.dostal@vsb.cz fax +420 596 919 597 phone
More informationFast Iterative Solution of Saddle Point Problems
Michele Benzi Department of Mathematics and Computer Science Emory University Atlanta, GA Acknowledgments NSF (Computational Mathematics) Maxim Olshanskii (Mech-Math, Moscow State U.) Zhen Wang (PhD student,
More informationSummary for Vector Calculus and Complex Calculus (Math 321) By Lei Li
Summary for Vector alculus and omplex alculus (Math 321) By Lei Li 1 Vector alculus 1.1 Parametrization urves, surfaces, or volumes can be parametrized. Below, I ll talk about 3D case. Suppose we use e
More information6.4 Krylov Subspaces and Conjugate Gradients
6.4 Krylov Subspaces and Conjugate Gradients Our original equation is Ax = b. The preconditioned equation is P Ax = P b. When we write P, we never intend that an inverse will be explicitly computed. P
More informationNumerical Methods I Non-Square and Sparse Linear Systems
Numerical Methods I Non-Square and Sparse Linear Systems Aleksandar Donev Courant Institute, NYU 1 donev@courant.nyu.edu 1 MATH-GA 2011.003 / CSCI-GA 2945.003, Fall 2014 September 25th, 2014 A. Donev (Courant
More informationPreface to the Second Edition. Preface to the First Edition
n page v Preface to the Second Edition Preface to the First Edition xiii xvii 1 Background in Linear Algebra 1 1.1 Matrices................................. 1 1.2 Square Matrices and Eigenvalues....................
More informationReview for Exam 2 Ben Wang and Mark Styczynski
Review for Exam Ben Wang and Mark Styczynski This is a rough approximation of what we went over in the review session. This is actually more detailed in portions than what we went over. Also, please note
More informationSoft Bodies. Good approximation for hard ones. approximation breaks when objects break, or deform. Generalization: soft (deformable) bodies
Soft-Body Physics Soft Bodies Realistic objects are not purely rigid. Good approximation for hard ones. approximation breaks when objects break, or deform. Generalization: soft (deformable) bodies Deformed
More informationIndex. C 2 ( ), 447 C k [a,b], 37 C0 ( ), 618 ( ), 447 CD 2 CN 2
Index advection equation, 29 in three dimensions, 446 advection-diffusion equation, 31 aluminum, 200 angle between two vectors, 58 area integral, 439 automatic step control, 119 back substitution, 604
More informationFinal Exam May 4, 2016
1 Math 425 / AMCS 525 Dr. DeTurck Final Exam May 4, 2016 You may use your book and notes on this exam. Show your work in the exam book. Work only the problems that correspond to the section that you prepared.
More informationLucas-Kanade Optical Flow. Computer Vision Carnegie Mellon University (Kris Kitani)
Lucas-Kanade Optical Flow Computer Vision 16-385 Carnegie Mellon University (Kris Kitani) I x u + I y v + I t =0 I x = @I @x I y = @I u = dx v = dy I @y t = @I dt dt @t spatial derivative optical flow
More informationFFTs in Graphics and Vision. The Laplace Operator
FFTs in Graphics and Vision The Laplace Operator 1 Outline Math Stuff Symmetric/Hermitian Matrices Lagrange Multipliers Diagonalizing Symmetric Matrices The Laplacian Operator 2 Linear Operators Definition:
More informationProjected Surface Finite Elements for Elliptic Equations
Available at http://pvamu.edu/aam Appl. Appl. Math. IN: 1932-9466 Vol. 8, Issue 1 (June 2013), pp. 16 33 Applications and Applied Mathematics: An International Journal (AAM) Projected urface Finite Elements
More information(1) Recap of Differential Calculus and Integral Calculus (2) Preview of Calculus in three dimensional space (3) Tools for Calculus 3
Math 127 Introduction and Review (1) Recap of Differential Calculus and Integral Calculus (2) Preview of Calculus in three dimensional space (3) Tools for Calculus 3 MATH 127 Introduction to Calculus III
More information1 Vector Calculus. 1.1 Dot and Cross Product. hu, vi Euc := u v cos(q). Vector Calculus Review
Vector Calculus Review 1 Vector Calculus 1.1 Dot and Cross Product In our study of linear algebra, we looked inner products in the abstract, i.e., we said that an inner product h, i was any operation that
More informationMath 302 Outcome Statements Winter 2013
Math 302 Outcome Statements Winter 2013 1 Rectangular Space Coordinates; Vectors in the Three-Dimensional Space (a) Cartesian coordinates of a point (b) sphere (c) symmetry about a point, a line, and a
More informationIterative Methods for Linear Systems
Iterative Methods for Linear Systems 1. Introduction: Direct solvers versus iterative solvers In many applications we have to solve a linear system Ax = b with A R n n and b R n given. If n is large the
More informationDefinition 1.2. Let p R n be a point and v R n be a non-zero vector. The line through p in direction v is the set
Important definitions and results 1. Algebra and geometry of vectors Definition 1.1. A linear combination of vectors v 1,..., v k R n is a vector of the form c 1 v 1 + + c k v k where c 1,..., c k R are
More informationData Analysis and Manifold Learning Lecture 7: Spectral Clustering
Data Analysis and Manifold Learning Lecture 7: Spectral Clustering Radu Horaud INRIA Grenoble Rhone-Alpes, France Radu.Horaud@inrialpes.fr http://perception.inrialpes.fr/ Outline of Lecture 7 What is spectral
More informationFrom Stationary Methods to Krylov Subspaces
Week 6: Wednesday, Mar 7 From Stationary Methods to Krylov Subspaces Last time, we discussed stationary methods for the iterative solution of linear systems of equations, which can generally be written
More informationHandout to Wu Characteristic Harvard math table talk Oliver Knill, 3/8/2016
Handout to Wu Characteristic Harvard math table talk Oliver Knill, 3/8/2016 Definitions Let G = (V, E) be a finite simple graph with vertex set V and edge set E. The f-vector v(g) = (v 0 (G), v 1 (G),...,
More informationPreparation for the Final
Preparation for the Final Basic Set of Problems that you should be able to do: - all problems on your tests (- 3 and their samples) - ex tra practice problems in this documents. The final will be a mix
More informationCS 542G: The Poisson Problem, Finite Differences
CS 542G: The Poisson Problem, Finite Differences Robert Bridson November 10, 2008 1 The Poisson Problem At the end last time, we noticed that the gravitational potential has a zero Laplacian except at
More informationCS 542G: Robustifying Newton, Constraints, Nonlinear Least Squares
CS 542G: Robustifying Newton, Constraints, Nonlinear Least Squares Robert Bridson October 29, 2008 1 Hessian Problems in Newton Last time we fixed one of plain Newton s problems by introducing line search
More informationAn Efficient Low Memory Implicit DG Algorithm for Time Dependent Problems
An Efficient Low Memory Implicit DG Algorithm for Time Dependent Problems P.-O. Persson and J. Peraire Massachusetts Institute of Technology 2006 AIAA Aerospace Sciences Meeting, Reno, Nevada January 9,
More informationPartial Differential Equations
Partial Differential Equations Introduction Deng Li Discretization Methods Chunfang Chen, Danny Thorne, Adam Zornes CS521 Feb.,7, 2006 What do You Stand For? A PDE is a Partial Differential Equation This
More informationU.C. Berkeley CS270: Algorithms Lecture 21 Professor Vazirani and Professor Rao Last revised. Lecture 21
U.C. Berkeley CS270: Algorithms Lecture 21 Professor Vazirani and Professor Rao Scribe: Anupam Last revised Lecture 21 1 Laplacian systems in nearly linear time Building upon the ideas introduced in the
More informationStabilization and Acceleration of Algebraic Multigrid Method
Stabilization and Acceleration of Algebraic Multigrid Method Recursive Projection Algorithm A. Jemcov J.P. Maruszewski Fluent Inc. October 24, 2006 Outline 1 Need for Algorithm Stabilization and Acceleration
More informationIntroduction to Algebraic and Geometric Topology Week 14
Introduction to Algebraic and Geometric Topology Week 14 Domingo Toledo University of Utah Fall 2016 Computations in coordinates I Recall smooth surface S = {f (x, y, z) =0} R 3, I rf 6= 0 on S, I Chart
More informationChapter Two: Numerical Methods for Elliptic PDEs. 1 Finite Difference Methods for Elliptic PDEs
Chapter Two: Numerical Methods for Elliptic PDEs Finite Difference Methods for Elliptic PDEs.. Finite difference scheme. We consider a simple example u := subject to Dirichlet boundary conditions ( ) u
More informationNonlinear Optimization for Optimal Control
Nonlinear Optimization for Optimal Control Pieter Abbeel UC Berkeley EECS Many slides and figures adapted from Stephen Boyd [optional] Boyd and Vandenberghe, Convex Optimization, Chapters 9 11 [optional]
More informationTranspose & Dot Product
Transpose & Dot Product Def: The transpose of an m n matrix A is the n m matrix A T whose columns are the rows of A. So: The columns of A T are the rows of A. The rows of A T are the columns of A. Example:
More informationAn Algorithmist s Toolkit September 15, Lecture 2
18.409 An Algorithmist s Toolkit September 15, 007 Lecture Lecturer: Jonathan Kelner Scribe: Mergen Nachin 009 1 Administrative Details Signup online for scribing. Review of Lecture 1 All of the following
More information2.29 Numerical Fluid Mechanics Spring 2015 Lecture 9
Spring 2015 Lecture 9 REVIEW Lecture 8: Direct Methods for solving (linear) algebraic equations Gauss Elimination LU decomposition/factorization Error Analysis for Linear Systems and Condition Numbers
More informationBoundary Value Problems and Iterative Methods for Linear Systems
Boundary Value Problems and Iterative Methods for Linear Systems 1. Equilibrium Problems 1.1. Abstract setting We want to find a displacement u V. Here V is a complete vector space with a norm v V. In
More informationCourse Notes Math 275 Boise State University. Shari Ultman
Course Notes Math 275 Boise State University Shari Ultman Fall 2017 Contents 1 Vectors 1 1.1 Introduction to 3-Space & Vectors.............. 3 1.2 Working With Vectors.................... 7 1.3 Introduction
More informationNumerical Methods I Solving Square Linear Systems: GEM and LU factorization
Numerical Methods I Solving Square Linear Systems: GEM and LU factorization Aleksandar Donev Courant Institute, NYU 1 donev@courant.nyu.edu 1 MATH-GA 2011.003 / CSCI-GA 2945.003, Fall 2014 September 18th,
More informationManifold Regularization
9.520: Statistical Learning Theory and Applications arch 3rd, 200 anifold Regularization Lecturer: Lorenzo Rosasco Scribe: Hooyoung Chung Introduction In this lecture we introduce a class of learning algorithms,
More information1 GSW Sets of Systems
1 Often, we have to solve a whole series of sets of simultaneous equations of the form y Ax, all of which have the same matrix A, but each of which has a different known vector y, and a different unknown
More informationDiscrete Projection Methods for Incompressible Fluid Flow Problems and Application to a Fluid-Structure Interaction
Discrete Projection Methods for Incompressible Fluid Flow Problems and Application to a Fluid-Structure Interaction Problem Jörg-M. Sautter Mathematisches Institut, Universität Düsseldorf, Germany, sautter@am.uni-duesseldorf.de
More informationThis exam will be over material covered in class from Monday 14 February through Tuesday 8 March, corresponding to sections in the text.
Math 275, section 002 (Ultman) Spring 2011 MIDTERM 2 REVIEW The second midterm will be held in class (1:40 2:30pm) on Friday 11 March. You will be allowed one half of one side of an 8.5 11 sheet of paper
More informationMath 291-2: Lecture Notes Northwestern University, Winter 2016
Math 291-2: Lecture Notes Northwestern University, Winter 2016 Written by Santiago Cañez These are lecture notes for Math 291-2, the second quarter of MENU: Intensive Linear Algebra and Multivariable Calculus,
More informationStable Spectral Mesh Filtering
Stable Spectral Mesh Filtering Artiom Kovnatsky, Michael M. Bronstein, and Alexander M. Bronstein 2 Institute of Computational Science, Faculty of Informatics, Università della Svizzera Italiana, Lugano,
More informationAMS526: Numerical Analysis I (Numerical Linear Algebra)
AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 24: Preconditioning and Multigrid Solver Xiangmin Jiao SUNY Stony Brook Xiangmin Jiao Numerical Analysis I 1 / 5 Preconditioning Motivation:
More informationBoundary Value Problems - Solving 3-D Finite-Difference problems Jacob White
Introduction to Simulation - Lecture 2 Boundary Value Problems - Solving 3-D Finite-Difference problems Jacob White Thanks to Deepak Ramaswamy, Michal Rewienski, and Karen Veroy Outline Reminder about
More informationSolving linear systems (6 lectures)
Chapter 2 Solving linear systems (6 lectures) 2.1 Solving linear systems: LU factorization (1 lectures) Reference: [Trefethen, Bau III] Lecture 20, 21 How do you solve Ax = b? (2.1.1) In numerical linear
More informationMcGill University Department of Mathematics and Statistics. Ph.D. preliminary examination, PART A. PURE AND APPLIED MATHEMATICS Paper BETA
McGill University Department of Mathematics and Statistics Ph.D. preliminary examination, PART A PURE AND APPLIED MATHEMATICS Paper BETA 17 August, 2018 1:00 p.m. - 5:00 p.m. INSTRUCTIONS: (i) This paper
More informationVector Calculus handout
Vector Calculus handout The Fundamental Theorem of Line Integrals Theorem 1 (The Fundamental Theorem of Line Integrals). Let C be a smooth curve given by a vector function r(t), where a t b, and let f
More informationNonlinear Optimization
Nonlinear Optimization (Com S 477/577 Notes) Yan-Bin Jia Nov 7, 2017 1 Introduction Given a single function f that depends on one or more independent variable, we want to find the values of those variables
More informationCurvatures, Invariants and How to Get Them Without (M)Any Derivatives
Curvatures, Invariants and How to Get Them Without (M)Any Derivatives Mathieu Desbrun & Peter Schröder 1 Classical Notions Curves arclength parameterization center of osculating ( kissing ) circle (also
More informationGetting Started with Communications Engineering
1 Linear algebra is the algebra of linear equations: the term linear being used in the same sense as in linear functions, such as: which is the equation of a straight line. y ax c (0.1) Of course, if we
More informationAspects of Multigrid
Aspects of Multigrid Kees Oosterlee 1,2 1 Delft University of Technology, Delft. 2 CWI, Center for Mathematics and Computer Science, Amsterdam, SIAM Chapter Workshop Day, May 30th 2018 C.W.Oosterlee (CWI)
More informationTangent spaces, normals and extrema
Chapter 3 Tangent spaces, normals and extrema If S is a surface in 3-space, with a point a S where S looks smooth, i.e., without any fold or cusp or self-crossing, we can intuitively define the tangent
More information