The Animation of Natural Phenomena
Number: CSD 15-467 / 15-867
Location: GHC 4215
Instructor: Adrien Treuille
Time: TR 1:30 - 2:50pm (Starts Sept 13!)


This class covers physical simulation in computer graphics. The goal is to teach a broad swath of techniques—from particle systems to human animation—while learning some math, working on fun projects, and practicing quick problem solving and public presentation skills.


The class is organized in a pipeline fashion. Each class starts with a class presentation on the previous class's topic. These presentations should deepen your understanding of the state-of-the-art. Then we'll have a lecture. Finally, we'll try to answer a question on the next week's topic--essentially challenging you to solve the problem better than the existing techniques.

Graphically, this looks like this:
Class n Class n+1 Class n+2
30 mins Paper Presentation Paper Presentation Paper Presentation
30 mins Lecture Lecture Lecture
20 mins Question Question Question
Topic A Topic B Topic C Topic D Topic E
Grading is computed as follows:
  • (24%) Project 1.
  • (24%) Project 2.
  • (36%) Final Project.
    • (15%) Checkpoint.
    • (21%) Final.
  • (16%) Class Presentation / Participation.
Grading for late projects must be negotiated with me before the project is due.

Project 1 Winners

Note: Click a video to watch it.

Andrew Tan (1st Place)

Chengfu Chen (2nd Place, Tie)

Zak Wise (2nd Place, Tie)

Zak Wise (Bonus Video)

Project 2 Cool Artifacts

Note: Click a video to watch it.

Zak Wise (Strawberry Bannan Stable Fluids)

Amos Yuen (Fluids + Particle System)


Note: This syllabus may change during the course. Keep checking back.

Name: Introduction
Date: Tue 09/13
Slides: Lecture 1 Slides
Notes: Lecture 1 Notes
Name: Ordinary Differential Equations
Date: Thu 09/15
Slides: Lecture 2 Slides
Spreadsheet: Euler vs. Midpoint Method
Reading: Differential Equation Basics
Name: Particles, Explicit , Implicit, and Symplectic Integration
Date: Tue 09/20
Spreadsheet: Euler vs. Midpoint vs. Implicit vs. Symplectic Methods
Name: Large Linear Systems
Date: Thu 09/22
Slides: Lecture 4 Notes
Reading: Implicit Methods for Differential Equations
Name: The Conjugate Gradient Method
Date: Tue 09/27
Slides: Lecture 5 Notes
Reading: Painless Conjugate Gradient
See Also: Conjugate Gradient Method (Wikipedia)
Name: No Class (Adrien out of Town)
Date: Thu 09/29
Name: Constraints I
Date: Tue 10/04
Reading: Constrained Dynamics (sections 1-4 only)
Slides: Lecture 6 Slides
Slides: Lecture 6 Notes
Name: Constraints II (Makeup Class!)
Date: Wed 10/05
Time: 4:30pm - 5:30pm
Location: GHC 6501
Project: Project 1 Assigned: Particle Systems
Project: Project 1 Handout
Project: Project 1 Notes (Conjugate Gradient with Implicit Matrix)
Project: Project 1 Skeleton Code
Name: Hair
Date: Thu 10/06
Slides: Lecture 8 Slides
Name: Cloth + Collisions
Date: Tue 10/11
Slides: Lecture 9 Slides
Name: Crowds + Flocks
Date: Thu 10/13
Slides: Lecture 10 Slides
Name: Guest Lecture (Kayvon Fatahalian - Graphics Architectures)
Date: Tue 10/18
Project: Project 1 Due
Name: No Class (Adrien out of Town)
Date: Thu 10/20
Name: Particle-Based Fluids
Date: Tue 10/25
Slides: Lecture 11 Slides
Name: Partial Differential Equations
Date: Thu 10/27
Slides: Lecture 12 Slides
Name: Stable Fluids
Date: Tue 11/01
Project: Project 2 Assigned: Fluids
Project: Project 2 Description
Project: Project 2 Skeleton Code
Slides: Lecture 13 Slides
Notes: Lecture 13 Notes
Name: Boundaries and Free Surface Fluids
Date: Thu 11/03
Slides: Lecture 14 Slides
Rigid Bodies
Name: Rigid Bodies
Date: Tue 11/08
Slides: Lecture 15 Slides
Reading: Rigid Body Dynamics (Part I only)
Name: Rigid Body Collisions
Date: Thu 11/10
Slides: Lecture 16 Slides
Reading: Rigid Body Dynamics (Part II only)
Name: Deformable Objects
Date: Tue 11/15
Slides: Lecture 17 Slides
Project: Project 2 Due
Name: Deformable Volumes
Date: Thu 11/17
Slides: Lecture 18 Slides
Project: Project 3 Assigned: Student Choice
Project: Project 3 Description
Name: Deformable Collisions
Date: Tue 11/22
Slides: Lecture 19 Slides
Project: Project 3 Ideas Due (in class)
Name: No Class (Thanksgiving)
Date: Thu 11/24
Name: Human Simulation
Date: Tue 11/29
Slides: Lecture 20 Slides
Name: Project 3 - Midterm Presentation
Date: Thu 12/01
Name: Control
Date: Tue 12/06
Slides: Lecture 21 Notes
Name: Model Reduction
Date: Thu 12/08
Slides: Lecture 22 Slides
Name: Final Project Presentation
Date: Fri 12/16
Time: 1pm - 4pm
Location: GHC 4215 (Same ole room!)
Final Project: Presentation Schedule

Last updated: Dec 17, 2011