Scientific Computing Course

Title: Scientific Computing
Catalog number: IT 515R, Section 1
Semester: Winter 2019
Time: 3:30 - 4:50 PM Tuesday, Thursday
Credit Hours: 3 - You must enroll for 3 credits. The registration website lists this as a variable credit class but it is not.
Instructor: Levi Morrison (Computational Scientist for Supercomputing)

About the Course

The Scientific Computing course was first taught in Winter 2016 and has been taught each Winter semester since. Students came from a wide variety of programs such as Biology, Chemistry, Economics, Mechanical Engineering, and Physics; about half were graduate students, about half were undergraduates, and a professor took the class as well. The class will be taught again in Winter 2019.

This course is intended for students whose current or future coursework or research involves computational science (e.g. computational fluid dynamics, genomics, finite element analysis, economics simulations, computational linguistics, physics, etc).

The class will help students learn the principles of operating in a typical scientific computing environment. Topics include typical Linux shells and commands, hardware (CPU, memory, network, etc), storage management, job scheduling, code and workflow optimization, code management, results verification, and programming. A semester-long project will help students apply the principles that are taught in class.


Prior to taking the class, students must know how to program in at least one language, including knowing how to write conditionals, loops, and functions. C++ is strongly preferred. Experience with only the R programming language has been found to be insufficient preparation. No particular course is required as a prerequisite, though CS 142 or similar is strongly recommended.

A computer science background is not necessary except for the programming skills requirement.

Elective Credit

Many students will be able to use this class to fulfill an elective after petitioning their program. You must contact your program to see if this is possible.