This book gives an introduction to numerical analysis, and it is intended for use by undergraduates in the sciences, mathematics, and engineering. The main prerequisite for using the book is a one-year course in the calculus of functions of one variable; some knowledge of computer programming is also needed. With this background, the book can be used for a sophomore-level course in numerical analysis. The last two chapters of the textbook are on numerical methods for linear algebra and ordinary differential equations. A background in these subjects would be helpful, but these chapters include the necessary theoretical material.
Students taking a course in numerical analysis do so for a variety of reasons. Some will need it in other subjects, in research, or in their careers. Others will be taking it to broaden their knowledge of computing. When I teach this course, I have several objectives for the students. First, they should obtain an intuitive and working understanding of some numerical methods for the basic problems of numerical analysis (as specified by the chapter headings). Second, they should gain some appreciation of the concept of error and of the need to analyze and predict it. And third, they should develop some experience in the implementation of numerical methods using a computer. This should include an appreciation of computer arithmetic and its effects.
The book covers most of the standard topics in a numerical analysis course, and it also explores some of the main underlying themes of the subject. Among these are the approximation of problems by simpler problems, the construction of algorithms, iteration methods, error analysis, stability, asymptotic error formulas, and the effects of machine arithmetic. Because of the level of the course, emphasis has been placed on obtaining an intuitive understanding of both the problem at hand and the numerical methods being used to solve it. The examples have been carefully chosen to develop this understanding, not just to illustrate an algorithm. Proofs are included only where they are sufficiently simple and where they add to an intuitive understanding of the result.
For the introduction to computer programming, the preferred language in the world of scientific computing is Fortran. In this text I have used Fortran 77, the new Fortran standard. It permits much better programming practices, and the programs written in it are much easier to understand than those written in Fortran 66. 1 have found that students experienced in Pascal can learn Fortran 77 very rapidly during the course.
The Fortran programs are included for several reasons. First, they illustrate the construction of algorithms. Second, they save the students from having to write as many programs, allowing them to spend more time on experimentally learning about a numerical method. After all, the main focus of the course should be numerical analysis, not learning how to program. Third, the programs provide examples of the language Fortran 77 and of good programming practices using it. Of course, the students should write some programs of their own. Some of these can be simple modifications of the included programs, for example, modifying the Simpson integration code to one for the trapezoidal rule. Other programs should be more substantial and original. The Fortran 77 programs of this text are available on a floppy disk, included with the instructor's manual for the text.
There are exercises at the end of each section in the book. These are of several types. Some exercises provide additional illustrations of the theoretical results given in the section, and many of these can be done with either a hand calculator or with a simple computer program. Other exercises are to further explore the theoretical material of the section, perhaps developing some additional theoretical results. In some sections, exercises are given that require more substantial programs; many of these exercises can be done in conjunction with package programs such as those discussed in Appendix C.
In teaching a one-semester course from this textbook, I cover the material in the order given here. The material can be taught in some other order, but I suggest that Chapters I through 3 be covered first. Following that, Chapter 8 on linear algebra can be included at any point. In the material on polynomial interpolation in Chapter 5 will be needed before covering Chapters 6, 7, and 9. The textbook contains more than enough material for a one-semester course, and the instructor has considerable leeway in what to leave out.
Copyright © 1996-2017 Alexander Bogomolny