Teaching with MATLAB
Disclaimer: this page is my opinion and my experience with using MATLAB and/or programming in my courses. Others may not use MATLAB in the same way or have different topics in their courses.
Talks:
- "The Many Lessons in Fractals" within the Themed Contributed Paper Session #6: Mathematics and Art at the MAA Mathfest 2015 (Washington, DC) on August 5, 2015. This talk discussed some example assignments with Fractals using MATLAB. Abstract
- "Programming Mathematics as an Advanced Math Course" within the General Contributed Paper Session on Teaching or Learning Advanced Mathematics at the MAA Mathfest 2014 (Portland, OR) on August 9, 2014. This talk discussed the design of the course in which MATLAB is used extensively. Abstract
History:
In 2002 and 2003, our department realized that students did not have as much computing skills as we would prefer in our upper level courses. We required CS201: Introduction to Computer Science but they still were not comfortable writing basic routines (in the language of their choice) or experimenting on the computer. We created a 1-credit course (MA302: MATLAB Laboratory) that started in 2004 and was initially taught by Dr. Christos Xenophontos. It was required of all mathematical science majors (as our department was known at the time). In order to "justify" the requirement, topics such as numerical integration and Taylor Polynomials would be in the course since the department felt students never get enough exposure and thus understanding of these topics in the calculus course.
I was assigned to teach the course in Fall 2005 while Christos was on sabbatical. I was also assigned to teach Introduction to Linear Algebra (MA301) the previous semester (Spring 2004). So I decided to incorporate a few MATLAB projects into the course as a "practice" for the MATLAB course. This was a huge undertaking since it was the first time teaching the course and I also decided to use the online homework system, WeBWorK, for the first time. I guess I was a glutton for punishment! It is now required to use MATLAB in the linear algebra course.
I also started assigning MATLAB projects in MA351: Calculus III (multivariate calculus) course.
Flash forward to 2010. Christos had since left Loyola to go to the University of Cyprus and Dr. Mili Shah, had been hired and taught the course while I was on family leave. Mili and I proposed that the course be expanded to a three-hour course, and the department approved. It was first offered in Fall 2011 semester. This course is required of all mathematics majors, and one of the approved courses for statistics majors. Since then, we've adjusted the title, pre-requisites and number. It was originally MA402: MATLAB Programming in Mathematics and is currently MA302: Programming in Mathematics. The current requirements is CS201: Introduction to Computer Science as a prerequisite and MA301: Introduction to Linear Algebra is a corequisite. This guarantees the students have seen integration, series and have at least started working with vectors and matrices in their mathematics courses.
Courses taught with assignments and/or projects using MATLAB:
- MA301: Introduction ot Linear Algebra.
Semesters taught using MATLAB:
Some MATLAB assignment topics (other than intro to MATLAB). Note: not all necessarily given every semester.
- Hill Cipher
- Least-squares
- Transition matrices and Markov chains
- MA351: Calculus III (multivariate calculus).
Semesters taught using MATLAB:
Some MATLAB assignment topics (other than intro to MATLAB). Note: not all necessarily given every semester.
- Given certain information, find and plot a line in 3D.
- Given certain information, find and plot a plane
- Plot parametric equations a sphere
- Find and plot tangent lines to a space curve.
- Plot a space curve that and the Torus Knot on which it lies.
- Find and plot tangent planes to a surface.
- Find max or mins of a surface and plot them.
- Plot a solid, use change of coordinates and symbolic math to find volume of solid.
- Plot a solid, use symbolic math to find the value of the multiple integral over the solid.
- MA302: MATLAB Programming (1-credit course existed from Fall 2003 through Fall 2010 semesters). Semesters taught:
- MA302: Programming in Mathematics (3-credit course formerly MA402, renamed and numbered Fall 2014). Semesters taught:
- MA402: MATLAB Programming in Mathematics (3-credit course began Fall 2011 and renamed and numbered Fall 2014 to MA302). Semesters taught:
Mathematical topics within the programming course:
This list is a complete list of topics in the MA302/MA402 course. Not all topics have been covered every semester and the depth and breadth of the topics have varied. Some topics have replaced others.
- Basic calculations.
- Comparing calculations between MATLAB, spreadsheets, graphing calculators, etc.
- Working with data (importing data, graphing, basic calculations).
- Plotting in 2D and 3D.
- Numerical integration or quadrature.
- Taylor polynomials and power series.
- Newton's method of root finding.
- Linear and affine transformations.
- Fern fractals and iterated function systems.
- Arithmetic of complex numbers and the Chaos game.
- Line replacement fractals and geometric series.
- Gram-Schmidt process of calculating orthogonal and orthonormal basis vectors. Includes picturing these vectors in 2D and 3D
- Polynomials
- Limits: basic epsilon-delta proofs and visualizing limits.