Instructors
Lectures & Tutorials
Objective
Outline
Prerequisites
Course material
Communication
Tentative schedule
Textbook
Evaluation
Academic Integrity
CEAB Graduate Attributes
Adapted from E. Doedel's course outline.
Please note: In the event of extraordinary circumstances beyond the University's control, the content and/or evaluation scheme in this course is subject to change.
Coordinator: Dr. Tristan Glatard
Office: EV 6.225
e-mail: tristan.glatard@concordia.ca
Office hours: Monday 1pm-2pm.
Teaching Assistant:
Timothée Guédon
e-mail: t_guedon@encs.concordia.ca
Numerical methods are important in Science and Engineering. Computer Scientists should have a basic understanding of such algorithms. The purpose of this course is to introduce some elements of Numerical Analysis that are fundamental to almost all scientific computations.
The course material consists of Jupyter notebooks available through GitHub at https://github.com/tgteacher/numerical-methods. The repository also contains tutorials and previous exams.
Students are expected to thoroughly understand the notebooks, and to be able to apply the material to simple problems. Students are responsible for all material covered during the lectures, even if the material does not appear in the posted notebooks.
Important information will be communicated through Moodle and/or Slack. Students are expected to consult these channels regularly.
Date | Lecture | Assignments |
---|---|---|
Sep 6 | Introduction to Python (Ch 1) Systems of Linear Algebraic Equations #1 (Ch 2) | |
Sep 13 | Systems of Linear Algebraic Equations #2 (Ch 2) | |
Sep 20 | Interpolation and Curve Fitting (Ch 3) | |
Sep 27 | Roots of Equations #1 (Ch 4) | |
Oct 4 | Roots of Equations #2 (Ch 4) | A1 |
Oct 11 | Numerical Differentiation (Ch 5) | |
Oct 18 | Test #1 | |
Oct 25 | Numerical Integration (Ch 6) | |
Nov 1 | Initial Value Problems (Ch 7) | |
Nov 8 | Two-Point Boundary value Problems (Ch 8) | A2 |
Nov 15 | Recap #1 (Ch 2, 3, 4) | |
Nov 22 | Recap #2 (Ch 5, 6, 7, 8) | |
Nov 29 | Test #2 | A3 |
Dec 13, 7pm-10pm |
Jaan Kiusalaas. Numerical methods in engineering with Python 3. Cambridge university press, 2013.
Assignments (10%): There will be 3 programming assignments. You must work on these assignments individually. The assignments are all due on the date of the lecture (Friday), 11:55pm (see exact dates on the schedule table). A grace period of 48 hours will be automatically granted with no penalty (assignments will be accepted until Sunday night, 11:55pm), but no further extension will be granted. Assignments must be submitted through GitHub Classroom, you will receive a link for each assignment.
Tests and Final exam (90%): The tests and final exam are closed-book exams and will be conducted on the dates indicated on the schedule table. In general, you will need to bring your own ENCS calculator. There will be no substitution for a missed test or exam.
Based upon the student's performance on both tests and the assignments, a provisional course letter grade will be assigned, based upon the following weighting scheme: Assignments: 10%, Test 1: 20%, Test 2: 70%. However, if the result of Test 2 is better than the result of Test 1 (as a percentage out of 100) then the weight of Test 1 will be shifted to Test 2.
Students are then given the option of accepting the provisional course letter grade, in which case they will not write the final exam, or not accepting the provisional course letter grade, in which case they must write the final exam. There will be a strict deadline for acceptance of the provisional course letter grade. If no acceptance is received by the deadline then the student must write the final exam.
If a student chooses to write the final exam then the course letter grade will be based on the following weighting scheme: Assignments: 10%, Test 1: 10%, Test 2: 20%, Final Exam: 60%. However, if the result of the Final Exam is better than the result of Test 1 (as a percentage out of 100) then the weight of Test 1 will be shifted to the Final Exam. Moreover, if the result of the Final Exam is better than the result of Test 2 (as a percentage out of 100) then the weight of Test 2 will be shifted to the Final Exam
Note that there is no standard relationship between numeric percentages and letter grades.
Graduate attributes for COMP361 are:
Attribute 1: Knowledge-base: Knowledge of a wide array of fundamental numerical methods used in Science and Engineering, as stated in the course description.
Indicator 1.1: Knowledge base of mathematics
Attribute 2: Problem analysis: Use a wide array of basic numerical methods to model and analyze complex problems in order to establish the requirements and constraints on their design, implementation and deployment solutions.
Indicator 2.1: Problem identification and formulation
Introduce the students to basic numerical techniques that are fundamental to Scientific and Engineering computing.
Make the students aware of the complexity and the limitations of numerical algorithms.
Teach the students basic concepts and analytical techniques that allow the determination of key properties of numerical algorithms.
Prepare the students for more advanced courses in Scientific and Engineering computing.