Instructor: Harvey Gould, office: 214 Physics, email
Teaching Assistant: Hui Wang, email.
Office Hours: Harvey Gould, no appointment necessary. Hui Wang, Thursday, 1:30 - 3 pm and by appointment (preferably by e-mail).
Prerequisites: One semester of physics and calculus or permission of the instructor. No background in computer programming is required.
Textbook: An Introduction to Computer Simulation Methods: Applications to Physical Systems, 3rd ed., Harvey Gould, Jan Tobochnik, and Wolfgang Christian, Addison-Wesley (2006), ISBN: 0-8053-7758-1.
Supplementary textbook (not required): Wolfgang Christian, Open Source Physics: A User's Guide with Examples, Addison-Wesley (2006), ISBN: 0-8053-7759-X.
Time and Place: Discussion Tuesday, Friday 1:25 pm - 2:10 pm, Room 211. An extra discussion time for Physics 327 will be scheduled later in the semester.
Laboratory: The laboratory will meet immediately after the discussion in Room 224. You are welcome to use your laptop computer, but dual processor computers running Mac OSX 10.4 or Linux are available.
Description of Course
Physics 127 is an introductory course on the computer simulation of
physical systems. The goals of the course are to introduce the
methods of computer simulation, gain a better intuitive understanding
of basic concepts in physics, learn object oriented programming, learn
how computer simulation is changing the nature of physics and related
disciplines, and become familiar with other skills such as plotting
and writing lab reports.
The course is project oriented so that students can proceed at their own pace depending on their background and interests. The primary programming language of the course is Java. During the first part of the course, we will discuss some of the main applications of computer simulations including planetary motion, chaos and nonlinear systems, molecular dynamics, random systems, fractal phenomena, and applications of Monte Carlo methods to thermal systems. Students will choose a final project that can range from economics to opinion formation as well as the usual topics in physics and related sciences.
Physics 127 fulfills the scientific perspective requirement. Physics 327 is taught concurrently and can be taken for graduate credit. An additional discussion section will be arranged for graduate students and for undergraduates wishing to study the more advanced chapters.
Software
We will develop simulations using Java and the Open Source Physics library. More information on the library can be found in the Open Source Physics Users Guide. Resources for learning Java include the Sun tutorial and the Java API specification (1.4.2). You may wish to purchase a Java programming book, but there is no hurry.
Structure of Course
The discussions will introduce the physical system of
interest and the corresponding model, suggest algorithms and
programming strategy, and present methods for analyzing the results.
Discussions of programming will usually take place in the laboratory.
The overall goal is to lead students to conceptualize a physical system, develop a computer experiment, and analyze and explain the data that they generate. The premise is that this process will lead students to a greater intuitive understanding of the system of interest as well as an understanding of the methods of computer simulation.
Workload
It is expected that you will spend approximately 12-15 hours per week on the course,
including attendance at the scheduled discussion and laboratory
periods and the preparation of laboratory reports. The maximum of 12-15
hours is necessary to protect you from unreasonable demands by the
instructor and from the tendency of some students to become overly
involved in their projects. The minimum is necessary in order that
students make reasonable and steady progress in a course that is
project-oriented. Graduate students are expected to spend 15-20 hours per week.
Attendance Policy
Attendance at the discussions and the assigned laboratory sections
is required. The only generally accepted excuse for absence is
illness.
Grades
Grades will be based on the difference between what you learned at the end of the course and what you knew at the beginning. That is, each student will be evaluated differently. Student performance will be based on the following (in approximate
order of importance).