MATH 313 (Spring 2009)
Instructor's contact information
Michael Robinson
3C5 David Rittenhouse Lab
(215)898-6285
robim at math (dot) upenn {dot} edu
Office hours: Tuesdays 2-3pm, Wednesdays 11am-12pm, or by appointment
Supplemental office hours: Thursday, 30 April: 10am-12pm and Monday, 4 May: 10am-12pm
My research website http://www.drmichaelrobinson.net/
Feel free to contact me with any questions (course-related or not)
Quick Links
Course description
Homework assignments
Course schedule
Concerning programming in this course
Information about exams
Some useful links
Course policies
Many important problems in a wide range of disciplines within computer
science and throughout science are solved using techniques from linear
algebra. This course will introduce students to some of the most
widely used algorithms and illustrate how they are actually used.
Some specific topics: the solution of systems of linear equations by
Gaussian elimination, dimension of a linear space, inner product,
cross product, change of basis, affine and rigid motions, eigenvalues
and eigenvectors, diagonalization of both symmetric and non-symmetric
matrices, quadratic polynomials, and least squares optimazation.
Applications will include the use of matrix computations to computer
graphics, use of the discrete Fourier transform and related techniques
in digital signal processing, the analysis of systems of linear
differential equations, and singular value deompositions with
application to a principal component analysis.
The ideas and tools provided by this course will be useful to students
who intend to tackle higher level courses in digital signal
processing, computer vision, robotics, and computer graphics.
The course textbook is
Gilbert Strang, Introduction to linear algebra, Third edition, Wellesley-Cambridge, 2003.
Homeworks should be submitted by the listed date and time, by sliding them under my office door or handing them to me in person. Late assignments will not be accepted. If you work with others, please submit your own copy independently from the others.
Homework 1, Due Friday, 23 January 2009 at 1pm.
- Set 1.1: 5, 14, 21
- Set 1.2: 6, 21, 29
- Set 2.1: 6, 11, 25
- And a MATLAB problem as well...
Homework 2, Due Friday, 30 January 2009 at 1pm.
- Set 2.2: 5, 12, 28
- Set 2.3: 7, 8, 16, 26
- Set 2.4: 6, 24, 35
- MATH 513 Addendum: read about partial pivoting (pp450-452) and do problems 9.1: 1, 10 (don't find the LU factorization, but do the elimination "by hand" before using MATLAB to check/do your arithmetic)
Homework 3, Due Friday, 6 February 2009 at 1pm.
- Set 2.5: 7, 32, 39
- Set 2.6: 5, 15, 34
- Set 2.7: 2, 5, 18
- And a fun MATLAB problem too...
Homework 4, Due Friday, 13 February 2009 at 1pm.
Homework 5, Due Friday, 20 February 2009 at 1pm.
- Set 3.3: 5, 10, 15, 19
- Set 3.4: 1, 4, 19, 29
- And a MATLAB problem
Homework 6, Due Friday, 27 February 2009 at 1pm.
- Set 3.5: 5, 10, 23, 31
- Set 3.6: 3, 10, 23, 28
- MATH 513 Addendum: read about norms and condition numbers (section 9.2) and do problems 9.2: 13, 14 (use Matlab to do the computations if you like)
Homework 7, Due Friday, 20 March 2009 at 1pm.
- Set 4.1: 3, 15, 29
- Set 4.2: 3, 9, 17
- Set 4.3: 4, 14, 15
- And a MATLAB problem
Homework 8, Due Friday, 27 March 2009 at 1pm.
Homework 9, Due Friday, 3 April 2009 at 1pm.
- Set 5.2: 3, 6, 25, 34
- Set 6.1: 4, 13, 15, 25
- And a MATLAB problem
Homework 10, Due Friday, 10 April 2009 at 1pm.
Homework 11, Due Friday, 17 April 2009 at 1pm.
- Set 6.4: 5, 11, 14, 21, 28
- Set 6.5: 5, 12, 20, 24
- And a MATLAB problem
Homework 12, Due Friday, 24 April 2009 at 1pm.
The course meets every Tuesday and Thursday 3pm-4:30pm in David Rittenhouse Lab room 3C2.
Below is a listing of topics (and links to course notes if they exist) that we will cover...
15 January: Sections 1.1-1.2. Introduction to vectors
20 January: Sections 2.1-2.2. Vectors, linear equations, and elimination
22 January: Section 2.3. Matrix elimination
27 January: Section 2.4. Elementary matrix operations
29 January: Section 2.5. Matrix inversion
3 February: Section 2.6. Factorization and elimination
5 February: Section 2.7. Transposes
10 February: Section 3.1. Vector spaces
12 February: Section 3.2. The nullspace
17 February: Section 3.3. Rank and row reduction
19 February: Section 3.4. Solving Ax=b
24 February: Section 3.5. Independence, spanning, and dimension
26 February: Section 3.6. The dimension theorem
3 March: Review for the midterm exam
5 March: Midterm exam in class
10,12 March: spring break, no class
17 March: Sections 4.1-4.2. Orthogonality and projections
19 March: Section 4.3. Least squares
24 March: Section 4.4. Gram-Schmidt
26 March: Section 5.1. What is a determinant?
31 March: Section 5.2. Ways to compute determinants
2 April: Section 6.1. Introduction to Eigenvalues
7 April: Section 6.2. Diagonalization
9 April: Section 6.3. Applications to differential equations
14 April: Section 6.4. Symmetric matrices
16 April: Section 6.5. Positive definiteness
21 April: Section 6.6. Similarity
23 April: Section 6.7. Singular value decomposition
28 April: Review for the final exam
5 May: Final exam
Generally speaking, knowledge of the general techniques of programming
is expected, but I don't expect you to know the specifics of any
particular language at the beginning of the course. There will be
some programming required on the homeworks -- so you will be expected
to know some basic programming when the course finishes.
If you don't have a strong preference, I will suggest that you learn
some Matlab or Octave. Matlab is available on the SAS computers in the on campus computer labs. I've heard that students can obtain Matlab relatively cheaply, though Octave is free to use. If you do have a
strong programming language preference for another language,
you may be permitted to use it, but you must contact me first about
it early in the course.
Matlab or GNU Octave Tutorials
Some tutorial information will appear here.
For each exam, you will be permitted to bring one 3"x5" index card with handwritten notes on it. Electronic calculators will not be permitted. However, mechanical calculators (such as this or these) are fine. Sorry. I'm quirky that way!
Midterm exam was in class Thursday, 5 March 2009.
Final exam is 5 May 2009, 12-2pm, in DRL 3C2.
GNU Octave
Matlab
Cleve Moler (the original author of Matlab) has written two books (Numerical computing with Matlab and Experiments with Matlab, freely available from the link), which serve as excellent introductions
Academic calendar
Schedule of classes being held in the DRL computer labs
Campus map
The difference between MATH 313 and MATH 513
MATH 513 is cross-listed with MATH 313. They will have common lectures and common exams (the same problems). However, MATH 513 students will have to complete extra sets of problems for some of the homework assignments. These homework problems address some theoretical or practical aspects of the material that we don't have time to address in the class or the usual homework assignments.
Absences
You are generally expected to attend the lectures. Please contact me in advance if you cannot attend, especially in the case of the midterm exam.
Late homework is not accepted, though the lowest two homework scores will automatically be dropped.
Grading
The course grade will be determined as follows:
40% Homeworks
25% Midterm exam
35% Final exam
Homework drop policy: The lowest two homework scores will automatically be dropped in the computation of the homework grade. Late homeworks will not be accepted, unless there is an official (University-approved) reason for doing so.
Academic dishonesty
Academic dishonesty is a serious offense. Read Penn's policies. As
applied to this course, you may work together on homeworks, but the
work you turn in must be your own. In so far as computer programs are
concerned, you may not simply copy another student's program and put
your name on it! In particular, I may ask you to explain or clarify sections of your program if I am unable to follow it. So please know what your program is doing!