## Professor Eric Polizzi

Class Hours: Tue-Thu 2:30pm-3:45pm ELAB 305

Office Hours: Wed 10:00am-11:30am in Marcus 201C
Syllabus
Short Introduction

 Schedule
 H O M E W O R K

HW1 and solution
HW2 and solution
HW3 and solution

 C O M P L E M E N T   and   R E F E R E N C E S

Linux [Quick][Tutorial]
Fortran references[Quick] [Fortran vs C]
BLAS routines [Quick reference]
LAPACK routines[Users' guide] [More info]
Gnuplot[Tutorial]
IDRIS-MPI [Class Notes]
IDRIS-OpenMP [Class Notes]

 C O N T E N T S

I- Introduction to Scientific Computing
• 1- Modeling process- 1D case study examples:
a- Electrostatics draft
b- Thermal Conduction draft
c- Quantum Transport draft
d- Confinement draft
• 2- Higher Dimensions- 2D example draft
• 3- Computing Framework Summary draft
a- numerical error; b- matrix computations
II- Basic numerical techniques of linear algebra and their applications
• 1- Background draft
a- vector; b-matrix; c-Subspace; d-non-singularity and inverses; e-types of square matrices;
• 2- Norms draft
a- vector norms; b- matrix norms; condition number;
• 3- Solving Linear systems
a- introduction; draft
b- Gaussian elimination and LU factorization draft
c- Failure of LU, d- Complement, e- Cholesky Factorization draft
• 4- Computational Primitives and Practices
a- BLAS, b- LAPACK, c- Programming practices draft
• 5- Linear Least-Squares Problems
a- introduction, b- solving the linear least-squares, c- QR factorization, d- Singular Value Decomposition, e- discussions draft
• 6- Eigenvalue Problems
a- introduction, b- Schur form and Jordan form, c- Eigendecomposition, d- computing the eigenvalue problem, e- QR algorithm, f- complements draft
III- Data formats and Practices draft
• 1- Data Structures
a- dense format, b-banded format, c- sparse format
• 2- Sparse Matrix Computations: Practices
a- Introduction, b- Solving linear systems in Computational Sciences, c- Sparse solvers
IV- Solving large sparse linear systems and eigenvalue problems
• 1- Introduction to iterative methods for linear systems
a- basics, b- Family of standard iterative methods, c- introduction to Preconditioning draft
• 2- Projection Methods
a- basics, b- steepest descent, c- conjugate gradient draft
• 3- Krylov Subspace Methods a- Overview, b- Arnoldi algorithm, c- GMRES, d- the symmetric case, e- Preconditioning and Practices draft
• 4- Large sparse eigenvalue problems
a- Intro, b- Arnoldi and Lanczos algorithms, c- Rayleigh-Ritz and Subspace Iterations draft
V- Introduction to Parallel Programming draft
• 1- Definitions
• 2- MPI basics
• 3- OpenMP basics
VI- Numerical parallel algorithms
• 1- SPIKE algorithm and solver
• 2- FEAST algorithm and solver