|
Spring
2009 CS 7301 - 002
Physics-Based
Modeling and Simulation
Monday
and Wednesday 2:30pm - 3:45pm, ECSS 2.203 |
|
|
|
|
Instructor
: |
(Tiger)
Xiaohu Guo
Office:
ECSS 3.703
Phone: 972-883-4723
Email: xguo at utdallas.edu
Office hours: M/W 3:45pm - 5:00pm
|
|
|
Pre-requisites
: |
Either
one of the following courses: Computer Graphics (CS4361 or
CS6366), Computer Animation (CS4392), Geometric Modeling and
Processing (CS6v81), or the permission of the instructor.
You should have familiarity with calculus, algebra, geometry,
basic physics, and good working knowledge of graphical programming
(such as OpenGL or DirectX).
|
|
Course
Description : |
The
central theme of this advanced graduate course is on physics-based
modeling and simulation, as well as their widespread applications
in the entire spectrum of visual computing discipline. This
course will cover the fundamental methods for describing and
then applying rules to simulate various natural phenomena. Throughout
this course, we take a unified physical approach to various
visual computing fields such as computer graphics, animation,
human-computer interaction, and virtual environment. Our goal
is to familiarize students with state of the art theoretical
and computational methods in physics-based modeling and simulation,
with focuses on:
- Rigid body dynamics and motion
- Collision detection and response
- Particle system and interactions
- Deformable objects
- Continuum models
- Finite element method
- Numerical integration techniques
- Constraint systems
|
|
Textbook,
Readings & References : |
There
are no particular textbooks for this course because it is an
advanced graduate course! But the following textbook will be
suggested:
Physics-Based
Animation, by Kenny Erleben, Jon Sporring, Knud Henriksen,
and Henrik Dohlmann, Charles River Media, 2005. ISBN: 1584503807.
|
|
Required
Readings:
The
majority of the course material will come from the above textbook,
readings, research papers, and some relevant reference books.
Numerous slides and video clips will be shown. Students are
advised to attend the class and follow the lecturing notes closely!
A set of research papers and some relevant material from the
following reference books (and conference proceedings and journals)
will be presented.
Game Physics Engine Development, I. Millington, 2007.
Interactive Computer Graphics: A Top-Down Approach Using OpenGL,
5th edition, E. Angel, 2008.
Computer Animation: Algorithms & Techniques, 2nd edition,
R. Parent, 1993.
Curves and Surfaces for Computer Aided Geometric Design: A
Practical Guide, 5th edition, G. Farin, 2001.
Pyramid Algorithms: A Dynamic Programming Approach to Curves
and Surfaces for Geometric Modeling, R. Goldman, 2002.
Differential Geometry of Curves and Surfaces, M.P. do Carmo,
Prentice--Hall, Englewood Cliffs, NJ, 1976.
Introduction to Applied Mathematics, G. Strang, Wellesley
Cambridge Press, 1986.
Numerical Recipes 3rd Edition: The Art of Scientific Computing,
W.H. Press, B.P. Flannery, S.A. Teukolsky, and W.T. Vetterling,
2007
Computer-Oriented Mathematical Physics, D. Greenspan, Pergamon
Press, Oxford, 1981.
Methods of Mathematical Physics, Vol I, Interscience, London.
R. Courant and D. Hilbert, 1953.
Classical and Computational Solid Mechanics, Y.C. Fung, P.
Tong, 2001.
The Finite Element Method (Third Edition), O.C. Zienkiewicz,
McGraw--Hill, London, 1977.
The Finite Element Handbook, H. Kardestuncer and D.H. Norrie,
McGraw-Hill, 1987.
Relevant
Conference Proceedings and Journals:
Computer Graphics (Proceedings of ACM SIGGRAPH)
IEEE Computer Graphics and Applications
ACM Transactions on Graphics
IEEE Transactions on Visualization and Computer Graphics
Computer-Aided Design
Computer Aided Geometric Design
Graphical Models
The Visual Computer
Computer Graphics Forum
IEEE Transactions on Pattern Analysis and Machine Intelligence
IEEE Transactions on Medical Imaging
Major conferences include Siggraph, Visualization, Eurographics,
Pacific Graphics, Graphics Interface, Solid Modeling, Shape
Modeling, I3D Symposium, CGI, ICCV, CVPR, etc.
|
|
Grading
Policy : |
There
will be No Midterm Exams and No Final Exams! However, this
is a project-oriented course. Each student will be assigned
two days during the semester during which they will present
to the class a summary of the assigned readings for that day.
The presentation should provide a technical overview of the
paper, a description of how the paper fits into the broader
context of the material covered in the course, and should
pose some interesting questions or challenges for in-class
discussion. Students taking the course for a letter grade
will work individually or in a team of two to complete a course-related
project. All project ideas are individually approved by the
instructor. Proposals are due by mid-semester. The final grade
will be based on paper presentations, project proposals, demos,
presentations, and reports. The programming projects can be
implemented in any of your prefered programming environment
(e.g. Windows, C++, OpenGL). All the paper presentations and
projects are mandatory. The final grade will be composed of
the following three parts:
- Paper
Reading and Presentation:
30%
- Course
Project: 60%
- Project proposal (10%)
- Final demo and presentation (10%)
- A working system and software codes (30%)
- Final Project Report (10%)
- Class
Attendance and Active Involvement: 10%
|
|
Some
Useful Open Source Physics Engine and Codes: |
|
|
OpenGL
Programming Guide and Environments : |
|
|
Academic
Honesty : |
Copying
source code from another student in this class or obtaining
a solution from some other source without acknowledging it
in your report will lead to an automatic failure for this
course and to a disciplinary action. Allowing another student
to copy one's work will be treated as an act of academic dishonesty,
leading to the same penalty as copying. You should learn how
to protect your data. Failure to do so is also unprofessional
and it may expose you to the danger that someone will copy
your homework and will submit it as his or her own (see above).
In this case, you may be given a score of 0 for the assignment
or project in question (and the other party will get a failure).
|
|
Class
Schedule : (TBD) |
Week |
Monday |
Presenter |
Wednesday |
Presenter |
1 |
1/12:
Introduction, Newtonian
Dynamics |
X.
Guo |
1/14:
Differential Equations |
X.
Guo |
2 |
1/19:
Martin Luther King Day |
X.
Guo |
1/21:
Particle System |
X.
Guo |
3 |
1/26:
Particle System |
X.
Guo |
1/28:
university close |
|
4 |
2/2:
Constrained Dynamics |
X.
Guo |
2/4:
Rigid Body Dynamics |
X.
Guo |
5 |
2/9:
Rigid Body Dynamics |
X.
Guo |
2/11:
Rigid Body Dynamics |
X.
Guo |
6 |
2/16:
Rigid Body Collision Response |
X.
Guo |
2/18:
Deformable Models , Strain
Tensor |
X.
Guo |
7 |
2/23:
Strain, Stress, Deformation Energy |
X.
Guo |
2/25:
Lagrange Mechanics, Finite Element Method |
X.
Guo |
8 |
3/2:
Real-Time Deformation and Fracture |
Eric
Parker |
3/4:
Rigid Body Physics Engine, part 1 |
Scott
Hawkins |
9 |
3/9:
Rigid Body Physics Engine, part 2 |
Scott
Hawkins |
3/11:
Physics of Energy |
Scott
Larson |
10 |
3/16:
Spring Break |
|
3/18:
Spring Break |
|
11 |
3/23:
Stable Real-Time Deformations
|
Yin
Yang |
3/25:
Real-Time Simulation of Large Rotational
Deformation |
Yin
Yang |
12 |
3/30:
Collision Detection using k-DOPs |
Paul
Phipps |
4/1:
Collision Detection using Representative
Triangles |
Marcus
Parker |
13 |
4/6:
Real-Time Energy Simulation |
Scott
Larson |
4/8:
CULLIDE |
Marcus
Parker |
14 |
4/13:
Animation Sequence Compression, part
1 |
Yang
Liu |
4/15:
Animation Sequence Compression, part
2 |
Yang
Liu |
15 |
4/20:
CCD on GPU |
Paul Phipps |
4/22:
Introduction to Thin-Shell Simulation |
Ziying
Tang |
16 |
4/27:
Introduction to Thin-Shell Simulation
|
Ziying
Tang |
4/29:
BSP Trees |
Eric
Etheridge |
17 |
5/4:
|
Eric
Etheridge |
|
|
- Important:
The dates in this schedule may change due to the class level.
If the class needs more time and examples to understand a
concept I will modify the schedule. If the class is ready
to skip a chapter or go faster I will modify the schedule.
Therefore, it is the student's responsibility to check what
we covered in class and the changes in the schedule announced
during class.
|
|
|