CSE 291 (SP 2023 E00) Physics Simulation

Welcome to CSE 291 Topics in CSE: Physics Simulation.

  • Lecture: Tue Thu 2:00pm - 3:20pm
  • Classroom: Center Hall 205.
  • Instructor: Albert Chern (Office Hour: Tue 4:00–5:00pm, location CSE Building 4112)
    • TA: Shiyang Jia (Office Hour: Monday Thursday 4:00-5:00pm, location: CSE Building B250A)
  • Sites:
  • Lecture note: Physics Simulation

Visit Canvas (for all info including Zoom links), Gradescope (HW submission) and Piazza (Q&A).


Week Tuesday Thursday
1 4/4: Introduction 4/6: Dimensional analysis
2 4/11: Vector duality 4/13: Differentials and gradients
3 4/18: Calculus of variations 4/20: Least action principle
4 4/25: Rigid body motion 4/27: Differential geometry, Constrained systems
5 5/2: Geodesic equation, Incremental potential 5/4: Incremental potential
6 5/9: Tensors 5/11: Tensors
7 5/16: Elasticity 5/18: Elasticity
8 5/23: Fluids 5/25: Fluids
9 5/30: Fluids (numerics) 6/1: Fluids
10 6/6: Hamiltonian mechanics 6/8: No class (instructor unavailable)
Final 6/13: No class
  • HW4 due (miniproject)
6/15: No class
Summer break


The course covers the mathematical and computational basis for various physics simulation tasks including solid mechanics and fluid dynamics. A main focus is constitutive modeling, that is, the dynamics are derived from a few universal principles of classical mechanics, such as dimensional analysis, Hamiltonian principle, maximal dissipation principle, Noether’s theorem, etc. These principles are the foundation to computational methods that can produce structure-preserving and realistic simulations.

You are expected to have basic programming and visualization skill.

Some highlight:

  • Dimensional analysis: Utilize the scaling symmetry of a physical system to estimate the expected result, to identify equivalent models, or to reduce the number of parameters.
  • Variational principles: Instead of accounting for all internal forces in a physical system, derive them by taking derivative of energy functions.
  • Incremental potential: Turn each time step into an optimization problem, encompassing dissipative systems and impulsive systems.
  • Constrained systems: Holonomic and nonholonomic constraints, quasivelocities, and the KKT conditions for inequality constraints.
  • Continuum mechanics: An exposition of tensor analysis involving differential forms and their Lie transportations.
  • Elasticity: Interaction between strain and stress, which are dual vector-valued forms related by a variational principle.
  • Fluids: Navier–Stokes equation, vorticity formulation, surface waves, Eulerian and Lagrangian methods.

Course Logistics

Getting Started (make sure to follow it in Week 1)

  1. Sign up to Piazza and Gradescope
  2. HW0 is due 4/11 (Tue)

Class Rules

  • Do the assignments individually. Discussion is strongly encouraged, since there are many challenging new mathematical concepts and part of the learning experience is to try out your understanding to your peers.
  • You can look up coding/math questions online. You are also welcomed to post questions (and answer others' questions) on Piazza.
  • Follow Academic Integrity (c.f. https://senate.ucsd.edu/Operating-Procedures/Senate-Manual/Appendices/2).


There is no quiz or exam. The grades are made of the following HWs and project:

  • HW0 (miniproject): 5%
  • HW1 (written): 10%
  • HW2 (written+minimproject): 25%
  • HW3 (miniproject): 30%
  • HW4 (miniproject): 30%
The final letter grade depends on the grade distribution.

Late policy

  • HW0–4 late penalty: You have one quota of using a 24 hour extension.