ECE 697NA / MATH 697NA - Numerical Algorithms (Spring 2017)

Professor Eric Polizzi


    Class Hours: Tue-Thu 2:30pm-3:45pm LGRT 177

    Office Hours: Tue 1:30-2:20pm and Thu-4:5pm in Marcus 201C
Syllabus
Introduction


Schedule

schedule


H O M E W O R K


Homework Instructions
HW1 [PDF solution] [hw1.f90] solution [hw1_2d.f90] solution
HW2 [PDF solution] [hw2.f90] solution
HW3 [PDF solution] [hw3.f90] solution
HW4 [hw4.f90] solution
HW5 [hw5.f90] solution

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

Code Examples - Fortran [zip]
Linux [Quick][Tutorial]
Fortran references[Quick] [Fortran vs C]
BLAS routines [Quick reference]
LAPACK routines[Users' guide] [More info]
Gnuplot[Tutorial]
Templates Algo. [Templates]
IDRIS-MPI [Class Notes]
IDRIS-OpenMP [Class Notes]
List of free linear algebra package [Link]
Code Examples - MPI [zip] and OpenMP [zip]

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 (complement)-
    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
    feast
V- Introduction to Parallel Programming
VI- Numerical parallel algorithms