ECS 231, Spring 2019
Large Scale Scientific Computing


Announcements
Instructor:
Zhaojun Bai
3005 Kemper Hall
zbai at ucdavis.edu

Lecture:
Tuesdays and Thursdays, 4:40pm - 6:00pm
107 Cruess

Office Hours (subject to change):
Tuesdays: 9:00-10:00am
Wednesdays: 4:00-5:30pm
Thursdays: 9:00-10:00am

Description
Numerical algorithms and techniques for large-scale scientific computation in science and engineering, including high performance computing kernels, iterative methods, fast solvers and applications.

Goals of the Course
To learn about concepts and general techniques that are essential for modern methods, and to be able to apply them in a particular domain of large-scale scientific computation.

Syllabus
  1. Mathematics review
  2. Preliminaries: approximation and error analysis, floating-point arithmetic, HPC kernels (BLAS) and vector-matrix norms
  3. Essential matrix decompositions, such as spectral decomposition and singular value decomposition (SVD)
  4. Iterative methods
  5. Gradient methods
  6. Fast solvers
  7. Applications such as graph partition and data clustering

Textbook

Prerequisite
ECS130 or consent of instructor. A solid knowledge of undergraduate linear algebra, and some experience with writing computer programs, such as Matlab, Julia, C and/or Fortran.

Assignments and Grading:
  • Homeworks: 50%
  • Exams/Projects: 50%

On-line Info:
Class annoucements and handouts will be available at the following sites:
http://www.cs.ucdavis.edu/~bai/ECS231/
http://canvas.ucdavis.edu

Lecture schedule, handouts and assignments

Date Topic Reading Assignment
4/2 Syllabus and Mathematics review Lecture note
Sec.1.1-1.3 of Solomon
...
4/4 Approximation and error analysis Lecture, Handout #1
Sec.2.2 of Solomon
...
4/9 Computer arithmetic Lecture, Handout #2, Extra
...
4/11 Intro to HPC (BLAS) Lecture Homework 1
4/16 Vector and matrix norms Handout #3, Extra ...
4/18 Frequently used matrix decomposition 1/2 Handout #4 Homework 2
4/23 Frequently used matrix decomposition 2/2 Extra ...
4/25 Iterative subspace methods for LS 1/2 Handout #5, Lecture ...
4/30 Iterative subspace methods for LS 2/2 Extra ...
5/2 Iterative subspace methods for EP 1/2 Handout #6 Homework 3
5/7 Iterative subspace methods for EP 2/2 ... ...
5/9 Spectral clustering Lecture code
5/14 Gradient descent algorithms Lecture testSD.m, testCG.m
test data 1, test data 2
5/16 Midterm Exam Handouts #1-#6 Homework #1-#3
5/21 Randomized algorithms 1/2 Lecture lsbysampling.m, lsbyrandprecond.m
lsbygd.m, lsbysgd.m
5/23 Randomized algorithms 2/2 Lecture randsvd.m, randsvd2.m, randcur.m
Extra office hours 5/24, Friday, 9-10
5/28, Tuesday, 10-11
...
5/28 PCA, revisted Lecture pca4ldc.m, pca4dr.m
data2D.mat
5/30 Fast algorithms 1/2 Handout ...
5/31 Extra office hour: 5:30 - 6:30 ... ...
6/4 Extended office hour: 8:30 - 10:30 ... ...
6/4 Fast algorithms 2/2 ... ...
6/5 Extended office hour: 4:00 - 6:30 ... ...
6/6 instruction ends
No lecture, office hours from 4:30-6:00
... Final project list
Report guideline
6/7 Final project report due 3:00pm no extension! ...

Online resources:

Comments and questions sent to bai at cs.ucdavis.edu.