Introduction to Scientific Computing

Spring 2014

Course Content

This course introduces concepts and techniques for creating computational solutions to problems in engineering and science. The essentials of computer programming are developed using the C and Matlab languages, with the goal of enabling the student to use the computer effectively in subsequent courses. Programming topics include problem decomposition, control structures, recursion, arrays and other data structures, file I/O, graphics, and code libraries. Applications will be drawn from numerical solution of ordinary differential equations, root finding, matrix operations, regression, searching and sorting, simulation, and data analysis. Good programming style and computational efficiency are emphasized. Although no previous programming experience is assumed, a significant time commitment is required.

Students planning to pursue the engineering sciences major are advised to take ENGINEERING SCIENCES 20. Students considering the computer science major or majors modified with computer science should take COMPUTER SCIENCE 5.


Petra Taylor
Room 111, MacLean

Office Hours

Monday, Wednesday, Friday: 2:00-3:00pm and by appointment
Room 111, MacLean


There will be three classes per week: Monday, Wednesday, and Friday from 11:15am to 12:20pm (Section 1, 11 hour) and 12:30-1:35 (Section 2, 12 hour). The x-hour is on Tuesday from 12:00 to 12:50pm (Section 1) and 1:00-1:50pm (Section 2).


Reading is from

A First Book of ANSI C Bronson, "A First Book of ANSI C, 4th ed."
Matlab: A Practical Introduction to Programming and Problem Solving Attaway, "Matlab, Third Edition: A Practical Introduction to Programming and Problem Solving".


C Primer Plus Prata, "C Primer Plus", 5th ed., 2005. Excellent reference text for all that is C.
C: How to Program Deitel and Deitel, "C: How to Program", 2004. Another good reference text for C programming.
Numerical Recipes in C Press, Teukolsky, Vetterling, and Flannery, "Numerical Recipes in C." The best resource for optimized numerical programs.
Mastering MATLAB 7 Hanselman and Littlefield, "Mastering MATLAB 7", 2005. Excellent reference for MATLAB.
Introduction to MATLAB 7 for Engineers Palm, "Introduction to MATLAB 7 for Engineers." Another good introduction to MATLAB and programming in MATLAB.


MATHEMATICS 3 and prior or concurrent enrollment in MATHEMATICS 8.


In this course you will learn to write computer programs in C and Matlab. Because you will be learning a new language, it is important that you practice the language frequently. To this end there will be daily computer programming exercises in addition to longer homework problems.


More information about this course can be found at the ENGS 20 Canvas site. Log into Canvas with your Dartmouth credentials at