Codes developed for a course on numerical linear algebra based on the book
L. N. Trefethen and D. Bau: Numerical Linear Algebra, SIAM
Original:
https://www.bitbucket.org/cpraveen/nla
Mirrored:
https://www.github.com/cpraveen/nla
WARNING: These codes are used to illustrate the algorithms in the book. They are not written to be efficient implementations of those algorithms.
The codes are written in Python and as Jupyter notebooks. A short Python tutorial is available here.
Some of the notebooks need some files to run which must be downloaded from bitbucket. If you are running from terminal, you can download all files once
cd DATA
sh ./download.sh
You can get a free account at https://studiolab.sagemaker.aws and clone this git repo into your account, and then run/edit the notebooks.
Run the code in binder: . When you first click on this link, it may take a few minutes to set up the environment with all required packages. Then you can edit and run the notebooks, but you cannot save them; but you can download the notebooks to your computer.
Open the src
directory: https://nbviewer.org/github/cpraveen/nla/tree/master/src
or the individual files
- Singular value decomposition
- Applications of SVD
- QR factorization
- Least squares problems
- Sensitivity of polynomial roots: Wilkinson polynomial
- Floating point arithmetic
- Stability of Householder triangularization (Lecture 16)
- Triangular systems
- Stability of least squares algorithms
- Gaussian elimination (Lecture 20,21)
- Stability of Gaussian elimination (Lecture 22)
- Cholesky decomposition (Lecture 23)
- Reduction to Hessenberg form (Lecture 26)
- Power and inverse iteration (Lecture 27)
- QR algorithm for eigenvalues (Lecture 28)
The following links open individual files in colab.
- Singular value decomposition
- Applications of SVD
- QR factorization
- Least squares problems
- Sensitivity of polynomial roots: Wilkinson polynomial
- Floating point arithmetic
- Stability of Householder triangularization (Lecture 16)
- Triangular systems
- Stability of least squares algorithms
- Gaussian elimination (Lecture 20,21)
- Stability of Gaussian elimination (Lecture 22)
- Cholesky decomposition (Lecture 23)
- Reduction to Hessenberg form (Lecture 26)
- Power and inverse iterations (Lecture 27)
- QR algorihtm for eigenvalues (Lecture 28)
- https://github.com/cpraveen/na/tree/master/la
- https://github.com/cpraveen/numpde/tree/master/bvp1d
- https://github.com/cpraveen/numpde/tree/master/bvp2d
- S. L. Brunton and J. N. Katz, Data Driven Science and Engineering: Machine Learning, Dynamical Systems and Control, Cambridge Univ. Press.
- James Demmel, Applied Numerical Linear Algebra, SIAM.
- E. Darve and M. Wootters, Numerical Linear Algebra with Julia, SIAM.
- G. H. Golub and C. F. Van Loan, Matrix Computations, Hindustan Book Agency.