National Tsing Hua University
Department of Computer Science

Course Title: CS3330 :     Scientific Computing     Description      Index Number 

Credits: 3 (Fall, 2020)      

Classes: 14:20-17:20, W6,W7,W8, Wednesday at Taidar 104

Instructor: Chaur-Chin Chen

Tel/E-mail: (03) 573-1078 (O),     (03) 571 5131 (Exit 33557),     cchen@cs.nthu.edu.tw

Prerequisites: Calculus I, II ,   Linear Algebra ,   Probability Theory ,   C/C++, Data Structure ,   [Matlab]    

Contents:
1. Scientific Computing    
2. Solving Linear Systems of Equations: Ax=b    Perturbation Sensitivity
    Gaussian Elimination P.P.     G.E. with Partial Pivoting     Test data for G.E.P.P.
3. Linear Least Squares Problems       Polynomial Regression     dataGPA.txt     dataQua.txt     Visualization
4. Eigenvalue Problems: Ax=cx
     Givens Rotations for Computing Eigenvalues     Drive for Power method     Codes for Power method ;
5. Nonlinear Equations
    Examples by Matlab    Matlab plots
    Matlab Code for Fixed Point Demo;     Result;
6. Interpolation and Approximation      
    Error Analysis of Lagrange Polynomial Interpolation  
    Supplementaty Notes    Introduction to Image Analysis  
    Printing 2 images on a sheet    512x512 mandrill.raw    Licence Plate L2550.jpg   
    How to use raw2ps.c to print images     Program raw2ps.c    Show 2 images on a sheet    512x512 lenna.raw   
7. Fast Fourier Transform and Discrete Cosine Transform     C for FFT    C for 2D FFT     DFT and DCT Examples
    Matlab Example for 2d DCT     An 8x8 block from Lenna     Quantization Table     Greek letters
8. Cluster Analysis     Clustering Big Data (Video from YouTube by Prof. A.K. Jain, MSU)
9. Principal Component Analysis and Linear Discriminant Analysis     Multivariate Distributions    
    PCA and LDA (pdf)   ACEAT Paper   
      data8OX       dataIMOX       dataIRIS      
      Matlab Code for PCA    Matlab Function for PCA    Matlab Code for LDA    Mahalanobis distance    

*10. Bayes Decision for Machine Learning  
*11. Random Numbers and Simulation    
*12. Numerical Differentiation and Integration     Matlab Program for Richardson Extrapolation Algorithm
*13. Solving Problems by Using Matlab       Sine     Ln(x)     Solving Hx=1
      Characteristic Polybomial     Finding Median of ChiSquare     Solutions for Nonlinear Eqs

Textbooks:
Michael T. Heath , Scientific Computing: An Introductory Survey, 2nd ed., McGraw-Hill Companies, Inc. (2002)

References:
1. J.D. Faires and R.L Burden , Numerical Methods, Prentice-Hall (2003)
2. D. Hanselman and B. Littlefield, Mastering MatLab 8 (2012)
3. D. Kincaid and W. Cheney, Numerical Analysis, 3rd ed. Brooks/Cole (2002)
4. G. Recktenwald, Numerical Methods with Matlab, Prentice-Hall (2000)
5. T. Hastie, R. Tibshirani, and J. Friedman , The Elements of Statistical Learning: Data Mining, Inference, and Prediction (2001)

Grading:

(70%) Assignments and Class Attendance
  1. h1: Mathematical Preliminaries and Computer Arithmetic     Part of Solutions for h1
  2. h2: Solving Ax=b by Gaussian Elimination with Partial Pivoting     Part of Solutions for h2
        Matrix Data data1d.txt
        Gaussian Elimination without Partial Pivoting    Gaussian Elimination with Partial Pivoting   
  3. h3: Computing Eigenvalues/Eigenvectors
         Matrix T    Matrix B    Matrix A    Matrix C
        C Program for Computing Eigenvalues/Eigenvectors   Drive program for shiftedQR   shiftedQR Codes  
        shifted-QR code did not work    matrix that shifted-QR did not work
  4. h4: Solving Nonlinear Equations    
        Partial solutions
  5. h5: Curve Fitting by Cubic Spline, Bezier, and B-Spline Curves   
        Ruddy Duck Data    Matlab Code for Data duck.txt    Results for duck.txt
        Data dataEa    Matlab Code for dataEa.txt    Results of curve fitting and interpolation
        Data dataEb    Matlab code for dataEb.txt
  6. Project 1: Vector Quantization     Codebook Generation Program   
         lenna: 512x512    mandrill: 512x512    scene: 512x512    tiffany: 512x512
       jet: 512x512    peppers: 512x512    face 891538.raw: 128x128    face 892539.raw: 128x128
       psnr.c program (31.15 for the next two images)    lenna.raw: 512x512    lennaVQ.raw: 512x512

  7. Project 2: Data Visualization: PCA, LDA, Clustering Due By 11:59 Wednesday, January 6, 2021
       8OX Data    data30x4    53stdL3.txt (texture features)    texture images     
         Matlab Code of PCA    Matlab Code for PCP    Matlab Code of LDA    Mahalanobis distance   
      
(30%) Exams
  1. Exam    Solutions for Pages 1-2    Solutions for Pages 3-4   


Updated on December 23, 2020