This textbook covers essential numerical techniques including basic methods for linear systems, root finding, interpolation, numerical integration and differentiation, least squares and Monte Carlo methods. This book balances the development, implementation, application and analysis of computational ideas and methods.