Course header image

15-769: Physically-based Animation of Solids and Fluids (F23)

Instructor: Minchen Li (minchenl@cs.cmu.edu, Office: Smith 228, office hours by appointment)
Time & Location: Tuesday and Thursday 5:00 PM - 6:20 PM, Wean Hall (WEH) 2302
Recommended Prerequisite: Programming, Linear Algebra, Vector Calculus, and Computer Graphics

At CMU, this may be achieved by taking (15-110 or 15-112 or 15-122 or 02-201) and { [ (21-240 or 21-241 or 21-242 or 21-341) and (21-256 or 21-259 or 21-268 or 21-269) ] or 21-254} and 15-462, as suggested in 15-458/858.

Online Platforms: Piazza (Q&A, announcements), Canvas (grades)

Overview

This seminar-based course delves into the heart of physically-based animations of solids and fluids, a key component in fields ranging from visual effects and VR to digital fashion. Central to this is solving partial differential equations (PDEs) using numerical methods, with applications extending to computational mechanics, robotic training, and 3D content creation. Combining lectures with student presentations, we will explore the simulation of various physical entities, such as rigid bodies, deformable bodies (Python examples available), shells, rods, liquids, and smoke, all the way from the discretization of the governing PDEs to the efficient implementation and evaluation of the numerical solvers.

Students will acquire a thorough understanding of both classic and state-of-the-art methods of solids and fluids simulation in computer graphics. They will also gain insights into the existing challenges in enhancing and applying these methods within the broader field.

Grading

Final Project

There are 3 options for the final coding project:

  1. Perform a comprehensive experimental validation of at least 2 existing methods within a specific topic, with the aim of uncovering insights that are not widely recognized.
  2. Apply existing methods to a problem that has not previously been explored, ensuring that you provide adequate validation of your findings.
  3. Create a unique algorithm, either by extending existing methods or developing a new one from scratch, and carry out appropriate validation.

As indicated, each project option necessitates the exploration of uncharted avenues. Even if the outcomes are not as anticipated, the research experience gained is intrinsically valuable. Simply repeating what has already been done is not adequate.

You are permitted to utilize open-source code in all options with proper acknowledgement of the source. If there isn't any available online implementation for a baseline method, you will need to undertake the implementation.

The project can be carried out as a team of 1-3 people (to be registered). You are required to write a project report including introduction, related works, methods, results, and discussion. There are also project presentations.

Paper and Project Presentations

Each student needs to perform 2 paper presentations (30-min talk + 10-min Q&A, schedule to be registered). The paper for each presentation needs to be selected from different topics in this list. Presenting other papers is also allowed after confirming with the instructor. Here is a nice guideline that could be followed for the paper presentation as suggested in 16-848:

Each team needs to perform 3 project presentations (see our Schedule, length based on number of teams), they are Project Proposal Presentation, Midterm Progress Presentation, and Final Project Presentation. The main goal of these presentations are to ensure you distribute the workload evenly during the semester, get inspired by your classmates, and receive valuable feedback.

AI Tools Policy

In this course, you are permitted to use generative AI tools for your presentations and course projects. These tools, such as ChatGPT, or others, can be powerful aids to increase efficiency, inspire creativity, and help you complete high-quality work.

Mandatory Appendix for AI Tool Usage. If you employ AI tools for your presentation or project, you are required to include an appendix in your submission that explains how and to what extent the AI tools were used. This appendix should describe the specific tasks the AI was used for, the AI tool used, and the extent to which the AI-generated content was modified.

Citations and Academic Integrity. Any AI-generated content must be properly cited in accordance with CMU's academic integrity policy. This includes content that has been paraphrased or modified. Failure to properly cite AI-generated content will be treated as a violation of academic integrity.

Accuracy and Responsibility. It is crucial to understand that AI-generated content may not always be accurate or reliable. It is your responsibility to verify the validity and relevance of such content before incorporating it into your work. Failure to do so may result in a loss of scores.

By using AI tools in this course, you acknowledge your understanding and agreement to abide by these guidelines. Failure to comply will be considered a violation of CMU's academic integrity policy and may result in disciplinary actions.

Tentative Schedule

Resources

Relevant Papers

Note: A bullet point with multiple papers is a paper bundle that needs to be presented in one presentation.

Optimization-based Time Integration (Adaptive) Spatial Discretization Contact and Friction Inversion-Robust Elasticity, Anisotropic Elasticity Spatial Reduction Fluids Solid-Fluid Coupling High-Performance Simulation Simulation Applications