Incorporating MATLAB in Applied Mathematics Courses

Dong Zhou, Mathematics, California State University-Los Angeles

As a researcher in the field of computational mathematics, I believe that numerical computation/simulation is a vital part in solving real world (and often large scale) problems via mathematics. Programming is therefore an important skill in the field of applied and computational mathematics. That is way I decided to incorporate MATLAB programming into my applied mathematics course. This essay serves as a summary of my experience and thoughts on my first teaching experience involving MATLAB, or programming in general.

Applied Mathematics is an elective topical course for senior students, aiming to provide a basic understanding of various mathematical tools to solve problems in science and engineering, and to broaden students' awareness of other important topics not covered in basic mathematics courses. In the past, this course was taught as a traditional applied math course where only mathematical theories were presented to the students. I decided to introduce a small portion of programming into the course with the goal of exposing students to the computational aspect of this field.

Since the students often have very diverse programming preparation coming into this class, I decided to keep the lecture based class format focusing on various different applied math topics accompanied by a small portion of MATLAB programming.

At the beginning of the semester, I provided the students with introductory materials for MATLAB programming including the basic information from help/documentation webpages on Mathworks.com, MIT Open Courseware for introduction to MATLAB, and other open-source MATLAB tutorials, to help them get started with MATLAB.

In each assignment throughout the semester, I integrated small programming tasks into the problems. Some problems were designed to be mini projects where programming served simply as a tool to obtain part of the answer. Students were still required to utilize mathematical approaches/theories to analyze and to solve the complete problem. I often provided them with instructions on the programming tasks and always wrote sample MATLAB codes myself for students to modify. For example, in teaching numerical methods for solving ordinary differential equations (ODE), students were instructed to modify a sample MATLAB code to solve an ODE with three different schemes and to compare the performances, then to explain their observations using the theoretical stability properties learned in class. Before returning their assignments, I always provided them with feedbacks on their homework performance and made my code available for them to compare with their own codes.

This course was my first experience teaching an upper division math course. There are definitely a lot of aspects that could be improved. This workshop provides me with a great opportunity to learn teaching approaches and techniques from more experienced colleagues.

Downloadable version of this essay