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] ====