18.085 - Computational Science and Engineering I (Spring 2012)

## COURSE DESCRIPTION

The goal of this course is to give you:

• practical experience with common computational methods in engineering, and
• enough theoretical understanding to know when those methods can go wrong

Review of linear algebra, applications to networks, structures, and estimation, finite difference and finite element solution of differential equations, Laplace's equation and potential flow, boundary-value problems, Fourier series, discrete Fourier transform, convolution. Frequent use of MATLAB in a wide range of scientific and engineering applications.

This class is suitable for masters students, advanced undergraduates, or anyone interested in building a foundation in computational science.

Prerequisites: Calculus and some linear algebra

Text Book: Computational Science and Engineering by Gilbert Strang

Grades: 50% problem sets, 50% three in-class quizzes. Lowest problem set score will be dropped.

Problem Sets: Will be due in class.

# Syllabus

Unit 1 - Static Systems
Problem Tools Concerns
Resistor networksMatrices, Backslash, LUDon't find inverses — compute solutions to linear equations directly.
Two and three dimensional problems are expensive.
Use sparse matrices, if you can.
Stability of trussesNull spaces, basis, QRDon't orthogonalize vectors yourself — let QR do it.
Best fit polynomialsProjection, condition numberDon't solve normal equations. Beware of overfitting.
Unit 2 - Signal Processing
Problem Tools Concerns
Frequency identificationDFT, FFTFFT is fast. Use it.
Blurring and DeblurringConvolutions, deconvolutionsBe wary of division by small numbers.
Unit 3 - Evolution Equations
Problem Tools Concerns
Chemical kineticsEigenvectors, ODEs, Forward Euler, Backward EulerBeware of time steps with explicit schemes.
Mass spring systemsMidpoint rule. Reduction to first order system. Make sure the numerics obeys the physics. Try for a second order scheme
Unit 4 - Boundary Value Problems
Problem Tools Concerns
Hanging rope under loadDiscretization, dirac delta, Green's functionsMake sure your scheme is second order. Make sure the matrix admits a solution.
2d membrane under loadLaplacian stencil. Fast Poisson solversIf matrix has Fourier modes as eigenvectors, use FFT for a fast solver.
Fluid flow in a triangleFinite element methodIf geometry complicated, use finite elements.