Introduction to Numerical Computing

Physics BS majors: You can SUBSTITUTE THIS CLASS for COP 3502C Computer Science I by petition.  See Dr. Flitsiyan or Dr. Cooney in the Physics department for approval.

Make computers work for you!

This class is for students with a problem-solving mindset who don’t know how to program, or have just taken beginner programming classes.  We will learn how to learn new computer skills in preparation for classes, research, and career including:

  • Doing science/math/engineering problems with a computer
  • Command-line and shell programming
  • Programming fundamentals in Python (~1/3 of the course)
  • Planning and quickly writing real programs that work!
  • Debugging, test-driven development, version control
  • Basic numerical computation (integration, interpolation, optimization)
  • Scientific plotting, animation, and video
  • Basic system management (all the work is on your own computer)
  • Managing project data, planning workflow

What does “with a problem-solving mindset” mean?  In the first run of this course, we discovered that most students who were used to solving problems with mathematics took quickly to programming and were writing real programs in a few weeks.  Students who were not comfortable solving math problems took much longer.  The course has been renamed Introduction to Numerical Computing because it is now aimed at students who can already solve math problems easily.  We will not be teaching basic problem-solving skills.  Examples and problems will come from a variety of fields, but especially basic physics, astronomy, and math.

All books and software used in this class are free!

Level: Freshman or higher (no experience desired!)

Credits: 3 (3,0)

Professor: Theodora Karalidi <> PSB 104

Meets: TR 9:00 – 10:20 in BA1 110

Prereq: MAC 2311C Calculus I. A laptop with keyboard (Linux, Mac, or Windows, not a netbook, chromebook, tablet, or phone) and a strong desire to tame it!  Bring laptop to every class, especially the first one.

Satisfies: Computer programming prerequisite for AST 4762

Satisfies: COP 3502C requirement in Physics BS (by petition)

Physics Graduate Students: You can register for this course out of interest, but the credits do not count toward graduate degree requirements (there may be an exception for MS students in the Bridge program). GTA tuition waiver does not cover tuition, but your advisor may choose to cover tuition, which is at the in-state rate.