Computation has long been an important tool for scientists, but the past two decades have seen a true revolution in the practice of science. Computation, in the form of both simulation and analysis, has joined theory and experimentation as the oft-quoted third pillar of science. This is an applications course highlighting the use of computers in solving scientific problems. Students are exposed to fundamental computer science concepts such as computer architectures, data structures, algorithms, and parallel computing. Students learn the fundamentals of scientific computing including abstract thinking, algorithmic development, and assessment of computational approaches. They learn to use a series of open source tools and libraries and apply them to data analysis, modeling, and visualization of real scientific problems. The course emphasizes parallel programming and parallel thinking. The recorded lectures are from the Harvard School of Engineering and Applied Sciences course Computer Science 205.
Prerequisite: CSCI E-50, or the equivalent. (4 credits)