Re: Suggestions needed for Mathematica course

*To*: mathgroup at christensen.cybernetics.net*Subject*: [mg379] Re: Suggestions needed for Mathematica course*From*: David Harrison <harrison at faraday.physics.utoronto.ca>*Date*: Thu, 29 Dec 1994 07:07:00 -0500

I have been teaching a third and fourth year Physics course called "Computational Physics" for two years now. In addition, I have been deeply involved in projects in which we use Mathematica as the foundation for required problem sets in our more traditional courses (Classical Mechanics, E&M, Nonlinear Dynamics, etc.) for the past three years or so. I could go on at some length about our experiences, but will try to defer that for another time and place (we have recently discussed some of our work in Computers in Physics 8, 416 (July/August 1994). A bit of background about our "Computational Physics" course: it is a half year course involving a one-hour lecture and three-hour laboratory every week. It is structured as a laboratory, and the students experiment with algorithms, displays etc. In all cases the experiments are tied to real Physics problems and use real data. The students are third and fourth year Physics specialists. It is very easy to ask too much of the students. I use a general rule that if it takes me X time to solve a problem it will take a student 10*X to solve the same problem. We have all assigned problems in our traditional courses that are much harder to solve than we thought; thus we learn to do the solutions *before* releasing the problem to our students. In a course such as this such a step is VITAL: many of my disasters have been because I neglected this rule. Getting the students 'up to speed' with Mathematica begins with a three hour session of exercises. Nancy Blachman's excellent tutorial (available from mathsource) provided some of this introduction, but mostly it is home-made; this is because our use of Mathematica requires a different set of topics and emphases then her general tutorial. Of course, after the exercise the students are not "experts" yet. By the end of the course they're pretty close though. Interacting with the students one-on-one in the 'laboratory' is where some of the best learning occurs; I often think of this as a master- apprentice relationship. There is also a strong positive interaction between the students, although one must guard against one student doing most of the work. Having a projection system for the one-hour lecture has been extremely useful. Often walking through a task in class clarifies things for the students. Finally, we are a UNIX/X-terminal shop. In 1993 the course was based on packages: some of these we wrote and some the students wrote. We required the students to submit a regular lab book of discussion, conclusions, etc. In 1994 a Notebook front-end became available and we used it this year: thus the students used their Notebook for both their code and graphs and discussion, making the lab book superfluous. Despite the bugs in this first release of the X-Notebook, using this technology made an order-of-magnitude improvement in the learning of the students. However, there are some cautions: + If you give the students an expression or series of expressions to evaluate, they tend to point-click-execute the cells but not really look at the output. Nagging incessantly can soon put a stop to this once you realise that it is happening. + If the project involves, say, a lot of color graphics the students can easily exhaust system resources if they keep all of them in the Notebook. For PC/Mac environments this means running out of memory or filling up the disc when one tries to save the Notebook. In our UNIX/X-terminal environment we have quotas that lead to the same problems, plus exhausting the memory of the X-terminal which causes the program to crash in a particularly ugly way (which is the fault of X, not WRI). We advise the students to remove graphics but keep the command that generated them so I can reconstruct them on my screen when I mark the experiment. We also include CleanSlateExcept[] commands in our Notebooks for cleaning up their environment (CleanSlate.m is available from mathsource). + Although the students don't submit any paper for evaluation, I have been unable to think of a good way to mark them electronically. Thus, I print their Notebooks, and write my comments on the hardcopy while I'm running their Notebook on my terminal. If somebody has thought of a better way I would love to find out. Finally, after the students have submitted their experiment, I make a solutions Notebook available. As mentioned above, this Notebook was written at the same time that the experiment Notebook was written. Well, this has ended up pretty long-winded. I hope it helps. -- David Harrison | "Music is a hidden practice Dept. of Physics, Univ. of Toronto | of the soul, that does not Inet: harrison at faraday.physics.utoronto.ca | know it is doing mathematics." Tel: 416-978-2977 Fax: 416-978-5848 | -- Leibniz