This is the first of three volumes providing a comprehensive presentation of the fundamentals of scientific computing. This volume discusses basic principles of computation, and fundamental numerical algorithms that will serve as basic tools for the subsequent two volumes. This book and its companions show how to determine the quality of computational results, and how to measure the relative efficiency of competing methods. Readers learn how to determine the maximum attainable accuracy of algorithms, and how to select the best method for computing problems. This book also discusses programming in several languages, including C++, Fortran and MATLAB. There are 80 examples, 324 exercises, 77 algorithms, 35 interactive JavaScript programs, 391 references to software programs and 4 case studies.
Topics are introduced with goals, literature references and links to public software. There are descriptions of the current algorithms in LAPACK, GSLIB and MATLAB.
This book could be used for an introductory course in numerical methods, for either upper level undergraduates or first year graduate students.
Parts of the text could be used for specialized courses, such as principles of computer languages or numerical linear algebra.