Praveen Chandrashekar

Centre for Applicable Mathematics, TIFR, Bangalore

[ People | News | Codes | Talks | Teaching | Publications | Calendar | Hiking | Contact ]

Books and other learning material

In this page, you will find a list of essential reading material that is relevant to the kind of work I do. In each section, the books are roughly arranged in the order of increasing complexity.

Physics

Every student of science and mathematics must read this

Fluid Dynamics

  1. D. J. Tritton, Physical Fluid Dynamics
  2. John D. Anderson Jr., Modern compressible flow: With historical perspective
  3. L. D. Landau and E. M. Lifschitz, Fluid Mechanics
  4. G. K. Batchelor, An Introduction to Fluid Dynamics
  5. P. A. Davidson, Turbulence: An introduction for scientists and engineers
  6. Stephan B. Pope, Turbulent Flows

Ordinary Differential Equations

  1. L. N. Trefethen, A Birkisson, T. A. Driscoll, Exploring ODEs, Book website

Partial Differential Equations

  1. Karl E. Gustafson, Introduction to PDE and Hilbert Space Methods
  2. Heinz-Otto Kreiss and Jens Lorenz, Initial-Boundary Value Problems and the Navier-Stokes Equations
  3. G. B. Whitham, Linear and Non-linear Waves
  4. L. C. Evans, Partial Differential Equations

Numerical analysis

  1. L. N. Trefethen, Approximation Theory and Approximation Practice, Book website, Codes
  2. Abner Salgado and Steven Wise, Classical Numerical Analysis: A Comprehensive Course.

PDE + computations

These books teach a bit of both theory and numerics for ODE and PDE.

  1. Vidar Thomee and Stig Larsson, Partial Differential Equations with Numerical Methods
  2. Aslak Tveito and Ragnar Winther, Introduction to Partial Differential Equations: A Computational Approach.

Numerical methods for PDE

  1. Randall LeVeque, Finite difference methods for ordinary and partial differential equations (Book website)
  2. J. W. Thomas, Numerical Partial Differential Equations: Finite Difference Methods
  3. Bertil Gustafsson, Heinz-Otto Kreiss, Joseph Oliger, Time dependent problems and difference methods.

Numerical methods for conservation laws

  1. Randall J. LeVeque, Numerical Methods for Conservation Laws
  2. Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems
  3. E. Godlewski and P. Raviart, Hyperbolic Systems of Conservation Laws
  4. E. F. Toro, Riemann solvers and numerical methods for fluid dynamics
  5. E. Godlewski and P. Raviart, Numerical Approximation of Hyperbolic Systems of Conservation Laws

Computational Fluid Dynamics

  1. John D. Anderson Jr., Computational Fluid Dynamics: The basics with applications
  2. Jiri Blazek, Computational Fluid Dynamics: Principles and Applications (Codes from 3'rd edition)
  3. Charles Hirsch, Numerical Computation of Internal and External Flows, Vol. I & II
  4. Charles Hirsch, Numerical Computation of Internal and External Flows: The Fundamentals of Computational Fluid Dynamics, 2007

Finite Element Methods

  1. Claes Johnson, Numerical Solution of Partial Differential Equations by the Finite Element Method
  2. Dietrich Braess, Finite elements: Theory, fast solvers and applications in solid mechanics
  3. Alfio Quarteroni and Alberto Valli, Numerical Approximation of Partial Differential Equations
  4. Philippe Ciarlet, The Finite Element Method for Elliptic Problems

Numerical Linear Algebra

  1. L. N. Trefethen and David Bau, Numerical Linear Algebra, SIAM
  2. James W. Demmel, Applied Numerical Linear Algebra
  3. G. H. Golub and C. F. Van Loan, Matrix Computations
  4. Yousef Saad, Iterative Methods for Sparse Linear Systems (Download)

Programming, MPI, HPC

  1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language
  2. Bjarne Stroustrup, A Tour of C++
  3. Peter Gottschling, Discovering Modern C++: An Intensive Course for Scientists, Engineers and Programmers
  4. Richard J. Hanson and Tim Hopkins, Numerical Computing with Modern Fortran
  5. Victor Eijkhout, Introduction to Scientific Programming in C++/Fortran2003 (Download)
  6. Victor Eijkhout, Introduction to High Performance Scientific Computing (Download)
  7. Victor Eijkhout, Parallel Programming for Science and Engineering (Download)
  8. Georg Hager and Gerhard Wellein, Introduction to High Performance Computing for Scientists and Engineers

Data science, machine learning

  1. Christopher M. Bishop, Pattern recognition and machine learning (Download)
  2. Gilbert Strang, Linear Algebra and Learning from Data
  3. Steven Brunton and Nathan Kutz, Data-driven science and engineering (Book website)

Video and online lectures/resources

  1. Walter Lewin: Physics I -- Classical Mechanics
  2. NSF Fluid Mechanics Series
  3. L. N. Trefethen: Approximation Theory and Approximation Practice
  4. L. N. Trefethen: Scientific Computing
  5. Gilbert Strang: Computational Science and Engineering I [Codes]
  6. Gilbert Strang: Mathematical Methods for Engineers II [Codes]
  7. Randall LeVeque: High performance scientific computing: Course site, Class notes
  8. Steven Brunton has a nice collection of videos on data science, reduced order models, etc.
  9. Lorena Barba: Computational Fluid Dynamics
  10. Krishna Garikipati: Introduction to Finite Element Methods
  11. Wolfgang Bangerth: Finite element methods in scientific computing (based on deal.II)
  12. MPI tutorial from EPCC
  13. Introduction to Modern Fortran