Lecture: 3 hours
Discussion: 1 hour
Prerequisite: Course ECS 130
Grading: Letter; 6-8 problem sets/labs (60%), final (40%)
Algorithms and techniques for large-scale scientific computation, including basics for high performance computing, iterative methods, discrete approximation, fast Fourier transform, Poisson solvers, particle methods, spectral graph partition and its applications. Offered in alternate years.
To learn about concepts and general techniques that are essential for modern methods, and to be able to apply them in a particular domain of large-scale scientific computation.
Expanded Course Description:
Michael T. Heath, Scientific Computing: An Introductory Survey, McGraw-Hill, 1997, ISBN: 0-07-027684-6
Selected papers from the literature and lecture notes
Each homework set includes problems related to the basic concepts and techniques discussed in the class. In addition, there are one or two programming assignments in each homework set. The programming assignments focus on design and implementation of program modules, selected from the lecture topics. Students are expected to design, implement/use existing software packages and templates if applied, and test their numerical algorithms and apply them to specific problems and/or data sets. Students can choose among programming languages such as FORTRAN, C, and C++, and may implement them on workstations and PCs. Some of programming assignments are also be designed to be conducted in the MATLAB computing environment.
Instructor: Z. Bai
Prepared by: Z. Bai (January 2002)
A few topics (such as iterative methods) may intersect MAT 229AB, but not significantly. The emphasis of these courses is very different. ECS 230 is a one-quarter course that is designed for computationally-oriented disciplines, particularly graduate students in computer science areas, who need to solve numerical computation problems in their research, but have only a limited time for this purpose due to many other complementary course requirements. ECS 230 emphasizes the algorithmic structure of numerical methods, engineering reliable and efficient software, and applications including information-based computing.