Section A Section B MWThF 2:20-3:20
Online Video Lectures
- Thursday classes are self-study hours for the video lectures and lab assistance:
- Instructional Computing Lab with Matlab Access (Communications Bldg B027)
- Thursday 1 pm– 4 pm
- Email should be your last avenue for assistance.
- Meet with the instructors and teaching assistants in the class and lab hours and raise your questions about the video lectures and homework problems.
- Questions may also be posted on the Discussion Board.
- DO NOT discuss homework solutions on the discussion board. Only general questions about the videos, lectures, course materials, and clarifications about the homework problems are allowed.
- This course will provide an introduction to the use of computers to solve problems arising in the physical, biological, and engineering sciences. Various computational approaches 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 demonstrated. The student will gain mathematical judgement in selecting tools to solve scientific problems through in-class 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. Although the subject matter of Scientific Computing has many aspects that can be made rather difficult, the material in this course is an introduction to the field and will be presented in a simple as possible way. Theoretical aspects will be mentioned throughout the course, but more complicated issues such as proofs of relevant theorems/schemes will not be presented. Applications will be emphasized.
- The lectures have been flipped and are available on an open website, allowing to learn at their own pace, pausing and reviewing as necessary.
- Prerequisites: Differential and Integral Calculus, MATH 124 and 125 or equivalent.
- Online Video Lectures
Supplementary videos may be found in different weeks.
Students are required to watch the video lectures before attending the Wednesday classes.
- Canvas Website (access restricted to registered students)
- Piazza Discussion Board (Default login is (UW NetID)@uw.edu)
- Scorelator: Online Homework Submission/Grading System go / instructions / M-file example / Troubleshooting
- MATLAB and Simulink Student Suite (Recommended if you do not have access) UW IT-connect Official Website
- Instructional Computing Lab with Matlab Access (Communications Bldg B027) view
Textbook "Data-driven modeling and scientific computation" by Prof. Kutz
(NOTE: All author proceeds are forfeited to the Department of Applied Mathematics, University of Washington)
Courseworks and Key Dates
- Homeworks (Biweekly) (60% of total grade)
- Mid-Term Exams (20% of total grade)
- Friday, July 15th, 2016
- Friday, August 5th, 2016
- Final Exam (20% of total grade)
- Friday, August 19th, 2016
- Mr. Alexander Hornof website
Lectures: Monday/Wednesday classes
- Mr. Xin Yang website
Lectures: Friday classes
Week 1 Basics of MATLAB and Introduction
- Video Lectures 1–3
- Constructing matrices/vectors (text 1.1)
- for and if statements (text 1.2)
- Inputing/Exporting/Plotting data (text 1.5)
- Matlab function fzero
Week 2 Linear Algebra and Direct Solutions of Ax=b
- Video Lectures 4–6
- Matrix manipulations (notes)
- Gaussian elimination (text 2.1)
- LU decomposition lu (text 2.1)
- The "blackslash" command x=A\b.
Week 3 Iterative Methods for Ax=b when A is large and sparse
- Video Lectures 7–9
- Jacobi iteration (text 2.2, notes, L07_testJacobiFAILS.m, L07_testJacobiWORKS.m)
- eigenvalues and eigenvectors eig (text 2.4, notes)
- Jacobi and Gauss-Seidel iteration (text 2.2, notes, L09_testEigJacobi.m, L09_testGaussSeidelNaive.m, L09_testGaussSeidelFast.m, Jacobi.m, GaussSeidel.m)
Week 4 Interpolation and Curve Fitting of Empirical Data
- Video Lectures 10–12
- Least squares (text 3.1)
- Interpolation and polynomial fitting (text 3.2)
- Data fitting in Matlab (text 3.3)
- interp1, spline, and polyfit
Week 5 Optimization
- Video Lectures 13–15
- Unconstrained optimzation: Golden Search and fminsearch (text 5.1, 5.2)
- Linear programming (text 5.3)
- Genetic algorithms (text 5.5)
- linprog and ga (genetic_demo.m)
Week 6 Numerical Differentiation and Integration for Functions and Data
- Video Lectures 16–18
- Forward/Backward/Central differences approximations and error estimation.
(text 4.1, 4.3, notes, TaylorSeries.m, FiniteDifference.m)
- High-order derivative. Left-/Right-rectangle rule for integration. (text 4.2, 4.3, notes, numdiffc.m)
- Trapezoid and Simpson's rule and errors.
Integrating particle in vector field.
(text 4.2, 4.3, notes, numintc.m)
Week 7 Introduction to Differential Equations
- Video Lectures 19–21
- Forward and backward Euler integration. Spring-mass-damper system.
(text 7.1, 7.2, notes, L19_SpringMassDamper.m)
- Error analysis and stability. Example: damped pendulum.
(text 7.1, 7.2, notes, L20_simpend.m, pend.m)
- 2nd- and 4th-order Runge-Kutta method. (text 7.1, 7.2, notes)
Week 8 Advanced Differential Equations
- Video Lectures 22–24
- Write our own RK4 timestepper and compare with ode45 on the Lorenz equation.
(notes, L22_simulateLORENZ.m, rk4singlestep.m, lorenz.m)
- Integrate a cube of points through Lorenz. Vectorize integrator (100-1000X speed-up). Sensitivity and chaos. (notes, rk4singlestep.m, lorenz3D.m, L23_simLorenzSLOW.m, L23_simLorenzFAST.m)
- Chaos. Examples: double pendulum, three-body problem, Lorenz. Symplectic and variational integration. (notes, double pendulum notes, variational.cc, rungekutta78.cc, doublegyreVEC.m, integrateDGgood.m)
Week 9 The Singular Value Decomposition
Transforming a matrix of data into coordinates that emphasize the dominant features
Week 10 Fast Fourier Transforms
MATLAB on/off campus
- Some departments may provide Matlab access to their students. Please check with your department.
- There is MATLAB access at the Instructional Computing Lab in the Communications Building.
- MATLAB and Simulink Student Suite can be purchased from the University Bookstore or online Mathworks.com for a permanent student copy for $99. UW also offer a time-limited student copy for $30.
- Some add-on products for image processing will be used in this course.
- Homework will be submitted and graded on-line through a system called Scorelator. Instructions
- LATE HOMEWORK WILL NOT BE ACCEPTED.
IMPORTANCE: 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 soon as possible.
- You have up to 5 attempts per homework to get everything correct. If everything is correct the first time a homework is submitted, you will receive a 100% for that homework. If something is not correct, then you may fix it and resubmit. Your best score for each homework will be your recorded grade (i.e. there is no penalty for correcting and resubmitting).
- An Anti-Cheat system is enforced to compare your code against the codes of others in your section and other sections, and all past years.
- Scorelator must be accessed through Firefox or Internet Explorer (NOT Safari or Chrome). Additionally, Scorelator CANNOT be accessed on the ASLAB terminal server.
- The instructor will register your UW NetID to Scorelator after the first week 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 login information will be sent to you UW email box. Be sure to check if any emails entitled "Scorelator" are filtered/spammed.
- 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 containgin 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, send your instructor an email and he/she will add you to the system.
- Scorelator has become an open source, free program since January 1, 2015.
- DO NOT send any e-mails from Scorelator. Talk to your instructor and TAs for any questions.