Feel free to close this question if it is inappropriate for the site. I am asking this since questions like these are accepted in math stack-exchange and math overflow.
I am a grad student and will be teaching a two week (12 hours) summer class on computational/numerical linear algebra for sophomores/juniors. Two questions popped up when I began preparing the material.
- What are all the important things in computational/numerical linear algebra which should be taught in one week?
- How to make the one week program productive? For instance, what sort of assignments should be provided.
For the first question, I came up with a quick and small list of material which I believe should be covered.
- Different concepts related to a matrix like norm, row-space, column-space, null-space, rank, condition number etc.
- Basic operations on matrices and their associated costs.
- Solving linear systems.
- Matrix decompositions ($LU$, $QR$, SVD,$XLX^{-1}$).
- Least square, least norm and similar min/max problems.
- Iterative techniques.
- Using linear algebra packages (LAPACK, Eigen)
- Some applications like solving differential equations, Fast Fourier Transform, Image processing etc.
The second question is a bit tricky for me and in some sense I am lost what I need to do, keeping in mind the class is for just $2$ weeks and is for students who will be in principle encountering the subject for the first time. I have attended summer schools in the past and some of them have been really good because of the kind of assignments that were given. I indeed learnt a lot from the summer schools because of good set of assignments.
- Some simple theoretical questions based on norms, different associated spaces of the matrix etc.
- MATLAB exercise to perform various decompositions using the built-in commands and solve systems using these decompositions and the time taken by different algorithms as a function of system size.
- Assignments which highlight the difference in timing for dense and sparse matrix operations.
- An application in image processing using MATLAB.
- An assignment in C++ where they get to use the different C++ libraries.
I would appreciate a honest feedback on the above two fronts, especially on how to make the two week class productive. Also, if I have forgotten to take into account any other thing, please feel free to say so.
