Curriculum Guideline

Introduction to Numerical Analysis

Effective Date:
Course Code
MATH 3316
Introduction to Numerical Analysis
Science & Technology
Start Date
End Term
Not Specified
Semester Length
15 weeks
Max Class Size
Contact Hours
Lecture: 4 hours/week Tutorial: 0-1 hour/week
Method Of Instruction
Methods Of Instruction

Lectures, tutorials, problems sessions, assignments (written and/or MATLAB).

Course Description
This course is a presentation of the problems commonly arising in numerical analysis and scientific computing and the basic methods for their solutions. Topics include number systems and errors, solution of nonlinear equations, systems of linear equations, interpolation and approximation, differentiation and integration, and initial value problems. This course will involve the use of a numerical software package (such as MATLAB) and/or a high-level programming language (such as C/C++).
Course Content
  1. Number systems and errors
  2. Solution of nonlinear equations
  3. Systems of linear equations
  4. Interpolation and approximation
  5. Differentiation and integration
  6. Initial value problems
Learning Outcomes

Upon completion of MATH 3316 the student should be able to:

  • understand decimal, binary and floating point representation of numbers
  • understand error propagation and how to estimate numerical error
  • implement methods to solve nonlinear equations including, but not limited to, bisection method, secant method, fixed point iteration and Newton’s method
  • understand how to accelerate convergence in different solution methods for nonlinear equations
  • define and determine rate of convergence for solution methods to nonlinear equations
  • solve directly a system of linear equations using Gaussian elimination
  • solve linear systems numerically using matrix factorization, partial pivoting and matrix inverse
  • understand computational complexity of direct methods for Gaussian elimination
  • define the norm, determinant and condition number of a matrix
  • solve linear systems numerically using iterative methods
  • understand how iterative methods for solving linear systems differ from direct methods for solving linear systems
  • recognize eigenvalue problems and understand the issues involved in obtaining eigenvalues numerically
  • understand interpolating polynomials: Lagrange form and error formula
  • implement spline interpolation
  • understand the concept of trigonometric interpolation and Fourier series and Chebyshev polynomials
  • use the method of least squares to deal with inconsistent linear systems
  • use the QR factorization to solve least squares problems
  • understand and implement numerical differentiation techniques including finite differences and Richardson extrapolation
  • understand and implement numerical quadrature, using methods such as Romberg integration and composite rules
  • solve numerically initial value problems using Euler’s method and Runge-Kutta methods
  • use and understand the concepts of convergence, stability and stiffness when solving initial value problems numerically
  • solve numerically systems of ordinary differential equations
  • optional: Discrete Fourier representation and transforms, Singular Value Decomposition
Means of Assessment

Evaluation will be carried out in accordance with Douglas College policy.  The instructor will present a written course outline with specific evaluation criteria at the beginning of the semester.  Evaluation will be based on some of the following criteria:

1.    Tutorials    0 – 10% 
2.    Tests   20 – 70%
3.    Assignments/Group work     0 – 20%
4.    Attendance    0 – 5%
5.    Final examination    30 – 40%
Textbook Materials

Consult the Douglas College bookstore for the current textbook. Examples of books under consideration include:

Burden, Richard L. and Faires, J. Douglas, Numerical Analysis, current edition, Nelson.
Ascher, Uri M. and Grief, Chen, A First Course on Numerical Methods, current edition, SIAM
Sauer, Timothy, Numerical Analysis, current edition, Pearson


MATH 1220 and MATH 2232;
Exposure to a high-level programming language or course such as CMPT 1110 is recommended.




College Transfer Credit. See BC transfer guide for transfer details. (

Which Prerequisite