Computational Engineering w/Maxima



Interesting about Macsyma!

The 18.085 videos don't rely on very much in Matlab, but I think that Strang's
textbook may rely on Matlab a lot more -- perhaps the textbook exercises are
based on Matlab.

The last Matlab I had access to was on my 1990's pre-unix Mac laptop, so I can't
compare them anymore.

Perhaps the "R" language matches Matlab better?

The main things that Strang seems to use are "eye()" for "ident()", and
a complicated Matlab operator A\x, which has the effect of (A^^-1).x, but is
(supposedly) far more efficient -- particularly for sparse matrices.

Strang also uses Toeplitz(), which in Maxima is roughly the same as it is
in Matlab.

Matlab seems to have an ability to express block matrices easily; I'm not as
experienced with Maxima, so perhaps Maxima has similar block matrix capabilities.

I would speculate that one could go through Strang's textbook & come up with
the mapping between Matlab & Maxima & program whatever functions are required
in perhaps one day.

At 09:16 AM 4/18/2013, Richard Fateman wrote:
>On 4/18/2013 8:54 AM, Henry Baker wrote:
>>I've watched several of the YouTube videos from MIT's 18.085 math course called
>>"Computational Science & Engineering".  Although Professor Strang may not be the
>>world's best lecturer, I did like the general flow of the course, which
>>integrates the infinitesimal calculus side-by-side with finite differences,
>>aka matrix algebra aka finite element analysis.
>>
>>Although the course uses MatLab, it could just as easily have used Maxima, and
>>the symbolic capabilities of Maxima would have enabled closer integration
>>of the calculus & matrix methods.
>>
>>Perhaps someone on this list might already be teaching a course similar to
>>Strang's, but using Maxima instead.
>>
>>Someone may have to define a small number of functions & operators to make
>>Maxima "look" more like Matlab & thereby smooth out these differences.
>
>Maybe you could identify more specifically what items from Matlab are needed?
>It is unfortunate, but hardly surprising,  that the MIT math department doesn't use
>symbolic mathematical computing.
>
>The last commercial Macsyma had a Matlab feature ...
>
>from the documentation:
>
>MATLAB
>
>Macsyma supports nearly all of the language features and functionality
>of Matlab.
>
>If you know the name of a Matlab function, you can usually
>find the name of the comparable Macsyma function in one of
>three ways:
>
> - The Matlab command name may be the same as in Macsyma.
>   For example HANKEL and TOEPLITZ are the same in Macsyma
>   and Matlab.
>
> - The Macsyma name may be of the form MAT_name.
>   For example EYE -> MAT_EYE.
>
> - Macsyma may have a closely related function which does
>   not behave like the Matlab command of the same name.
>   For example, Macsyma's SVD does not do what Matlab's
>   SVD does, while Macsyma's MAT_SVD command does what
>   Matlab's SVD command does.
>   Other examples of this type of name include MAT_MAX,
>   MAT_MIN, and MAT_SUM.
>
>Even when it is not documented in Macsyma, the name
>MAT_Matlabname often works for the Matlab command
>Matlabname.
>
>An important difference between the Macsyma and Matlab
>languages is that Macsyma distinguishes Boolean, fixnum
>and floating point data types, while Matlab does not.
>
>Macsyma can translate Matlab command files to Macsyma
>command files.