forked from tgteacher/numerical-methods
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathoutline.html
More file actions
302 lines (289 loc) · 13.3 KB
/
outline.html
File metadata and controls
302 lines (289 loc) · 13.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<title>Elementary Numerical Methods</title>
<link rel="stylesheet" href="outline_files/styles.css">
<link rel="stylesheet" href="outline_files/github-light.css">
<script src="outline_files/scale.js"></script><style>@media print {#ghostery-purple-box {display:none !important}}</style>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<div class="wrapper">
<header>
<h1 class="header">Outline</h1>
<p>
<a href="#instructors">Instructors</a><br>
<a href="#lectures">Lectures & Tutorials</a><br>
<a href="#objectives">Objective</a><br>
<a href="#outline">Outline</a><br>
<a href="#prerequisites">Prerequisites</a><br>
<a href="#material">Course material</a><br>
<a href="#communication">Communication</a><br>
<a href="#schedule">Tentative schedule</a><br>
<a href="#books">Textbook</a><br>
<a href="#evaluation">Evaluation</a><br>
<a href="#integrity">Academic Integrity</a><br>
<a href="#attributes">CEAB Graduate Attributes</a><br>
</p>
</header>
<section>
<h1>Course Outline, Fall 2018<br>
Elementary Numerical Methods <br> COMP 361/5611
</h1>
<p>
Adapted from E. Doedel's <a href="https://users.encs.concordia.ca/~doedel/courses/comp-361/course_outline.pdf">course outline</a>.
</p>
<p>
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.
</p>
<h2>
<a id="instructors" class="anchor" href="#instructors" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Instructors
</h2>
<p><strong>Coordinator:</strong> Dr. Tristan Glatard<br>
Office: EV 6.225<br>
e-mail: <a href="mailto:tristan.glatard@concordia.ca">tristan.glatard@concordia.ca</a><br>
Office hours: Monday 1pm-2pm.<br>
</p>
<p>
<strong>Teaching Assistant:</strong>
Timothée Guédon<br/>
e-mail: <a href="mailto:t_guedon@encs.concordia.ca">t_guedon@encs.concordia.ca<br/>
</p>
<h2>
<a id="lectures" class="anchor" href="#lectures" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Lectures & Tutorials
</h2>
<ul>
<li>Lectures: Friday 5:45PM - 8:15PM at H 411 SGW.</li>
<li>Tutorials:<ol>
<li>Friday 4:15PM - 5:45PM at H 429 SGW.</li>
<li>Friday 8:30PM - 9:20PM at H 411 SGW.</li>
</ol>
</ul>
<h2>
<a id="objectives" class="anchor" href="#objectives" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Objective
</h2>
<p>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.</p>
<h2>
<a id="outline" class="anchor" href="#outline aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Outline
</h2>
The following topics are covered: Vector and matrix norms, Gauss
elimination, LU-decomposition, row-pivoting, condition number,
residual correction, non-linear equations, iterative methods,
Newton's method, convergence analysis, polynomial interpolation,
numerical differentiation, best approximation, orthogonal
polynomials, numerical integration, Gauss quadrature, and (time
permitting) spline interpolation, discrete least squares, numerical
solution of ODEs, stability of difference methods, stiff ODEs,
boundary value problems for ODEs, and numerical solution of PDEs
(diffusion problems).
<h2>
<a id="prerequisites" class="anchor" href="#prerequisites aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Prerequisites
</h2>
COMP232 and COMP249. Knowledge of linear algebra (vectors a
nd matrices) and calculus (derivatives
and integrals) is essential.
<h2>
<a id="material" class="anchor" href="#material aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Course material
</h2>
<p>
The course material consists of Jupyter notebooks available through
GitHub at <a
href="https://github.com/tgteacher-fall-2019/numerical-methods">https://github.com/tgteacher-fall-2019/numerical-methods</a>.
The repository also contains tutorials and previous exams.
</p>
<p>
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.
</p>
<h2>
<a id="communication" class="anchor" href="#communication aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Communication
</h2>
<p>
Important information will be communicated through Moodle and/or Slack.
Students are expected to consult these channels regularly.
<ul>
<li><a href="https://moodle.concordia.ca/moodle/course/view.php?id=117217">Moodle page</a></li>
<li><a href="https://tgteacher.slack.com/messages">Slack workspace</a> (join channel #numerical-methods--fall-2019)</li>
</ul>
</p>
<h2>
<a id="schedule" class="anchor" href="#schedule" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Tentative schedule
</h2>
<table>
<tbody><tr><th>Date </th> <th>Lecture </th> <th> Assignments </th></tr>
<tr><td>Sep 6</td> <td>Introduction to Python (Ch 1) <br/> Systems of Linear Algebraic Equations #1 (Ch 2) </td> <td> </td></tr>
<tr><td>Sep 13</td> <td>Systems of Linear Algebraic Equations #2 (Ch 2)</td> <td></td></tr>
<tr><td>Sep 20</td> <td>Interpolation and Curve Fitting (Ch 3)</td> <td></td></tr>
<tr><td>Sep 27</td> <td>Roots of Equations #1 (Ch 4)</td> <td></td></tr>
<tr><td>Oct 4</td> <td>Roots of Equations #2 (Ch 4)</td> <td><strong>A1</strong></td></tr>
<tr><td>Oct 11</td> <td>Numerical Differentiation (Ch 5)</td> <td></td></tr>
<tr><td>Oct 18</td> <td><strong>Test #1</strong></td> <td></td></tr>
<tr><td>Oct 25</td> <td>Numerical Integration (Ch 6)</td> <td></td></tr>
<tr><td>Nov 1</td> <td>Initial Value Problems (Ch 7)</td> <td></td></tr>
<tr><td>Nov 8</td> <td>Two-Point Boundary value Problems (Ch 8)</td> <td><strong>A2</strong></td></tr>
<tr><td>Nov 15</td> <td>Recap #1 (Ch 2, 3, 4)</td> <td></td></tr>
<tr><td>Nov 22</td> <td>Recap #2 (Ch 5, 6, 7, 8)</td> <td></td></tr>
<tr><td>Nov 29</td> <td><strong>Test #2</strong></td> <td><strong>A3</strong></td></tr>
<tr><td><strong>TBA</strong></td><td colspan="2"><center><strong>Final exam</strong></center></td>
</tbody></table>
<h2>
<a id="books" class="anchor" href="#books" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Textbook
</h2>
<p>Jaan Kiusalaas. Numerical methods in engineering with Python 3. Cambridge university press, 2013.<br/>
<img src="images/book.jpg" alt="cover"/>
</p>
<a href="https://0-ebookcentral-proquest-com.mercury.concordia.ca/lib/concordia-ebooks/detail.action?docID=1099957">Available as eBook</a> at Concordia Library.
<h2>
<a id="evaluation" class="anchor" href="#evaluation" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Course Evaluation
</h2>
<p>
<strong>Assignments (10%)</strong>: There will be 3 programming
assignments. You must
work on these assignments <strong>individually</strong>. The
assignments are all due on the date of the lecture (Friday), 11:55pm (see exact
dates on the <a href="#schedule">schedule</a> table). A grace
period of 48 hours will be automatically
granted with no penalty (assignments will be accepted until Sunday night,
11:55pm), but <strong>no further extension will be
granted</strong>. Assignments must be submitted through
GitHub Classroom, you will receive a link for each assignment.
</p>
<p>
<strong>Tests and Final exam (90%)</strong>: The tests and final exam are
closed-book exams and will be conducted on the dates
indicated on the <a href="#schedule">schedule</a> table. In general, you will need to bring
your own ENCS calculator. There will be no substitution
for a missed test or exam.
<p>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.
</p>
<p>
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.
</p>
<p>
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
</p>
<p>
Note that there is no standard relationship between numeric percentages and letter grades.
</p>
<h2>
<a id="integrity" class="anchor" href="#integrity" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
Academic Integrity
</h2>
Violation of the Academic Code of Conduct in any form will be
severely dealt with. This includes copying (even with modifications)
of program segments. You must demonstrate independent thought through
your submitted work. Click on the following link for more
information: <a href="http://www.concordia.ca/students/academic-integrity.html" target="_blank">http://www.concordia.ca/students/academic-integrity.html</a>.
<h2>
<a id="attributes" class="anchor" href="#attributes" aria-hidden="true">
<span aria-hidden="true" class="octicon octicon-link">
</span></a>
CEAB Graduate Attributes </h2>
<p></p>
As part of either the Computer Science or Software Engineering program
curriculum, the content of this course includes material and exercises
related to the teaching and evaluation of graduate attributes. Graduate
attributes are skills that have been identified by the Canadian
Engineering Accreditation Board (CEAB) and the Canadian Information
Processing Society (CIPS) as being central to the formation of
Engineers, Computer Scientists and Information Technology
professionals. As such, the accreditation criteria for the Software
Engineering and Computer Science programmes dictate that graduate
attributes are taught and evaluated as part of the courses. The
following is the list of graduate attributes covered in this course,
along with a descript ion of how these attributes are incorporated in
the course.
</p>
<p>
Graduate attributes for COMP361 are:
</p>
<p>
Attribute 1: Knowledge-base: Knowledge of a wide array of fundamental
numerical methods used in Science and Engineering, as stated in the
course description.
</p>
<p>
Indicator 1.1: Knowledge base of mathematics
</p>
<p>
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.
</p>
<p>
Indicator 2.1: Problem identification and formulation
</p>
<h3>Course Learning Objectives</h3>
<p>
Introduce the students to basic numerical techniques that are
fundamental to Scientific and Engineering computing.
</p>
<p>
Make the students aware of the complexity and the limitations of
numerical algorithms.
</p>
<p>
Teach the students basic concepts and analytical techniques that allow
the determination of key properties of numerical algorithms.
</p>
<p>
Prepare the students for more advanced courses in Scientific and
Engineering computing.
</p>
</section>
</div></body></html>