cs 468, spring 2012 - mit...
TRANSCRIPT
![Page 1: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/1.jpg)
Justin SolomonMIT, Spring 2019
![Page 2: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/2.jpg)
May change roomsStay tuned!
Diagram in homework revised
Reading assignment posted today
![Page 3: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/3.jpg)
Linear algebra ⊆GeometryPart I:
“Geometry of flat spaces”
Geometry ⊆ OptimizationPart II:
Quick intro to variational calculus
![Page 4: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/4.jpg)
Linear algebra ⊆GeometryPart I:
“Geometry of flat spaces”
![Page 5: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/5.jpg)
Useful shorthand:
![Page 6: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/6.jpg)
![Page 7: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/7.jpg)
Linear operator (map):
Quadratic form (dot product):
![Page 8: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/8.jpg)
Are these the interchangeable?
![Page 9: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/9.jpg)
Map between vector spaces
Inner product
Matrices obscure geometryhttps://mathinsight.org/image/linear_transformation_2d_m2_0_0_m2
![Page 10: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/10.jpg)
![Page 11: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/11.jpg)
Sum repeated upper/lower indices
![Page 12: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/12.jpg)
![Page 13: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/13.jpg)
![Page 14: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/14.jpg)
Upper/lower indices matter
![Page 15: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/15.jpg)
What’s up with A?
Describe in Einstein notation:
![Page 16: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/16.jpg)
![Page 17: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/17.jpg)
Eigenvectors?[“Eigenfunctions!”]
![Page 18: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/18.jpg)
Simple “inverse problem”
![Page 19: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/19.jpg)
Gaussian elimination
O(n3) time to solve Ax=b or to invert
But: Inversion is unstable and slower!
Never ever compute A-1 if you can avoid it.
![Page 20: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/20.jpg)
![Page 21: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/21.jpg)
![Page 22: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/22.jpg)
![Page 23: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/23.jpg)
Never construct 𝑨−𝟏 explicitly(if you can avoid it)
Added structure helpsSparsity, symmetry, positive definiteness, bandedness
![Page 24: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/24.jpg)
Direct (explicit matrix)
Dense: Gaussian elimination/LU, QR for least-squares
Sparse: Reordering (SuiteSparse, Eigen)
Iterative (apply matrix repeatedly)
Positive definite: Conjugate gradients
Symmetric: MINRES, GMRES
Generic: LSQR
![Page 25: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/25.jpg)
Induced by the connectivity of the triangle mesh.
Iteration of CG has local effect⇒ Precondition!
![Page 26: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/26.jpg)
No need to implement a linear solver
If a matrix is sparse, your code should store it as a sparse matrix!
![Page 27: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/27.jpg)
Linear algebra ⊆GeometryPart I:
“Geometry of flat spaces”
Geometry ⊆ OptimizationPart II:
Quick intro to variational calculus
![Page 28: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/28.jpg)
Geometry ⊆ OptimizationPart II:
Quick intro to variational calculus
![Page 29: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/29.jpg)
Objective (“Energy Function”)
![Page 30: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/30.jpg)
Equality Constraints
![Page 31: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/31.jpg)
Inequality Constraints
![Page 32: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/32.jpg)
Gradienthttps://en.wikipedia.org/?title=Gradient
![Page 33: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/33.jpg)
Jacobianhttps://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant
![Page 34: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/34.jpg)
Hessianhttp://math.etsu.edu/multicalc/prealpha/Chap2/Chap2-5/10-3a-t3.gif
![Page 35: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/35.jpg)
Critical point
(unconstrained)
Saddle point
Local min
Local max
![Page 36: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/36.jpg)
![Page 37: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/37.jpg)
How effective are generic
optimization tools?
![Page 38: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/38.jpg)
How effective are generic
optimization tools?
![Page 39: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/39.jpg)
Try the
simplest method first.
![Page 40: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/40.jpg)
(assume A is symmetric and positive definite)
![Page 41: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/41.jpg)
Normal equations(better solvers for this case!)
![Page 42: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/42.jpg)
G. Peyré, mesh processing course slides
![Page 43: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/43.jpg)
𝒘𝒊𝒋 ≡ 𝟏: Tutte embedding
𝒘𝒊𝒋 from mesh: Harmonic embedding
Assumption: 𝒘 symmetric.
![Page 44: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/44.jpg)
What if 𝑽𝟎 = {}?
![Page 45: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/45.jpg)
Prevents trivial solution 𝒙 ≡ 𝟎.
Extract the smallest eigenvalue.
![Page 46: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/46.jpg)
Mullen et al. “Spectral Conformal Parameterization.” SGP 2008.
Easy fix
![Page 47: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/47.jpg)
Roughly:
1.Extract Laplace-Beltrami eigenfunctions:
2.Find mapping matrix (linear solve!):
Ovsjanikov et al. “Functional Maps.” SIGGRAPH 2012.
![Page 48: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/48.jpg)
Unstructured.
![Page 49: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/49.jpg)
Gradient descent
Line search
Multiple optima!
![Page 50: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/50.jpg)
Newton’s Method
1
2
3
Line search for stability
![Page 51: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/51.jpg)
Quasi-Newton: BFGS and friends
Hessian approximation
(Often sparse) approximation from previous samples and gradients
Inverse in closed form!
![Page 52: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/52.jpg)
Fröhlich and Botsch. “Example-Driven Deformations Based on Discrete Shells.” CGF 2011.
![Page 53: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/53.jpg)
Roughly:
1. Linearly interpolate edge lengths and dihedral angles.
2. Nonlinear optimization for vertex positions.
Sum of squares: Gauss-Newton
![Page 54: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/54.jpg)
Matlab: fminunc or minfunc C++: libLBFGS, dlib, others
Typically provide functions for function and gradient (and optionally, Hessian).
Try several!
![Page 55: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/55.jpg)
![Page 56: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/56.jpg)
- Decrease f: −𝛁𝒇- Violate constraint: ±𝛁𝒈
![Page 57: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/57.jpg)
Want:
![Page 58: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/58.jpg)
![Page 59: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/59.jpg)
Turns constrained optimization into
unconstrained root-finding.
![Page 60: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/60.jpg)
Huang et al. “L1-Based Construction of Polycube Maps from Complex Shapes.” TOG 2014.
Align with coordinate axes
Preserve areaNote: Final method includes more terms!
![Page 61: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/61.jpg)
Sometimes your unknowns
are not numbers!
Can we use calculus to optimize anyway?
![Page 62: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/62.jpg)
Analog of derivative at u in ψ direction
Vanishes for all ψ at a critical point!
![Page 63: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/63.jpg)
![Page 64: CS 468, spring 2012 - MIT CSAILgroups.csail.mit.edu/gdpgroup/assets/6838_spring_2019/2_linear_and_variational...G. Peyré, mesh processing course slides ... Mullen et al. “Spectral](https://reader036.vdocuments.site/reader036/viewer/2022070911/5fb38266422c2e0a926ea972/html5/thumbnails/64.jpg)
Justin SolomonMIT, Spring 2019