SFWR ENG 3X03/COMP SCI 4X03 Course Outline

Scientific Computation



  • Marks have been updated, Dec. 06.
  • A solution for Assignment 3 is posted.
  • Recent tutorial slides are posted.
  • ======================================================


    Dr. Sanzheng Qiao
    ITB246, ext. 27234, qiao@mcmaster.ca

    Office Hours

    We 13:30-14:30, ITB237, Zhaofei Tian
    Th 13:30-14:30, ITB237, Jingjing Huang
    Fr 15:00-16:00, ITB246, Sanzheng Qiao

    Course Assistance

    Zhaofei Tian, tianz3@mcmaster.ca
    Jingjing Huang, huangj25@mcmaster.ca


    Term I, 2012-2013
    C01 Mo, We 11:30-12:20 and Fr 13:30-14:20, ITB/AB102
    T01 We 15:30-16:20, BSB/137 T02 Fr 09:30-10:20, BSB/137

    Calendar Decription

    Computer arithmetic, stability, sensitivity. Numerical methods for polynomial manipulation, interpolation, data fitting, integration, differentiation, solving linear and non-linear systems, ordinary differential equations and eigenvalue problems.
    Prerequisites MATH 1ZB3 and 1ZC3; or MATH 1ZZ5; or both MATH 1AA3 and 1BO3; or both MATH 1H03 and 1NN3
    Antirequisites COM ENG 3SK3, 3SK4, COM SCI 4MN3
    Cross-list: COMP SCI 4X03

    Course Objectives

    By the end of this course students will be able to understand the issues in floating-point computing

    have good knowledge of basic computer methods for solving mathematical problems in engineering and science

    learn basic techniques in numerical software


    Floating-point numbers and computer errors;

    Methods for solving systems of linear equations;

    Data fitting methods;

    Numerical quadrature;

    Numerical methods for ordinary differential equations;

    Continuous optimization and simulation methods.

    Eigenvalue and singular value decompositions and their applications.

    Evaluation Scheme

    four written and programming assignments, 28%
    midterm examination, 50 min. (closed book), 20%
    final examination, two hours (open book), 52%


    No required textbook. Course materials are available on the course web page.


    Only the McMaster Standard calculator will be permitted in tests and examinations. This is available at the McMaster Bookstore.

    Academic Dishonesty

    You are expected to exhibit honesty and use ethical behaviour in all aspects of the learning process. Academic credentials you earn are rooted in principles of honesty and academic integrity.

    Academic dishonesty is to knowingly act or fail to act in a way that results or could result in unearned academic credit or advantage. This behaviour can result in serious consequences, e.g. the grade of zero on an assignment, loss of credit with a notation on the transcript (notation reads: "Grade of F assigned for academic dishonesty"), and/or suspension or expulsion from the university.

    It is your responsibility to understand what constitutes academic dishonesty. For information on the various types academic dishonesty please refer to the Academic Integrity Policy, located at

    The following illustrates only three forms of academic dishonesty:

    Plagiarism, e.g. the submission if work that is not one's own or for which other credits has been obtained.
    Improper collaboration in group work.
    Copying or using unauthorized aids in tests and examinations.

    In case of discrepancy between the online and handout version of the course outline, the handout version shall be taken as correct.

    Faculty Notices

    "The Faculty of Engineering is concerned with ensuring an environment that is free of all discrimination. If there is a problem, individuals are reminded that they should contact the Department Chair, the Sexual Harrassment Officer or the Human Rights Consultant, as the problem occurs."

    Course Material

    MATLAB Primer (pdf)

    MATLAB Programming Style Guideline (pdf)


    References at the end of each chapter


  • Week 1: Introduction (intro.pdf)
  • Weeks 2-3: Floating-point Arithmetic (ch01.pdf)
  • Weeks 4-5: Solving Linear Systems (ch02.pdf)
    decomp.m (MATLAB), decomp.m (Octave), solve.m (MATLAB), solve.m (Octave)
  • Weeks 6-7: Interpolation (ch03.pdf)
    ncspline.m, decompt.m, solvet.m, locate.m, seval.m
  • Week 8-9: Numerical Integration (ch04.pdf)
    QUADR.m, quadrr.m
  • Week 10-11: Solving Ordinary Differential Equations (ch05.pdf)
  • Week 12-13: Solving Nonlinear Equations and continuous optimization (ch06.pdf)
    Inverted Pendulum Presentation by Filip Jeremic
  • Tutorials

  • Intro to MATLAB
  • October 12
  • Adaptive Quadrature
  • Cubic Spline
  • Taylor Expansion
  • Midterm, Oct. 17, Wednesday, 11:30-12:20, T29 101 (last name A to K), T29 105 (last name L to Z)

    2012-2013 (midterm)

    Final, Dec. 18, Tuesday, 19:30-21:30, IWC 1 (3, 4, 5, 6)
    Open book and notes, no electronics

    Office hours: Dec. 17, 14:30-16:30, ITB 222
    Final Review
    2012-2013 final


  • octave can be downloaded from www.gnu.org/software/octave
  • Assignment Mechanics
  • Assignment 1, due 9/24, Monday, 11:30.
    TA: Huang, Jingjing (huangj25@mcmaster.ca)
    Solution 1
  • Assignment 2, due 10/15, Monday, 11:30.
    TA: Tian, Zhaofei (tianz3@mcmaster.ca)
    Solution 2
    decomt.m, solvet.m, testerrors.m, invert.m
  • Assignment 3, due 11/19, Monday, 11:30.
    TA: Huang, Jingjing (huangj25@mcmaster.ca)
    Solution 3
    QUADRm.m, quadrrm.m, QUADS.m, quadsr.m
  • Assignment 4, due 12/3, Monday, 11:30.
    TA: Tian, Zhaofei (tianz3@mcmaster.ca)
    pendulum.m, InvPend.m
  • Marks

    Back to S. Qiao's home page