## Course Description

Computational methods for solving numerical problems in science, engineering and business. Linear and non-linear equations, approximation, optimization, interpolation,integration and differentiation. The aim is to give students a basic understanding of floating-point arithmetic and the implementation of algorithms used to solve numericalproblems, as well as a familiarity with current numerical computing environments.Course concepts are crucial to a wide range of practical applications such as computational finance and portfolio management, graphics and special effects, data mining and machine learning, as well as robotics, bioinformatics, medical imaging and others.

See the Syllabus for more information.

## Course Staff and Contact

**Instructor:** Lisa Zhang**Office Hours:** Monday 2pm-4pm and by appointment**Office:** DH3078**Email:** lczhang [at] cs [dot] toronto [dot] edu**Teachin Assistant:**

Please include "CSC338" in your subject.

All announcements will be made on Piazza and Quercus

## Textbook

Michael Heath, Scientific Computing: An Introductory Survey, Second Edition, McGraw Hill, 2002.

Roughly the first half of the book will be covered. The relevant chapters have been made available by McGraw Hill in the textbook store at a special price.

## Tentative Schedule

The course schedule is tentative and subject to change.

Lecture 1 (Jan 8)- Introduction
- Errors in Scientific Computing
- Lecture Notes
| Tutorial 1 (Jan 9) - Optional- Python and Jupyter Notebook
- Setting up Homework 1
| Readings:- Chapter 1 Slides 1-23
- Textbook Chapters 1.1, 1.2,
Recommended Review- Essense of Linear Algebra by 3Blue1Brown [YouTube playlist]
| |

Lecture 2 (Jan 15)- Floating Point Numbers
- Lecture Notes
- Notebook Output
| Tutorial 2 (Jan 16)- Floating Point Numbers Exercises
- Handout
| Reading- Chapter 1 Slides 24-44
- Textbook Chapters 1.3-1.3.10
| Homework 1 (due Jan 15)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 3 (Jan 22)- Systems of Linear Equations
- Gauss Elimination
- LU Factorization
- Lecture Notes
| Tutorial 3 (Jan 23) | Reading- Chapter 2 Slides 1-7, 23-39
- Textbook Chapters 2.1, 2.2, 2.4-2.4.4
Additional Reading | Homework 2 (due Jan 22)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 4 (Jan 29)- Vector and Matrix Norms
- Conditioning of Ax=b
- Gauss Elimination With Partial Pivoting
- Lecture Notes
| Tutorial 4 (Jan 30)- Gauss Elimination
- Handout
| Reading- Chapter 2 Slides 8-22, 40-42
- Textbook Chapters 2.3, 2.4.5
| Homework 3 (due Jan 29)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 5 (Feb 5)- Complete Pivoting
- Iterative Refinement
- Modified Problem
- Cholesky Factorization
- Lecture Notes
- Notebook demo output
| Tutorial 5 (Feb 6) | Reading- Chapter 2 Slides 43-51, 57-71, 76
- Textbook Chapters 2.4.9-2.5.1
| Homework 4 (due Feb 5)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 6 (Feb 12)- Linear Least Squares
- The Normal Equation
- Conditioning & Sensitivity
- Lecture Notes
| Tutorial 6 (Feb 13)- Homework Take-up
| Reading- Chapter 3 Slides 1-3, 9-13, 17-21
- Textbook Chapters 3.1-3.2, 3.4.1
| Homework 5 (due Feb 12)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Reading Week. | Instructor Office Hours Wednesday Feb 17th 12pm-2pm DH3078 | ||
---|---|---|---|

Lecture 7 (Feb 26)- Midterm (50 min)
- Householder Transform
- Lecture Notes
| No tutorials this week | - Chapter 3 Slides 1-3, 9-13, 17-21
- Textbook Chapters 3.1-3.2, 3.4.1
| |

Lecture 8 (Mar 4)- Nonlinear Equations
- Interval Bisection
- Fixed-Point Iteration
- Lecture Notes
- Handout
| Tutorial 8 (Mar 5)- Midterm Solutions
- Midterm Paper
- Midterm Solutions
| Reading- Chapter 3 Slides 4-8, 14-16, 24-39
- Textbook Chapters 3.3, 3.4.3-3.5.1
| Homework 6 (due Mar 4)Handout and Starter Code [html] [pdf] [ipynb] [py] Data Files [mnist_images.npy] [mnist_labels.npy] |

Lecture 9 (Mar 11)- Fixed-Point Iteration
- Newton's Method; Secant Method
- Non-Linear Equations Definitions & Setup
- Lecture Notes
| Tutorial 9 (Mar 12)- Non-Linear Equations
- Handout
| Reading- Chapter 5 Slides 1-23
- Textbook Chapters 5.1-5.5.2
| Homework 7 (due Mar 11)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 10 (Mar 18)- Nonlinear Optimization
- Golden Section Search
- Newton's Method
- Notes
| Tutorial 10 (Mar 19)- Nonlinear Equations
| Reading- Chaper 5 Slides 16-31, 41-45
- Textbook Chapters 5.2-5.4, 5.6-5.6.2
| Homework 8 (due Mar 18)Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 11 (Mar 25) | Tutorial 11 (Mar 26)- Exam Review
- Last year's exam
| Reading- Chapter 6 Slides 1-6, 10-11, 16-20, 23-25
- Textbook Chapters 6.1, 6.2.2, 6.4-6.4.1, 6.4.3
| Homework 9 (due Handout and Starter Code [html] [pdf] [ipynb] [py] |

Lecture 12 (Apr 1) | No Tutorial | Reading- N/A. Materials not on exam.
| |

Final Examination Schedule You can find old csc338 exams here. Keep in mind that the content covered each term may be different. |