CMSC 660 Scientific Computing I

posted in: Fall2014, Graduate | 0

Prof. Ramani Duraiswami provides a fundamental class towards numeric / scientific computing using Matlab. Overall, this class is a very good introductory class towards Matlab and optimization. The class might be less challenging if you already master all the techniques.


My final project paper (as a case study chapter of the book).




Link to my homework solution is here with password-protected.

Please comment with reasonable reason or drop me a line if you need the access.

Insights from Homework

  • Direct matrix vector product through Matlab call uses native C code and row-oriented vector. The for loop inside the C code is optimized for better performace.
  • According to IEEE-754 (double precision), the machine epsilon is $2^{-52}$, so the numbers in the range $1+2^{-53} \leq x < 1 + (2^{-52} + 2^{-53})$ might be rounded to $1+2^{-52}$. The exponent $e$ satisfies $-1022 \leq e \leq 1023$. The realmin in Matlab is $2^{-1022}$. However, it is possible to have values lower than realmin. The smallest positive subnormal number is $2^{-52} \times 2^{-1022} = 2^{-1074}$
  • Matrix decomposition via Gaussian Elimination. $LU = PA$ is $O(n^3)$. P is a Permutation Matrix, which rearranges a system of equations and changes the order; L is a lower triangular matrix and U is a upper triangular matrix
  • Condition Number of a Matrix is a measure of how close a matrix is to singular. cond(singular matrix) = $\infty$.
  • Gram Schmidt performs a QR decomposition. Key idea in Gram-Schmidt is to subtract from every new vector.
  • Orthogonal matrices are square matrices that have their columns orthonormal to each other.
  • Solve $Ax = b$, let $L[Ux] = Pb$ 
  • Modified Gram Schmidt algorithm for computing QR decomposition.
  • Determinant of a square matrix can be computed using the LU decomposition
  • The inverse of a matrix A can be defined as the matrix X whose columns $x_j$ solve the equations $Ax_j = e_j$
  • Householder Reflection
  • Fitting the data
  • Line fitting Problem
  • RRQR algorithm. 
  • Matrix Approximation
  • Ordinary Differential Equations
    • The initial value problem for an ordinary differential equation involves finding a function y(t) that satisfies $\frac{dy(t)}{dt} = f(t, y(t))$ together with the initial condition $y(t_0) = y_0$
    • Euler’s method could solve it by a fixed step size $h$
    • BS23 (Bogacki and Shampine) algorithm is a simplified version of Matlab’s ode23
    • Lorenz chaotic attractor was first described in 1963 by Edward Lorenz
    • A problem is stiff if the solution being sought varies slowly, but there are nearby solutions that vary rapidly, so the numerical method must take small steps to obtain satisfactory results.

  • Optimization



  1. O’Leary, dianne P. Scientific computing with case studies. SIAM, 2009.
  2. Cleve Moler. Floating Points. IEEE standard model.
  3. Andrew Davis. ISEQUALFP: Check equality within floating point precision, 2012.–check-equality-within-floating-point-precision

Leave a Reply

Your email address will not be published. Required fields are marked *