When it comes to computation, everything we’ve learned about differential forms and exterior calculus boils down to building just a few very simple matrices. These slides contain a bunch of examples that should help with both the written and coding part of your current assignment.
Later this week we’ll start talking about exterior calculus, which is a modern language used across differential geometry, mathematical physics, geometric computation… and the rest of our class! :-). Initially this language can look a bit daunting, but by making some connections with familiar ideas from vector calculus (like grad, div, and curl), we’ll see that it’s actually not so bad once you get down to concrete calculations. Slides here:
- For this assignment, you need to implement the following routines:
- in core/geometry.js
- in core/discrete-exterior-calculus.js
- in core/geometry.js
In practice, a simple and efficient way to compute the cotangent of the angle \(\theta\) between two vectors \(u\) and \(v\) is to use the cross product and the dot product rather than calling any trigonometric functions directly; we ask that you implement your solution this way. (Hint: how are the dot and cross product of two vectors related to the cosine and sine of the angle between them?)
In case we have not yet covered it in class, the barycentric dual area associated with a vertex \(i\) is equal to one-third the area of all triangles \(ijk\) touching \(i\).
The discrete Hodge star and discrete exterior derivatives are introduced in Section 3.8 of the course notes; the matrix representation of these operators (which you need to implement!) will be discussed in class. They were also basically covered already in our discussion of signed incidence matrices, in the lecture on the simplicial complex.
- This assignment comes with a viewer (projects/discrete-exterior-calculus/index.html) which lets you apply your operators on random k-forms and visualize the results.
- This assignment also comes with a grading script (tests/discrete-exterior-calculus/test.html) which you can use to verify the correctness of your operators.
Please rename your geometry.js and discrete-exterior-calculus.js files to geometry.txt and discrete-exterior-calculus.txt (respectively) and submit them in a single zip file called solution.zip by email to Geometry.Collective@gmail.com.
This assignment is worth 6.5% of your grade.
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!)
These slides should also be helpful for those who have started on the homework. 🙂
The written portion of your first assignment is now available (below), which covers some of the fundamental tools we’ll be using in our class. Initially this assignment may look a bit intimidating but keep in mind a few things:
- The homework is not as long as it might seem: all the text in the big gray blocks contains supplementary, formal definitions that you do not need to know in order to complete the assignments.
- Moreover, note that you are required to complete only three problems from each section.
- If the \(\wedge\) and \(\star\) symbols look alien to you, don’t sweat: this is not something you should know already! We’ll be talking about these objects in our lectures next week. Until then, you can (and should) get a jump on the lectures by reading the first few sections of Chapter 3 in our course notes.
Finally, don’t be shy about asking us questions here in the comments, via email, or during office hours. We want to help you succeed on this first assignment, so that you can enjoy all the adventures yet to come…
Here is a zip file with the $\LaTeX$ source.
Your first reading assignment will be to read an overview article on Discrete Differential Geometry. Since we know we have a diverse mix of participants in the class, you have several options (pick one):
- (pages 1–3) Crane & Wardetzky, “A Glimpse into Discrete Differential Geometry”.
This article discusses the “no free lunch” story about curvature we looked at in class, plus a broader overview of the field.
- (pages 1–5) Pottman et al, “Architectural Geometry”.
This article discusses the beautiful tale of how discrete differential geometry is linked to modern approaches to computational design for architecture, as well as fabrication and “rationalization” of free-form designs.
- (pages 5–9) Bobenko & Suris, “Discrete Differential Geometry: Consistency As Integrability”.
This article provides another overview of discrete differential geometry, with an emphasis on nets and their connection to the notion of integrability in geometry and physics.
Though written for a broad audience, be warned that all of these articles are somewhat advanced—the goal here is not to understand every little detail, but rather just get a high-level sense of what DDG is all about.
Assignment: Pick one of the readings above, and write 2–3 sentences summarizing what you read, plus at least one question about something you didn’t understand, or some thought/idea that occurred to you while reading the article. For this first assignment, we are also very interested to know a little bit about YOU! E.g., why are you taking this course? What’s your background? What do you hope to get out of this course? What are your biggest fears about the course? Etc.
Handin instructions can be found in the “Readings” section of the Assignments page. Note that you must send your summary in no later than 10am Eastern on the day of the next lecture (September 7, 2017).
Welcome to the website for 15-458/858B. Here you’ll find course notes, lecture slides, and homework (see links on the right).
If you are a student in the class, register now by clicking here!
We strongly prefer that you register using your CMU email, but in any case you must not register with an address at a free email service like gmail.com, yahoo.com, etc., as email from these domains will be filtered out by the web host.
A few things to note:
- You will be subscribed to receive email notification about new posts, comments, etc.
- You can ask questions by leaving a comment on a post. If you’re apprehensive about asking questions in public, feel free to register under a pseudonym.
- Otherwise, please associate a picture to your profile by registering your email address at Gravatar.com—doing so will help us better recognize you in class!
- You can include mathematical notation in your questions using standard $\LaTeX$ syntax. For instance, when enclosed in a pair of dollar signs, an expression like \int_M K dA = 2\pi\chi gets typeset as $\int_M K dA = 2\pi\chi$.