In my last post I talked about using MatLab to help with teaching multivariable calculus at Reykjavik University. Well, what happened was that Mathworks, the makers of MatLab, were dragging their feet in getting us the Symbolic Toolbox for MatLab (needed for defining and working with variables); so we decided to switch to some other computer algebra system. The open-source SAGE came out on top from the choices we had. I’ve been working with it for two weeks now and I can honestly say that it is friggin’ awesome! Here are a few good reasons to try it out:

  1. It’s free.
  2. It can be run locally on a Mac, PC or Linux; or through the SAGE website: They give you a free account and you can access your computations from anywhere. Has anyone tried it on their iPhone?
  3. It combines the power of many open-source math packages like Maxima, R, Singular, etc. and can interface with programs such as MatLab, Mathematica, etc.
  4. It is built on Python which makes coding really nice and simple.
  5. It is actively developed and growing fast.

Give it a spin!


I’m teaching a course on multivariable calculus at Reykjavik University, in Iceland, with a slight twist. The students turn in four problem sets over the semester, each one containing four problems. Most of the problems utilize MatLab for either vizualization or for the solution. Here’s an example.

Problem. Part A. Given a function of two variables x,y write a MatLab function that can make a rudimentary test for local maxima, minima and saddle points in the following way: The input should be a function f, a point P_0 = (x_0,y_0), a real number \epsilon > 0, and a natural number n \geq 1. What the MatLab function should do is randomly select n points P_1, P_2, \dots, P_n on a circle (in the xy-plane) of radius \epsilon and center P_0; calculate the directional derivatives along the vectors \vec{P_0P_n}. The output should be:

  1. “The function has a local maximum at P_0.” if all the directional derivatives are negative.
  2. “The function has a local minimum at P_0.” if all the directional derivatives are positive.
  3. “The function has a saddle point at P_0.” if the directional derivatives are both positve and negative.

Part B. Give an example of a function with the property that: It accurately detects a local maximum or minimum at a point P_0 for \epsilon < 1 but fails to detect it if $\epsilon > 1$.

I haven’t assigned this problem yet but am very excited to see the results. I think this problem should give the students a good feeling for what local maxima, minima and saddle points “look like”.

Many of the math blogs that I read (and you can find in the blogroll) are writing about the plight of Ali Nesin and his Summer School. Apparently, Prof. Nesin was arrested for running his yearly Summer School in Turkey since he was “teaching without permission”! You can even see pictures of black boards behind police tape on Mathematics under the Microscope. A petition was set up to protest and I urge you to sign it!

I experimented with a new format for the midterm of my single variable calculus class (which is running during the summer session here at Brown). The midterm consisted of 10 problems and at the beginning of the class the students were allowed to work on all the problems but at the end they each had to choose 5 problems to turn in. The remaining problems then turned into a take-home midterm which was due the next day.

The students liked this format but found the midterm itself a bit hard. I’m in the midst of grading it right now and it seems to have come out just fine.

Here is why I like this format:

  • Students don’t need to know and worry about every single type of problem that I might put on the midterm.
  • It takes most of the time pressure away.
  • It is less likely that students collaborate on the take-home part since they might not even have the same problems chosen.

I think that next time I give a midterm I’ll experiment with different ratios, only allowing students to take 3-4 problems to work on at home.