# Syllabus – Math 6321, Numerical Solution of Ordinary Differential Equations, Fall 2016¶

## Instructor:¶

Daniel R. Reynolds

## Class and Office Hours:¶

Lecture: 157 Fondren Science Building, M/W/F, 2:00-2:50 pm.

Office Hours: 139 Clements Hall, M/F 9-10 am, W 1-2 pm, or by appointment (arrange by email).

## Textbook:¶

• Introduction to C++ (online interactive book, \$48):
• Enter zyBook code: SMUMath6321ReynoldsFall2016
• Click Subscribe
• Hairer, & Nørsett & Wanner, Solving Ordinary Differential Equations I – Nonstiff Problems, Springer, 2010. (ISBN 9783642051630).
• Hairer & Wanner, Solving Ordinary Differential Equations II – Stiff and Differential-Algebraic Problems, Springer, 2010. (ISBN 9783642052200)
• Butcher, Numerical Methods for Ordinary Differential Equations, 2nd edition, Wiley, 2008. (ISBN 9780470723357)

## Course Description:¶

MATH 6321 – Numerical Solution of Ordinary Differential Equations [3 credits]

Numerical methods for initial value problems and boundary value problems for ordinary differential equations. Emphasizes practical solution of problems using Matlab and C++.

Prerequisites: MATH 2343, MATH 5315 or 6316.

## Educational Outcomes:¶

• How to implement and use a variety of numerical solution methods for ordinary differential equations, including forward Euler, backward Euler, trapezoidal, Runge-Kutta, and linear multi-step methods.
• Error analysis techniques for local and global error in ODE solution algorithms.
• Stability analysis techniques for ODE solution algorithms.

## Computing:¶

In this course, homework and projects will make use of Matlab and C++. All Math department graduate student workstations should have both Matlab and the GNU C++ compiler, g++, installed. Students who do not have g++ installed on their home computers can talk with the professor about how to install it on their operating system. Alternately, all Math graduate students can log into the Math department server, zeno, to use Matlab and the compilers there. Students who do not yet know how to do this and own Windows computers should follow the instructions here to set up the appropriate software on their computer to allow them to login to Unix/Linux servers. Students running OS X can follow the instructions here on how to log into Unix/Linux servers from their Mac. Students using Linux most likely don’t need instructions on this, but if so please see the professor.

Reading the sections of the textbook corresponding to the current lecture topic is required, and will be necessary for completing each homework assignment. It is expected that you have read this material in advance of each lecture.

## Homework:¶

Homework assignments will be assigned regularly throughout the semester, and will consist of programming exercises and written assignments. Homework problems must be completed on your own, though discussion of the assignments with other students and the instructor is encouraged. In addition, I encourage all students to visit my office when they get stuck on bugs in their codes.

## Exams:¶

There will be two exams in this class, which are announced on the course web page. Problems on these exams will relate to the homework assignments.

There is no final exam in this class.

## Projects:¶

There will be one major programming project to be performed during the course of the the semester. By the end of the first week of class I will post descriptions of available project topics based on advanced ODE methods from the literature. Students will choose from these topics early on in the semester.

Students working on the same project are encouraged to discuss the topic as they develop an understanding of how they will approach their programs. However, the implementation of these programs must be completed on your own.

At the end of the semester, all students will turn in reports and give presentations on their project findings. Grades for these projects will be based on speed, accuracy, innovation, and presentation (both written and oral).

These projects will involve a substantial amount of work – you must begin these very early and do not procrastinate.

20% Homework

25% Mid-term 1

25% Mid-term 2

30% Project

## 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.

Academic dishonesty is considered a serious offense, and is doubly inexcusable among graduate students. 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.

The line between helping each other learn, and copying from one another is not always easy to discern. While I strongly encourage you to learn with/from one another, you should never turn in anything that you could not reproduce on your own. If I feel that you may have gone too far, I reserve the right to ask you to repeat your work in my office to see whether you did it yourself, or just copied answers from a friend.

Examples of honor code violations include:

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