Last updated: August 23, 2019

This is the tentative website for **MTH 537 Introduction to Numerical Analysis I**, Fall 2019.

Once I gain edit access to UBlearns, I will migreate this website there.

**Where:** Room 122, Math Building

**Schedule:** MWF, 1:00-1:50PM

**Office hours:** MW, 2:00-3:00PM, Math Building 318

No lecture on November 4 (Monday). The supplementary lecture is on November 8 (Friday), 3:00-3:50pm in Room 122 and 4:00-4:50pm in Room 150. I will give exactly the same lecture twice. So it is enough to attend just one. Note that the regular lecture 1:00-1:50pm on this day occurs as usual.

No lecture on November 13 (Wednesday). The supplementary lecture is on November 15 (Friday), 3:00-3:50pm in Room 122 and 4:00-4:50pm in Room 150. Again, I will give exactly the same lecture twice. Note that the regular lecture 1:00-1:50pm on this day occurs as usual.

Thanks for accommodating these changes.

- Note 1: Skip problem 3. It will be a problem for Week 2 homework. Only do problems 1 and 2.

- Please be aware of the following in future homework.
- Though I haven't said anything, it is not mandatory to copy-and-paste all the outputs from your code as they are. You may be interested in summarizing those outputs into a table or figure, or embed into the main text of your report.
- e-10 is machine notation. Please do not use it in your report main text or figure labels. You should write $10^{-10}$ (in the case of LaTeX).
- In any software including Python, the default axis labels and tics numbers are usually too small to see, and default line widths and marker sizes tend to be too small. The homework is weekly, so I won't ask you to spend too much time on artwork, but at least do a minimum adjustment such as these.
- The resolution of marking the report is 0.5. Each homework is worth 2 marks so one question is worth 1 mark. So, for each homework you get either 0, 0.5, 1, 1.5, or 2. This time relatively many students got 1.5. I had to subtract 0.5 for a relatively small (but essential) error you made. But this does not mean that I think you achieved just a half of that question. Even if you make similar 2-3 errors in one question, your mark remains 0.5 for that question. If the error is really minor, I did not subtract anything, and you get a full mark for that question. In the future, I will sometimes assign three questions. In that case, I will abandon the current "1 question = 1 mark" scheme, but still continue to mark the report with a resolution of 0.5 marks. Please accommodate this marking scheme.

- The scope of the first midterm exam on September 16 is anything you learned to the section of fixed-point iterations (but before Newton method).
- The exam will be mathematical rather than computational. Note: Computational training is being done with homework.
- I recommend to study the official textbook (and similar materials), including some details I did not cover in the lectures and sample questions in the end of each chapter.
- You can bring in lecture notes.
- You cannot bring in the textbook.
- You cannot bring in calculators.

Note: This website has erratas as well, but the pdf does not show (at least in my computer).

The department teaching is based on Python rather than MATLAB (and Python is free!), so John Ringland is kindly translating MATLAB codes in the book into Python, available here. Note that not all the codes will be translated. Only those which I will use in the classes, relevant to homework, etc. are translated.

I also write some Python codes to be demonstrated in classes, which are available below. In doing computational homework, you are allowed to use part or whole of these codes (including the ones translated by John) in your submission.

Chapter 1:

- approx_dfdx_Ex1.7.py (effectively generating the table on p.9 in the textbook)
- difference_table.py and difference_quotient.py from the translation. Just run difference_table.py, which calls difference_quotient.py.

Chapter 2:

- bisect_method2.py

This is the same as bisect_method.py but works with python2 as well as pyton3. Code bisect_method.py works only with python3. Observe tiny differences between the two codes.

Send me mail (via mailto)