Course Description
 The course will provide an introduction to using computers to solve problems arising in the physical, biological, and engineering sciences. Various computational approaches that are commonly used to solve mathematical problems (including systems of linear equations, curve fitting, integration, and differential equations) will be presented. Both the theory and application of each numerical method will be explored with inclass examples and programming homework assignments.
 MATLAB will be used as the primary environment for numerical computation. An overview of MATLAB's syntax, code structure, and algorithms will be given. The material in this course is meant as an introduction to scientific computation and will be presented as simply as possible. Theoretical aspects will be mentioned throught the course, but more complicated issues such as proofs of relevant theorems/schemes will not be presented. Applications will be emphasized.
 The course consists of inclass lectures, video lectures, recitation sessions, and computational lab hours. Times and locations are found under the CALENDAR tab. A link to the video lectures, and supplementary material, is found under the RESOURCES tab.
 Prerequisites: Differential and Integral Calculus, MATH 124 and 125 or equivalent.
 Questions/concerns pertaining to nonsensitive issues that are emailed to either the Instructor or the Teaching Assistants will NOT be read (because of the large number of students). Instead, these should be brought up after lecture, during recitation, in the lab, or on the discussion board (link found under the RESOURCES tab).
 Students are encouraged to help each other to debug code. Copying, sharing, or distributing code, however, is not allowed and considered cheating. This policy is strictly enforced using plagiarism detection software. Students who violate this policy will be caught, receive zero points on the assignment, and referred to the Dean if necessary.
 50%  weekly progamming assignments (lowest score is dropped)
 10%  weekly video assignments (lowest score is dropped)
 20%  midterm exam (on 11/6)
 20%  final exam (on 12/11)
Online Media
 Video lectures, supplemental videos, and example code can all be accessed here.
 Some videos will be required by the instructor; however, all videos are designed to aid the students in this course
 The course uses a GoPost discussion board.
 Students are encouraged to post questions/concerns and to reply to those of other students.
 The board will be moderated by the instructor and TAs periodically MF from 9am until 5pm.
 Instructor: C. Vogl (cvogl@uw.edu)
 TA for Section A: L. Thompson (lfthomps@uw.edu)
 TA for Section B: A. Hornof (ahornof@uw.edu)
 TA for Section C: B. de Silva (bdesilva@uw.edu)
 MATLAB and Simulink Student Suite
 Textbook "Datadriven modeling and scientific computation" by Prof. Kutz
 available for purchase at the University Bookstore
 available for purchase on Amazon (NOTE: All author proceeds are forfeit to the Department of Applied Mathematics, University of Washington)
LATE ASSIGMENTS WILL NOT BE ACCEPTED.
Current Video Assignments
Current Video Assignments
 Lecture 3 from YouTube (from 4:00 on), due before lecture on 12/1
 HW9: hw9.pdf, linearODEs.mat, due before 10:00pm on 12/1
 Scorelator is used to collect and grade programming assignments (instructions).
 UW only has licenses for 40 simultaneous MATLAB users. On high volume time, especially when the homework is due, the terminal may be busy for hours and your submission will be queued. To avoid late submission due to traffic, you are strongly recommended to submit your assignment as early as possible.
 You have up to 5 attempts per homework to get everything correct. Your best score for each assignment will be your recorded grade (i.e. there is no penalty for correcting and resubmitting).
 Note:
 Scorelator must be accessed through Firefox or Internet Explorer (NOT Safari or Chrome). Additionally, Scorelator CANNOT be accessed on the ASLAB terminal server.
 Make sure to REFRESH your browser after uploading or deleting each file. This assures Scorelator is synced with the server.
 The instructor will register your UW NetID to Scorelator on the first day of class, given that you have registered the class before the beginning of the quarter.
 The default login name is (UW NetID)@uw.edu.
 An email containing a temporary password will be sent wherever the above account is forwarded to. Be sure to check if any emails entitled "Scorelator" are filtered/spammed.
 After logging in, make sure to change this temporary password using the "Edit Profile" link.
 If no email has been received, go to the Scorelator homepage, type in your UW email address and click on: "I forgot my password". Another email containing new login information will be sent.
 If you have registered after the beginning of the quarter and the procedure above does not work for you, post in the appropriate place on the discussion board in ordered to be added.
 Scorelator has become an open source, free program since January 1, 2015.
 Lecture 2 from Programming Basics: Basics & Simple Programming
 Lecture 3 from Programming Basics: Basics & Simple Programming
 Supplemental Video on "Using LU decomposition" from Linear Systems Ax=b
 Lecture 2 from Iteration Methods & Eigendecomposition (from min 11:50 until 29:50)
 Iteration Method Demo from Panopto Hosting Site
 Function Intro and fminsearch from Panopto Hosting Site
 Lecture 3 from Curve Fitting
 Lecture 3 from Optimization
 Lecture 1 from Integration & Differentiation (from 39:00 until 47:00)
 Lecture 3 from Integration & Differentiation (from 1:50 until 7:30, and 33:00 on)
 Lecture 1 from YouTube (from 15:00 on)
 Supplement: Using ODE45 and RungeKutta methods from YouTube
 HW0: hw0.pdf
 HW1: hw1.pdf, matrix.mat
 HW2: hw2.pdf, variables.mat
 HW3: hw3.pdf, magic.mat
 HW4: hw4.pdf
 HW5: hw5.pdf, data.txt
 HW6: hw6.pdf, data.mat
 HW7: hw7.pdf, pendulum.mat
 HW8: hw8.pdf
Course Calendar
Topics

Week 1 Basics & Simple Programming  Vectors and Matrices (text 1.1)
 Logic, Loops, and Iterations (text 1.2)
 Plotting/Importing/Exporting data (text 1.5)
 if, elseif, for, plot, save, load
Week 2 Week 3 Linear Systems (Ax=b)  Linear Systems of Equations
 Gaussian Elimination (text 2.1)
 LU decomposition (text 2.1)
 x=A\b, LU
Week 4 Iterative Methods for Ax=b when A is large and sparse  Jacobi iteration (text 2.2)
 eigenvalues and eigenvectors (text 2.4)
 Jacobi and GaussSeidel iteration (text 2.2)
 eig, eigs, diag, tril
Week 5 Interpolation and Curve Fitting of Empirical Data  Least squares (text 3.1)
 Interpolation and polynomial fitting (text 3.2)
 Data fitting in Matlab (text 3.3)
 polyfit, polyval, spline, interp1
Week 6 Optimization  Unconstrained optimzation (text 5.1, 5.2)
 Linear programming (text 5.3)
 Genetic algorithms (text 5.5)
 fminbnd, fminsearch, linprog, ga
Week 7 Numerical Differentiation and Integration for Functions and Data  Finite differences and errors (text 4.1, 4.3)
 Highorder and quadratures (text 4.2, 4.3)
 Trapezoid and Simpson's rules (text 4.2, 4.3)
 trapz, cumtrapz, quad
Week 8 Introduction to Differential Equations  Forward and backward Euler (text 7.1, 7.2)
 Error analysis and stability (text 7.1, 7.2)
 2nd order and Linear ODEs (text 7.1, 7.2)
 ode45
Week 9 The Singular Value Decomposition
 Theory and Implementation (text 15.1)
 Principal components analysis (text 15.3)
 Demo: eigenfaces (text 2.5)
 svd
Week 10 Fast Fourier Transforms  Discrete Fourier Transform (text 10.1, 13.1)
 Fast Fourier Transform (FFT) and filtering
 FFT and compression
 fft, ifft, fftshift, ifftshift