# Syllabus – Math 5316, Introduction to Matrix Computation, Spring 2019¶

## Instructor:¶

Daniel R. Reynolds

## Class and Office Hours:¶

**Lecture:** 142 Dallas Hall, Tu/Th, 9:30-11:50 am.

**Office Hours:** 139 Clements Hall, Tu/Th 1-2 pm, W 9-10 am and 1-3 pm, or by appointment (arrange by email).

## Textbook (required):¶

D.S. Watkins, Fundamentals of Matrix Computations, Wiley, 3rd edition, 2010. (ISBN: 0470528338)

## Recommended Reading:¶

### Proof technique:¶

### Matlab:¶

- Cleve Moler, Numerical Computing with Matlab, SIAM Philadelphia,
2004.
*This is a free online book, written by the inventor of Matlab, that focuses on built-in Matlab commands applied to tough scientific computing problems.* - Matlab Onramp.
*This is a web-based, interactive tutorial provided by the company that sells Matlab. It requires registration (free). I suggest that you do all of the free tutorials.*

### Python:¶

- Codecademy’s learn Python tutorial is free, and starts at a somewhat introductory level. It claims to only take 10 hours.
- DataCamp has a variety of Python tutorials; perhaps the most useful would be “Python Basics”, “Functions and Packages” (the ‘functions’ part), and “NumPy”.
- learnpython.org has a number of web page-based tutorials (not interactive) on learning Python. This might serve as a better reference site than tutorial, depending on your learning style.

## Course Description:¶

*MATH 5316 – Introduction to Matrix Computation* [3 credits]

The efficient solution of dense and sparse linear systems, least squares problems, and eigenvalue problems. Elementary and orthogonal matrix transformations provide a unified treatment. Programming is in MATLAB, with a focus on algorithms.

Prerequisites: C- or higher in MATH 3304 or MATH 3353; C- or higher in MATH 3315/CSE 3365 or MATH 3316.

## Student Learning Objectives:¶

- Math Major SLO 5: Students will be able to demonstrate fluency in the use of advanced tools or methods common to the field.

## Computing:¶

Computing assignments in this class must be written in either Matlab or Python (unless otherwise approved by the instructor). Students may switch between languages at their discretion, I only require that each computing problem be turned in once (in a single language).

**Matlab:**

Because SMU has a site license for Matlab, it may be installed for free on your personal computer (Windows, Mac or Linux) – information on the installation process, as well as relevant download links, are available at www.smu.edu/OIT/Services/Info/Matlab. Matlab is also available on most public computers across campus.

I recommend that you use a more recent version of Matlab for your computations in this class (e.g., 2017a or newer), since they have worked to improve the speed of loop-based calculations (we’ll do

lotsof these in this class).I require that Matlab programs be turned in as

`.m`

files (i.e., not as Live Scripts or Live Functions), so that they can be run in ‘batch mode’ for grading.

**Python:**

Similarly, Python is free and may be installed on any computer in a variety of ways. Popular Python distributions for Windows and OSX are Enthought Canopy Express and Anaconda. Be certain to install Python version 3.5 or higher so that your programs support the “@” operator for matrix-matrix and matrix-vector multiplication.

Python-based calculations in this class will require both the “Numpy” and “Scipy” packages, so you must ensure that these are installed within your distribution. All vectors and dense matrices in this class must be stored using one- and two-dimensional Numpy “ndarray” objects (we’ll also use sparse matrices based on other formats).

I require that Python programs be turned in as

`.py`

files (i.e., not as IPython or Jupyter notebooks), so that they can be run at the OS X / Linux command line.

## Reading:¶

Reading the assigned sections of the textbook is required, and will be necessary for completing each homework assignment. You are responsible for all of the material in the assigned reading, whether it has been presented in the lecture or not.

The assigned readings for each section will be listed on the Reading page.

## Homework:¶

Homework will be assigned on the course Homework page. These will be due periodically throughout the semester, and will be comprised of both theoretical and computational work.

- Computational portions of each assignment will be turned in electronically through Canvas. You must turn in all Matlab or Python scripts, functions, and input files required to run your code (including any files provided by the instructor).
- Theoretical portions of each assignment will be turned in electronically through Canvas.

Each homework assignment is due by 5:00 pm on the specified date.

*Late work will lose points based on the following schedule:*

- 1 minute to 24 hours – 20% deduction
- 24 hours to 48 hours – 50% deduction
- over 48 hours – no credit

