# Prerequisites for SIO 221 B

SIO 221B is the second quarter of the physical oceanography data analysis sequence.  You do not need to be a physical oceanographer to enroll in the course, but you should have some mathematical background.   If you can't answer the questions indicated with bullets, then you probably will need to plan on spending time reviewing this material before the start of SIO 221B.

### Prerequisite 1:  SIO 221A or previous experience with Fourier Transforms

• What is a Fourier transform?
• What is the relationship between a time series x and its transform?
• If x has N elements, how many Fourier modes can be defined?
Resources for Fourier transforms:
Bracewell,
Matlab manual,
Numerical Recipes,
any complex variables textbook.

### Prerequisite 2:  Differential, Integral, Vector Calculus

• How do you integrate by parts?
• How do you define a Taylor series? What is the Taylor series expansion of cos(x) for small x?
• How do you use a table of integrals such as Gradshteyn and Ryzhik?
Resources for calculus:

### Prerequisite 3:  Linear Algebra

• What is a matrix? What is a vector?
• For the matrix A, what is A-1?  When can A-1 be defined?
• What is the matrix I?  How is it related to A and A-1?
• If A is a 4x3 matrix, and b is a 3 element vector, how big is Ab?
• If A is an NxN matrix, how many vectors are required to span the space defined by A?
If you have not had an undergraduate level course in linear algebra, then you may find SIO 221B difficult.  You are permitted to enroll, provided that you are prepared to devote time (equivalent to taking another course) to mastering the fundamentals of linear algebra.
Resources for linear algebra:

Strang, Linear Algebra and Its Applications, Academic Press, or any other textbook
links and exercises in Gilbert Strang's web site for his undergraduate linear algebra class:  http://web.mit.edu/18.06/www/
Matlab manual,
Linpack/Lapack manual,
tutorial websites (see for example http://www.math.duke.edu/education/ccp/materials/linalg/index.html)
some textbooks with Matlab exercises (suggested by the Mathworks)
-- ATLAST Computer Exercises for Linear Algebra http://www.mathworks.com/support/books/book1347.jsp
-- Linear Algebra LABS with MATLAB, 2e http://www.mathworks.com/support/books/book1341.jsp
-- The MATLAB Project Book for Linear Algebra http://www.mathworks.com/support/books/book1352.jsp

### Prerequisite 4:  Programming

• How do you read a data file?
• How do you create a line plot?
• How do you define a matrix or a vector?
• How do you iterate through all the elements of a vector or a matrix?
• How do you invert a matrix?
Matlab is the software package that students most often use for this course, but you are free to choose any software package or combination of packages that you like, provided that you can carry out computations, invert matrices, and plot results. (http://www.mathworks.com/)  Alternatives to Matlab include:
Octave: a freeware imitator of Matlab, uses almost the same commands.   (http://www.octave.org/)
Scilab: another freeware imitator of Matlab (http://www-rocq.inria.fr/scilab/)
Fortran, c, or c++:  compiled languages.  Run faster than Matlab for some applications,
Lapack/linpack:  Fortran-based matrix inversion packages. (http://www.netlib.org/lapack/)
csh, awk, perl:  Non-compiled scripting languages.  Sometimes very efficient for transforming columns of numbers.  (Not good for matrix inversion.)
GMT:  Generic Mapping Tool.  Free unix command-line software developed for geophysical graphics. (http://gmt.soest.hawaii.edu/)
If you need a copy of Matlab (either for your office or for your personal computer), you can buy the student version at the UCSD bookstore.  You may also want to buy the student version as a way to get a full set of manuals.  Don't use Matlab's older "student edition", which prohibits large matrices and may thwart your ability to get through the problems assigned for this course.

If you aren't comfortable with Matlab (or the software package of your choice) work through its tutorials before the end of the first week of class.  You'll need some experience to tackle the first problem sets.

Sarah Gille, December 2002.
Back to SIO 221B web site.