|
Instructor: |
Mark Iwen |
|
Time and Place: |
TuTh 03:05 PM - 04:20 PM in
Physics 205 |
|
E-mail: |
markiwen@math.duke.edu |
|
Office: |
Physics 015 |
|
Office Phone: |
(919) 660-2871 |
|
Office Hours: |
Tuesday and Wednesday from 2:00 PM until 3:00 PM. |
| Course Information: | Syllabus |
| The Book: | Numerical Analysis: Mathematics of Scientific Computing, Third Edition, by David Kincaid and Ward Cheney, American Mathematical Society, 2009. ISBN: 9780821847886 |
| ~ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| LaTeX Report Template: | See these zipped files. Both a .tex file and the resulting .pdf file are included.
|
| LaTeX Presentation Template: | See these zipped files. Both a .tex file and the resulting .pdf file are included.
|
| Power Point Template: | See these zipped files.
|
| Free LaTeX Compilers: | These programs compile .tex files into .pdf files. I recommend MiKTeX for windows, and MacTeX for Macs. |
| ~ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| Matlab Tutorials: | Basic commands and plotting instructions are here. |
| Instructions on loading numerical data files into Matlab are here. | |
| C Programming: | A C tutorial for beginners is here. |
| A catalog of available commands can be found here. | |
| A collection of example C codes is here. |
| Class Date |
Sections Covered |
Homework Assigned |
Homework Due |
| Thu, Jan 10 | 1.1 & 1.2 | --Page 13: 8, 25 --Page 24: 3 |
Thu, Jan 24 |
| Tue, Jan 15 | C and Matlab Introduction |
--Download TaylorExample.zip and then modify it to approximate cos(exp(2*x)). You should graph its first, second, and third degree Taylor polynomial approximations (based at 0) over (-.5,.5) with the Matlab script. Then, use the C code to recompute its third degree Taylor polynomial and check to make sure that it coincides with the answer from Matlab as done in class. Turn in both of your pictures and your modified code. |
Thu, Jan 24 |
| Thu, Jan 17 | 2.1 | --Page 52: 2, 3, 16 | Thu, Jan 24 |
| Tue, Jan 22 | 2.2, 2.3, & 3.1 | --Page 62: 6. Do the addition in a C program. Single precision in C is given by type 'float'. Double precision in C is given by type 'double'. Turn in your code along with a short discussion of your results. Which addition was most accurate? |
Thu, Jan 24 |
| Thu, Jan 24 | 3.1, 3.2, & 3.3 HW #1 DUE! |
--Page 81: 4. Program the bisection method in C and then use your code to find the root. Use 'double' variables for all non integers. Turn in your code along with a short discussion of your results. How much does the root move? --Page 90: 4. You can assume that the zero is simple, and that f is C2([a,b]). |
Thu, Feb 7 |
| Tue, Jan 29 | 3.3 & 3.4 | --Page 106: 13, 20 | Thu, Feb 7 |
| Thu, Jan 31 | 6.1 | --Page 325: 2, 22 | Thu, Feb 7 |
| Tue, Feb 5 | 6.1 & 6.2 | --Page 336: 5, 22, 23 | Thu, Feb 7 |
| Thu, Feb 7 | 6.3 & 6.4 HW #2 DUE! |
--Page 348: 1, 2, 3 | Thu, Feb 21 |
| Tue, Feb 12 | 6.4 | --Page 361: 9, 19 | Thu, Feb 21 |
| Thu, Feb 14 | 6.12 | --Page 450: 5 | Thu, Feb 21 |
| Tue, Feb 19 | 6.12 & 6.13 | --Page 459: Use C to implement a recursive FFT. Test it against the direct method on cos(1234*x), N = 32768, to verify the FFT is faster. NOTE: You can use "time'' at the unix prompt to see how long a program takes. For example, typing "time a.out'' will run a.out and then tell you how long it took. Report user time. |
Thu, Mar 7 |
| Thu, Feb 21 | Midterm Exam HW #3 DUE! |
Midterm Exam | Thu, Feb 21 |
| Tue, Feb 26 | 6.13 | --Decide on your Final Project. You need to submit your proposed idea to me in writing as a HW problem. If you choose your own project, you must both detail the book sections it will utilize and come to my office hours to explain the project orally before the due date. If you pick a group project, you must form your team and list its members before the due date. |
Thu, Mar 7 |
| Thu, Feb 28 | 7.1 | --Page 476: 3, 7 | Thu, Mar 7 |
| Tue, Mar 5 | 7.2 | --Page 488: 2, 9 | Thu, Mar 7 |
| Thu, Mar 7 | 7.3 HW #4 DUE! |
--Page 498: 1, 7a | Thu, Mar 28 |
| Fri, Mar 8 -- Sun, Mar 17 |
Spring Break | Spring Break | Spring Break |
| Tue, Mar 19 | 8.1 & 8.2 | --Page 527: 1, 3 --Phase I of Group Project (see e-mail sent Mar 18) |
Thu, Mar 28 |
| Thu, Mar 21 | 8.3 | --Page 547: 1. Program in either C or Matlab (your choice). Plot the error between the numerical and analytic solution. Check that the analytic solution is given by x(t) = 12 exp(t) / (1 + exp(t) )^2. |
Thu, Mar 28 |
| Tue, Mar 26 | 8.6 | --Page 570: 4 --Phase I of Group Project! |
Thu, Mar 28 |
| Thu, Mar 28 | 8.7 & 8.8 HW #5 DUE! |
--Page 587: 1 --Phase II of Group Project (see e-mail sent Mar 29) |
Thu, Apr 11 |
| Tue, Apr 2 | 10.1 | --Page 688: 3, 10 (Justify your answer with a proof.) | Thu, Apr 11 |
| Thu, Apr 4 | 10.1 & 10.3 | --Keep working on Phase II!!! | Thu, Apr 11 |
| Tue, Apr 9 | 10.2 & 10.3 | --Page 700: 1(b), 2 | Thu, Apr 11 |
| Thu, Apr 11 | 10.4 HW #6 DUE! |
--Page 710: 1, 2 --Finish your presentations and send me all the slides in a *.zip file. |
Thu, Apr 23 |
| Tue, Apr 16 | 10.4 | --Page 710: 6 | Thu, Apr 23 |
| Thu, Apr 18 | Presentations | --Group Presentations of Final Projects | Thu, Apr 18 |
| Tue, Apr 23 | Presentations HW #7 DUE! |
--Group Presentations of Final Projects | Tue, Apr 23 |
| Mon, Apr 29 9 AM - NOON |
FINAL EXAM & FINAL PROJECT |
--FINAL EXAM --FINAL PROJECT DUE BY 9 AM. I suggest handing it in earlier, however! |
Mon, Apr 29 9 AM - NOON |