VIZA 659 / CPSC 649 -- Physically Based Modeling

Fall 2003

MW 8:50-10:05, Architecture C 414, 3 credits

Instructor: Donald H. House

Visualization Lab, phone: 5-3465, email: house@viz.tamu.edu, office hours: 3:30 - 4:30 Tu/Th

Course Directory

/usr/local/misc/courses/viza659/2003/

Students

Schedule

Assignments

Introduction

Texts

Resources and Documentation

Introduction

Physically-based modeling and dynamic simulation techniques as used for the automatic description of motion and geometry for animation and computer graphics. A variety of modeling techniques are explored, with a special emphasis on particle-system approaches to representing complex phenomena.

Texts and Readings

Course Objectives

We will begin by looking at the problem of simulating a bouncing ball, and use this problem to introduce and/or review relevant principles of Calculus, Physics, Linear Algebra, and Numerical Methods. This will give us the background to investigate an approach to the modeling and simulation of amorphous phenomena using massive particle simulations. We will also address ways of treating special materials and/or phenomena using interacting particle systems. Specifically techniques for the representation of flocking and herding using systems of multiple interacting actors. Returning to smaller scale models, we will introduce the classic spring-mass-damper system and see how it can be used to construct flexible structures with ``springy'' links. Computational problems in modeling springy behavior will require us to investigate more sophisticated numerical methods for computing our simulations. We will then look at building structures from ``rigid'' links, and formally introduce the notion of rotational dynamics. All of our early simulations will be done using forward dynamics, where the inputs to a simulation are forces and the outputs are positions and velocities. However, the inverse situation, where the inputs are positions and velocities and the outputs are forces, is often much closer to what is required in choreographing a computer animation. This concept will be generalized to deal with a variety of geometric constraints. We will conclude the course by looking at fluid dynamics, and how concepts from this field can be implemented efficiently to simulate such phenomena as water, smoke and fire.

Course Schedule

  1. Introduction to Physically Based Modeling
  2. Collision Detection
  3. Simple Particle Systems
  4. Spring-Mass-Damper Systems
  5. Explicit Numerical Integration
  6. Interacting Particle Systems and Actors
  7. Springy Structures
  8. "Stiff" Systems and Implicit Numerical Integration
  9. Rigid Body Dynamics
  10. Kinematics and Dynamics of Articulated Structures
  11. Constraint Systems and Inverse Dynamics

Projects, Exams and Grading

This will be a project oriented course, with assignments done on the computer about every two weeks, and culminated by a project of the students' own devising. Cumulative homework project average grade will count for 90% of the final grade. Students will demonstrate their solutions to assignments and their final project in class, and grading will be based on the quality of the presentation. The remaining 10% of the grade will be based on the instructor's subjective evaluation of class participation, which will include such issues as attendance and informed classroom discussion.

Some of the material in the course I know very well, other material I selected because I am interested in learning it better. Thus, the course will run like a seminar. Students with special expertise or experience with a topic are requested to let me know ahead of time, so that we can all benefit from this knowledge. To make sure that the classes are interesting and informative, everyone will be expected to attend class, to have carefully read assigned readings, to have completed the programming assignments and participate actively in class discussions.

Late assignements will incur a 10% penalty per class session that they are late. Since they will be graded by demonstrating them in class, and the late penalty is stiff, it will be a good idea to implement your projects in stages so that you will always have something to show even if you do not successfully complete an assignment. For each assignment, you will give me a directory containing 1) a text file containing a written description of your project and any special features or techniques you implemented, 2) your source code, and 3) an executable. I will only be looking at your source code to satisfy my curiosity, not to give you detailed critiques. Thus it will be up to you to make sure that I understand what you have done. If your project is not entirely self-explanatory, please include instructions for running it in the written description.

Plagiarism

The handouts used in this course are copyrighted. By "handouts," I mean all materials generated for this class, which include but are not limited to the course notes, syllabi, exams, problems, in-class materials, review sheets, additional problem sets, and the contents of the class World Wide Web site. Because these materials are copyrighted, you do not have the right to copy the handouts, unless I expressly grant permission. For the contents of class World Wide Web sites, you have permission to make printouts strictly for your use in this class.

In this course, we want to encourage collaboration and the free interchange of ideas among students and in particular the discussion of homework assignments, approaches to solving them, etc. However, we do not allow plagiarism, which, as commonly defined, consists of passing off as one's own the ideas, words, writings, etc., which belong to another. In accordance with this definition, you are committing plagiarism if you copy the work of another person and turn it in as your own, even if you should have the permission of that person. Plagiarism is one of the worst academic sins, for the plagiarist destroys the trust among colleagues without which research cannot be safely communicated.

If you have any questions regarding plagiarism, please consult the latest issue of the Texas A&M University Student Rules, under the section on Scholastic Dishonesty.

Americans with Disabilities Act

The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact the Office of Support Services for Students with Disabilities in Room 126 of the Student Services Building. The phone number is 845-1637.