Matlab as a tool for quantitative calculations in geoscience

Don Baker, Earth and Planetary Sciences, McGill University

I teach 1st year, 1st semester students in our 3-year undergraduate programs in geology, planetary sciences, and Earth system science their introductory course in geochemistry. All of these students have had 1 year of the equivalent to U.S. university level physics, chemistry and calculus and are familiar with spreadsheets. But most have no understanding of how to apply the knowledge they learned in those previous courses to quantitative calculations that constrain the behavior of the Earth system. Furthermore, our program in geology has a tendency to attract math-phobic students, which is not surprising considering that the image of a geologist in Canada is someone who goes out into the wilderness to hammer on rocks looking for ore deposits or searching for oil and natural gas.

I introduce MATLAB to these students with two goals in mind: 1. To provide them with specific skills that can be used to solve geochemical problems that I give as laboratory exercises, homework assignments, and exams; and 2. To introduce them to the power of MATLAB and its advantages over using spreadsheets to quantitatively solve problems so that they can use MATLAB in future courses and in their professional careers. My goal is to teach them how to write simple code involving loops with conditional statements (this is particularly important because many geochemical problems require iterative solutions) and a small set of the features built into MATLAB (e.g., the Curve Fitting Toolbox).

I have very little time in the course to teach MATLAB. In the 1st week of the course I spend about about 1. 5 hours lecturing on MATLAB before I give them an laboratory assignment to solve using MATLAB as a group of ~ 5 students in 1.5 hours and to present their solution to the rest of the class of ~ 25 students on the same day. I follow this up with a homework assignment that emphasizes the use of MATLAB, but has little geochemistry. All subsequent homework assignments can be solved using MATLAB, but can also be solved with spreadsheet software (which students too often use). Starting in 2016 I allowed students to use MATLAB on their exams, but not spreadsheet software.

With the little time in the course for me to teach MATLAB formally, I rely on the students to teach each other and help those who struggle. The best students, and those with some previous programming experience (1 or 2 students per class of 25), rapidly pick up MATLAB and learn to use it well. Most of the students are at least a little proficient by the end of the course, but there are always a few who continue to struggle.

I think that I can better use the short time I have available to teach MATLAB, but don't know how. I also think that their may be better ways to refer to MATLAB during my lectures and homeworks later in the course and possibly provide "snippets" of code in addition to those I already give to the students. But once again I don't know how to do this. I am hoping to gain new ideas an new perspectives on how to better incorporate MATLAB into my geochemistry course and ensure that all students in the course can write simple code and use (or learn to use) the advanced features of MATLAB.

Downloadable version of this essay

Matlab as a tool for quantitative calculations in geoscience (Acrobat (PDF) 22kB Oct3 17)
Laboratory 1 Matlab Teaching Notes (Acrobat (PDF) 52kB Oct3 17)
1st Laboratory Assignment (Acrobat (PDF) 48kB Oct3 17)