Jump to content

Recommended Posts

Posted

Calculate what matrix? Or what calculations do you want to do with a matrix? Because any programming language that can do loops can be used to do matrix calculations, obviously some better than others. There are many matrix-specific routines out there, depending on whether you are inverting a matrix, or decomposing it, or finding the eigenvalues, etc. etc. And, then, usually depending on what type of matrix it is -- like symmetric, antisymmetric, sparse, Hermitian, etc. -- there are special routines that take advantage of the special type.

 

And, finally, the correct tool really depends on the application. If you just have a single 6x6 matrix you want to invert, even Excel 2003 can do it. Matlab is a good more general tool, but there are other math programs that may be better for what you want to do, too, like Mathematica or Mathcad. Lastly, for most complex situations, writing your own code in Fortran or C is usually best. You can then write your own matrix manipulations or use canned subroutines in a mathematical package of some sort.

 

All-in-all, to get better recommendations I think you need to provide a lot more detail about your application.

Posted

Day to day I deal with matrices all the time, but very abstractly. So I just use the rules of tensor algebra and analysis.

 

If I ever need to manipulate a matrix explicitly, I use Mathematica.

Posted

Python is free, with Numpy it's very easy to do matrix manipulation (and Numpy has a MatLab-like syntax).

 

If you need a lot of speed; C++ with Blitz++ or similar libraries.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.