Untitled Document (original) (raw)
CS839 Topics in Computing : Physics-Based Modeling and Simulation
Spring Semester 2022
Course outline
This course is a review of current trends and technologies for physics based modeling and simulation, with applications to visual effects, interactive virtual environments and computer games. Topics to be covered in class include:
- 2D elasticity : Cloth simulation, modeling of in-plane and bending stiffness, collision handling.
- 3D elasticity : Finite element and mass-spring models, simulated character flesh, skin and muscles. Modeling of material fracture and tearing.
- Discrete 3D geometry representations : Meshes, implicit surfaces and point clouds. Geometry editing and conversion between representations.
- Time integration methods : Explicit and implicit Euler integrators, semi-implicit methods, quasi-static animation.
- Introductory fluid dynamics : Computer-generated smoke, water and fire.
- Rigid body simulation and dynamics of articulated systems.
- Data structures for dynamic digital content: Pixar USD, OpenVDB.
In discussing these topics, particular emphasis will be placed on the efficiency, robustness and stability of numerical algorithms used in simulation tasks, and on the software engineering practices that facilitate scalability and parallelization. Lectures will straddle the following three threads of emphasis: Theory discussion will cover the mathematical foundations of modeling and simulation techniques. Implementation aspects will include software engineering and parallel programming considerations. The discussion of Tools will address third-party APIs and data structures that facilitate development of simulation and visualization codes.
General information
Lecture meeting time : Tue/Thu 2:30pm - 3:45pm
Lecture location : Computer Sciences 1257
Instructor : Eftychios Sifakis
Office : Computer Sciences building, Room 6387
Email : sifakis cs wisc edu -- Piazza messages are the preferred method of communication with the instructor
Office hours : Thursdays 1:30pm - 2:15pm (recurring; virtually via Google Meet) or Tuesdays 4:00pm-4:45pm (by appointment only; virtually or in person at CS6387)
See this Piazza post for information of how to connect to the virtual office hours
Prerequisites : No formal requirements. Nevertheless, a number of numerical techniques will be employed in the context of various topics; the theoretical details of these methods will be summarily covered in class. A certain degree of familiarity with calculus will be desired, although not essential. Competency in linear algebra is desired.
Class Piazza: Use this signup link to enroll in Piazza for this class, and this link to the discussion homepage. The Piazza page will be our main channel for communication and announcements.
Course canvas page: Use this linksignup link. Lecture notes and assignments will be posted here