Physics 105: Introduction to Computational Physics

Course Instructor (Spring 2015): Prof. Steve McMillan

  Lectures:     Disque 704, Tu Th 10:00 am - 11:20 pm (001), 11:30 am - 12:50 pm (002)
  Office:       Disque 816 (McMillan/001), 805 (Vallieres/002)
  Office Hours: by appointment
  Phone:        (215) 895-2709, (215) 895-2714
  Fax:          (215) 895-2940

  e-mail:       steve (at), vallieres (at)
  course:       phys105 (at)
  sysadmin:	sysadmin (at)

Course Overview

This is the first in a series of hands-on "computational labs" designed to complement the traditional lecture/lab/recitation Physics instructional sequence. It is intended to be taken immediately after the first two parts of the Contemporary Physics sequence, or their equivalent (for example, the "Fundamentals of Physics" PHYS 101/102 sequence would also serve as a suitable introduction). Students will be introduced to basic scientific programming techniques and problem-solving strategies using examples and case studies drawn from the material presented in the introductory Physics courses (see course outline).

Learning Outcomes

After completing this course, students should be able to:



There is no set text for this course. Material will be drawn as needed from the Contemporary Physics syllabus, and distributed via this Web page.


Grading will be based on 7 homeworks, accounting for 80% of the total grade. The final homework will take the form of a limited-time, take-home examination and will carry 20% of the total; the other homeworks will carry 10% each. There will also be an in-class mid-term examination, worth 20% of the total grade and based on the in-class exercises, on Thursday, May 7 (week 6). The final project will begin during the last class period and will be due the next day -- no exceptions!

Homework Format

Homeworks will be assigned on the course Web page, and are expected to be turned in electronically, via e-mail to  Homeworks will involve writing programs to solve problems, printing out the solutions, and possibly plotting graphs of the results. To ensure that all of your work is clearly presented, your solution should begin with a cover page containing the homework number and your name(!), and a brief description of the material that follows. Your solution to each problem should begin by presenting all of the written answers and numerical solutions requested, followed by graphs, tables, programs, etc., in the order listed on the cover page. All answers should be clearly marked, and all graphs and program listings should be clearly labeled. More detailed instructions on preparing and formatting your homework are presented in the course web pages.

Course Outline