Lecture 12: Smooth Surfaces I

This lecture takes a first look at smooth surfaces. There’s of course way more to know about surfaces than we can pack into a single lecture (and we’ll see plenty more later on), but this lecture will cover two very important perspectives: the extrinsic description of a surface via a local parameterization, which tells us where points sit in space, and the intrinsic description of a surface via coordinate charts, which lets us work with a surface without worrying how it’s embedded in space.

Lecture 11: Discrete Curves

This lecture presents the discrete counterpart of the previous lecture on smooth curves. Here we arrive at a discrete version of the fundamental theorem for plane curves: a discrete curve is completely determined by its discrete parameterization (a.k.a. edge lengths) and its discrete curvature (a.k.a. exterior angles). We’ll also cook up a discrete version of the fundamental theorem for space curves, and give a bunch of neat examples of discrete curves in geometry processing and physical simulation.

Lecture 10: Smooth Curves

After spending a great deal of time understanding some basic algebraic and analytic tools (exterior algebra and exterior calculus), we’ll finally start talking about geometry in earnest, starting with smooth plane and space curves. Even low-dimensional geometry like curves reveal a lot of the phenomena that arise when studying curved manifolds in general. Our main result for this lecture is the fundamental theorem of space curves, which reveals that (loosely speaking) a curve is entirely determined by its curvatures. Descriptions of geometry in terms of “auxiliary” quantities such as curvature play an important role in computation, since different algorithms may be easier or harder to formulate depending on the quantities or variables used to represent the geometry. Next lecture, for instance, we’ll see some examples of algorithms for curvature flow, which naturally play well with representations based on curvature!

Supplemental: Vector-Valued Differential Forms

This short-but-important supplemental lecture introduces some language we’ll need for describing geometry (curves, surfaces, etc.) in terms of differential forms. So far, we’ve said that a differential \(k\)-form produces a scalar measurement. But when talking about geometry, we often care about quantities that are vector-valued rather than scalar-valued. For instance, positions in \(\mathbb{R}^n\), tangents, and normals are all vector-valued quantities. For the most part, all of our operations look pretty much the same as before. The one exception is the wedge product, which in \(\mathbb{R}^3\) we now define in terms of the cross product.

Lecture 9: Discrete Exterior Calculus

This lecture wraps up our discussion of discrete exterior calculus, which will provide the basis for many of the algorithms we’ll develop in this class. Here we’ll encounter the same operations as in the smooth setting (Hodge star, wedge product, exterior derivative, etc.), which in the discrete setting are encoded by simple matrices that translate problems involving differential forms into ordinary linear algebra problems.

Lecture 8: Discrete Differential Forms

In this lecture, we turn smooth differential \(k\)-forms into discrete objects that we can actually compute with. The basic idea is actually quite simple: to capture some information about a differential \(k\)-form, we integrate it over each oriented \(k\)-simplex of a mesh. The resulting values are just ordinary numbers that give us some sense of what the original \(k\)-form must have looked like.

Lecture 7: Integration

Our first lecture on exterior calculus covered differentiation; our second lecture completes the picture by discussing integration of differential forms. The relationship between integration and differentiation is encapsulated by Stokes’ theorem, which generalizes the fundamental theorem of calculus, as well as many other important theorems from vector calculus and complex analysis (divergence theorem, Green’s theorem, Cauchy’s integral formula, etc.). Stokes’ theorem also plays a key role in numerical discretization of geometric problems, appearing for instance in finite volume methods and boundary element methods; for us it will be the essential tool for developing a discrete version of differential forms that we can actually compute with.

  • Video
  • Slides
  • Lecture 6: Exterior Derivative

    Ordinary calculus provides tools for understanding rates of change (via derivatives), total quantities (via integration), and the total change (via the fundamental theorem of calculus). Exterior calculus generalizes these ideas to \(n\)-dimensional quantities that arise throughout geometry and physics. Our first lecture on exterior calculus studies the exterior derivative, which describes the rate of change of a differential form, and (together with the Hodge star) generalizes the gradient, divergence, and curl operators from standard vector calculus.

    Lecture 4: \(k\)-Forms

    Today we continue our journey toward building up (discrete) exterior calculus by talking about how to measure little k-dimensional volumes. Just like rulers measure length, and cups measure volume, k-forms will be used to take measurements of the little k-dimensional volumes or k-vectors that we built up using exterior algebra in our previous lecture. Such measurements will ultimately allow us to talk about integration over curved spaces; in the discrete setting, these measurements will be the basic data we associate with the elements of mesh.

    Lecture 3: Exterior Algebra

    Our next lecture will cover one of the basic tools we’ll use throughout the rest of the course: exterior algebra. The basic idea is to add a couple new operations to our usual list of vector operations (dot product, cross product, etc.) that make it easy to talk about volumes rather than just vectors. If you felt ok working with things like the cross product and the determinant in your linear algebra/vector calculus courses, this shouldn’t be too big of a leap. (If not, could be a good moment for a review!)