These assignments will involve a substantial amount of work – I strongly recommend that you begin these when assigned and do not procrastinate.

## Exams:¶

We will have 2 in-class exams, the dates of which are posted on the
course web page. The exam questions will be based off of the
reading and homework. These exams will be non-cumulative, and will be
open-book/open-notes, but *calculators and other electronic devices
are prohibited*.

We will have a final exam during the regularly-scheduled exam period
(5/9, 8:00 am). This will be cumulative, and will be
open-book/open-notes, but again, *calculators and other electronic
devices are prohibited*.

## Grading:¶

Your course grade will be determined using the following formula:

30% Homework

40% Mid-term exams

30% Final exam

If your final exam grade is higher than your lowest regular exam grade, then I will instead determine your grade using the formula:

30% Homework

20% Best mid-term exam

50% Final exam

This grading scheme is somehow too complex for Canvas to handle, so the
overall grade shown in Canvas *will be incorrect*. As this is an
upper-level Math course and I provide all numerical grades and the
formula to you, I expect that you can determine your actual overall
grade yourself. All final grades are assigned on a standard grading
scale.

## Honor Code:¶

The SMU Honor Code applies to all homework and exams in this
course. *Work submitted for evaluation must represent your own
individual effort. Any giving or receiving of aid without my express
consent on academic work submitted for evaluation shall constitute a
breach of the SMU Honor Code.*

I take honor code violations very seriously, and will report all
violations to the SMU Honor Council. The minimum penalty for a
violation is a “0” on the assignment, and the maximum penalty is
immediate failure of the course. These penalties are **in addition to**
those imposed by the SMU Honor Council.

While all work submitted must represent your own individual effort, I do recommend that students work together to discuss proof strategies, code structure, etc., on homework in this course.

Examples of allowed collaboration:

*Proofs*: You can discuss the basic strategy of any proof (e.g., proof by contradiction, important definitions from the book, etc.), including any “tricks” that may be required. However, actual writing of the proof and all justification of steps must be done**on your own**.*Codes*: You can discuss basic program strategy (e.g., algorithms from the book, helpful websites, code structure, additional useful functions, and how functions should interact with one another). However, you**must write and debug**all codes yourself, using your own personal variable/fuction names, comments, and implementation details.

Examples of honor code violations include:

- Copying theoretical work from another student, a tutor, or from the internet.
- Submitting a computer code which includes a program, or even part of a program, written by anyone else (other than the instructor). This includes programs written by students from previous semesters, tutors, and programs downloaded from the internet.
- Submitting plagiarized or fabricated computer outputs (numerical results or plots).
- Supplying your own work for another student to copy.

A generally applicable rule of thumb in this course is: you are
encouraged to talk about program strategy and proof strategy all you
want, but you should **never** look at another student’s codes or
written work.

See the SMU Honor Code website for more information.

## SMU Regulations:¶

*Disability Accommodations*: Students needing academic accommodations
for a disability must first register with Disability Accommodations &
Success Strategies (DASS). Students can call 214-768-1470 or visit
http://www.smu.edu/Provost/ALEC/DASS to begin the process. Once
registered, students should then schedule an appointment with the
professor as early in the semester as possible, present a DASS
Accommodation Letter, and make appropriate arrangements. Please note
that accommodations are not retroactive and require advance notice to
implement.

*Religious Observance*: Religiously observant students wishing to be
absent on holidays that require missing class should notify their
professors in writing at the beginning of the semester, and should
discuss with them, in advance, acceptable ways of making up any work
missed because of the absence. (See “Religious Holidays” under
University Policy No. 7.22).

*Excused Absences for University Extracurricular Activities*: Students
participating in an officially sanctioned, scheduled University
extracurricular activity should be given the opportunity to make up
class assignments or other graded assignments missed as a result of
their participation. It is the responsibility of the student to make
arrangements with the instructor prior to any missed scheduled
examination or other missed assignment for making up the work. (See
2018-2019 University Undergraduate Catalogue).

*Campus Carry*: In accordance with Texas Senate Bill 11, also known
as the “campus carry” law, following consultation with the entire
University community SMU determined to remain a weapons-free campus.
Specifically, SMU prohibits possession of weapons (either openly or
in a concealed manner) on campus. For more information, please see:
http://www.smu.edu/BusinessFinance/Police/Weapons_Policy.