Centered around a set of fundamental algorithms presented in the form of pseudocode, this self-contained textbook extends the classical syllabus with new material, including high performance computing, adjoint methods, machine learning, randomized algorithms, and quantum computing. It presents theoretical material alongside several examples and exercises and provides Python implementations of many key algorithms.
Methods in Computational Science is for advanced undergraduate and graduate-level students studying computer science and data science. It can also be used to support continuous learning for practicing mathematicians, data scientists, computer scientists, and engineers in the field of computational science. It is appropriate for courses in advanced numerical analysis, data science, numerical optimization, and approximation theory.