Spring 2012

COMP 116: Introduction to Scientific Programming

Note: Detailed information and course materials (lectures, handouts, etc.) will be available via Sakai (log in with your Onyen and select COMP 116).

Organizational:

Section 003 Tuesday/Thursday, 11:00am-12:15pm
Classroom FB009 (Fred Brooks building)
Office Hours Friday, 10am-12pm (or by appointment)
Location: SN362


Overview:

An introduction to programming for computationally oriented scientists. Fundamental programming skills, using MATLAB and another imperative programming language (such as C). Problem analysis and algorithm design, with examples drawn from simple numerical and discrete problems. Students can only receive credit for one of COMP 110, COMP 116, or COMP 121.

Topics covered: After taking this class, students will learn:
  • Numerical Computation: Use MATLAB for doing numerical computation: including arithmetic, algebra, calculus, working with matrices, and solving systems of linear equations.
  • Programming: Create programs to solve scientific problems.
  • Fundamentals: Learn the fundamentals common to many programming languages (variables, data types, flow of control, modular design, etc.).
  • Debugging: Avoid and track down bugs using defensive programming techniques.
  • I/O: Work with user input (or file input) and transform it into 2D & 3D graphics (or file output).
Prerequisites: Please contact me if you are concerned about whether you have the background required for this course.
  • MATH 231: We assume familiarity with univariate differential and integral calculus, and the ability to manually solve a system of simultaneous linear equations.
  • Computer Literacy: Basic proficiency with using a personal computer, using a mouse and keyboard, word processing, email, and finding information off the internet is assumed.
  • Laptop: Each student needs their own laptop computer for installing and using the MATLAB software during the course of the semester.
Postrequisites: COMP 116 satisfies the General Education, Quantitative Reasoning requirement of 3 credit hours. For students interested in computer science as a major or minor, most upper level and graduate classes in computer science, assume that the student has learned basic programming by taking one of the following courses: COMP 110, COMP 116, or COMP 121.