This book is intended to help advanced undergraduate, graduate, and postdoctoral students in their daily work by oﬀering them a compendium of numerical methods. The choice of methods pays signiﬁcant attention to error estimates, stability and convergence issues, as well as optimization of program execution speeds. Numerous examples are given throughout the chapters, followed by comprehensive end-of-chapter problems with a more pronounced physics background, while less stress is given to the explanation of individual algorithms. The readers are encouraged to develop a certain amount of skepticism and scrutiny instead of blindly following readily available commercial tools.
The second edition has been enriched by a chapter on inverse problems dealing with the solution of integral equations, inverse Sturm-Liouville problems, as well as retrospective and recovery problems for partial diﬀerential equations. The revised text now includes an introduction to sparse matrix methods, the solution of matrix equations, and pseudospectra of matrices; it discusses the sparse Fourier, non-uniform Fourier and discrete wavelet transformations, the basics of non-linear regression and the Kolmogorov-Smirnov test; it demonstrates the key concepts in solving stiﬀ diﬀerential equations and the asymptotics of Sturm-Liouville eigenvalues and eigenfunctions. Among other updates, it also presents the techniques of state-space reconstruction, methods to calculate the matrix exponential, generate random permutations and compute stable derivatives.