Course Content:

Numerical analysis

  1. Review of elementary calculus (1 lecture). Mean value theorem, Rolle’s theorem, Taylor’s theorem with different error formulae, Ck[a,b] functions.
  2. Introduction to finite precision arithmetic (3 lectures). Representation of numbers of finite digit machines, rounding and chopping errors, error propagation, asymptotic convergence, big and little oh notation.
  3. Root finding of nonlinear systems (4 lectures). Bisection, Secant and Newton’s method, fixed point iteration
  4. Linear systems (5 lectures). Gauss elimination, LU, QR,  matrix norms, Jacobi and Gauss-Seidel method
  5. Interpolation (4 lectures). Lagrange interpolation, Newton interpolation using divided differences, Hermite interpolation, piecewise linear and cubic spline interpolation
  6. Numerical differentiation (2 lectures). Finite differences, Richardson extrapolation
  7. Numerical integration (4 lectures). Trapezoidal rule,  Simpson's rule, Gaussian quadrature in 1D and 2D
  8. Numerical solutions of ordinary differential equations (5 lectures).  Euler’s method, implicit method, predictor-corrector schemes, Runge-Kutta methods.

Programming (Python 3)

  1. Introduction of terminal-based operations and basic unix commands, handling Vim or Emacs,  file management in Unix (2 lectures)
  2. Basic programming principles, simple numerical computations using Python (variables, strings, lists, comparison operators), logical expressions and operators, vector and array manipulation, Jupyter notebook (4 lecture)
  3. Loops and conditional statements in Python, basic data structures (strings, lists, dictionaries) (3 lectures)
  4. Modules, standard modules such as cmath, Numpy Scipy, Matplotlib (4 lectures)
  5. Different type of functions, type conversion, local and global variables (4 lecture)
  6. Graphics using matplotlib, 2D and 3D plotting,  (3 lectures)
  7. File management, Reading and writing large data to file (2 lectures)

 

Learning Outcomes:

  1. Fundamental understanding: Develop a solid understanding of the fundamental concepts of numerical analysis, including the design of algorithms and the application of analysis techniques to manage and minimize errors.
  2. Bridging: Explore how numerical analysis serves as a bridge between applied mathematics and mathematical analysis. Understand the role of real and functional analysis in deriving appropriate error estimates.
  3. Python skills: Gain proficiency in Python 3 and familiarity with modern resources such as Jupyter and Binder. Gain confidence in using Python for scientific computing and numerical simulations.
  4. Application and verification: Apply Python tools to implement numerical methods. Verify theoretical predictions, including evaluating asymptotic convergence rates and stability predictions by von Neumann and Courant-Friedrichs-Lewy methods.

 

Text books

  1. An introduction to numerical methods and analysis, J. Epperson, John Wiley and Sons (1st Edition), 2001, ISBN - ‎ 978-0471316473
  2. Numerical methods in engineering with Python 3, J. Kiusalaas, Cambridge University Press (3rd Edition), 2013, ISBN - 9781139523899

 

References  

  1. An introduction to numerical analysis, K. A. Atkinson, Wiley India (2nd Edition), 2008, 978-8126518500
  2. Numerical analysis, R. L. Burden and J. D. Faires, Cengage Learning Inc (9th Edition), 2010, ISBN - 978-0538733519
  3. An Introduction to Numerical Analysis, E. Sueli and F. D. Mayers, Cambridge University Press, 2003, ISBN - 978-0521007948
  4. A concise introduction to numerical analysis, A. C. Faul,  
  5. Numerical methods for engineers, S. C. Chapra and R. P. Canale, McGraw Hill (8th Edition), 2021, ISBN  - 978-9354601361
  6. Applied numerical analysis, C. F. Gerald and P. O. Wheatley, Pearson education India (7th Edition), 2007, ISBN - 978-8131717400
  7. A graduate introduction to numerical methods: from the viewpoint of backward error analysis, R. C. Corless, N. Fillion, Springer, 2014, ISBN - 978-1461484523,
  8. Python programming and numerical methods : a guide for engineers and scientists,   Q. Kong, T. Siauw, and A. M. Bayen, Academic Press Inc (1st edition), 2020, ISBN - 978-0128195499

  9. Numerical methods with Python: for the Sciences, W. Miller, De Gruyter, 2023, ISBN - 978-3110776454
  10. Numerical Python: Scientific computing and data science applications with Numpy, SciPy, and Matplotlib, Apress, 2019, ISBN - 978-1484246481