MathGroup Archive 1996

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Matrix Algebra Weaknesses

  • To: mathgroup at smc.vnet.net
  • Subject: [mg3045] Re: Matrix Algebra Weaknesses
  • From: Mike Yukish <may106 at psu.edu>
  • Date: Sun, 28 Jan 1996 03:21:14 -0500
  • Organization: Applied Research Lab
  • Sender: owner-wri-mathgroup at wri.com

In article <4e4nc2$6pj at dragonfly.wri.com> Mark
Evans, evans at gte.net writes:
>I have done a lot of work with matrices and image arrays in Mathematica. 
>In response to the posted problem of replacing parts of a matrix, I simply
>would like to comment that Mathematica is just plain *weak* in this area.
>


The lack of intuitive manipulation of matrices
and vectors is THE weak point of mathematica,
for many people. The inability to easily and
flexibly deal with block matrix operations is
crippling for my purposes. The ease of
manipulation of matrices in matlab is orders of
magnitude simpler than mathematica.

>I have already suggested to Wolfram Research that they transform virtually
>all matrix functions into built-ins.  Matrix algebra is so common in
>engineering and science that it should be as highly optimized as
>possible.  WRI might go so far as to implement Matrix[] and Vector[]
>objects as distinct from equivalent List[] objects.

I agree completely. I would hope to be able to
symbolically manipulate the matrices and blocks
of matrices as easily as any other entity in
mathematica. And a row vector is different from
a column vector. That mathematica does not
differentiate between the two can lead to
inadvertant errors. Reminds me of implicit type
casting in the C language, where you don't
realize that you just converted to a float to an
integer, and it leads to hard-to-find bugs.
Mathematica can occasionally cover for my
programming error by implicitly assuming I meant
X to be a row vector when I actually meant it to
be a column vector, and logically my program
should fail, but mma implicitly fixes it for me.
An example is when I accidently stripped off a
row of a square matrix instead of a column. The
program was logically correct, but garbage came
out.

Just one more general complaint. It seems that
many operators in mathematica do 'double duty',
and it makes mathematica code hard to read. The
bracket operators [ ] are the best example.
Using a notebook, automatically changing the
color of text based on whether it is a keyword
or not, such as is in many editors supplied with
software development packages, would help make
programs more readable.

But, I wouldn't have any complaints if I didn't
use it!


Mike Yukish
Applied Research Lab
may106 at psu.edu
http://quark.arl.psu.edu/staff/yuke-home.html

==== [MESSAGE SEPARATOR] ====


  • Prev by Date: Re: PowerBook Woes
  • Next by Date: Two questions regarding command line interface
  • Previous by thread: Matrix Algebra Weaknesses
  • Next by thread: Complex Default