Software for multiplication of matrices

AI Thread Summary
For matrix multiplication, especially when dealing with symbolic calculations, several software options are discussed. Maple and Mathematica are noted for their capabilities, though they require licenses. MATLAB can perform symbolic matrix multiplication but needs an additional toolbox, while Julia and Python (with SciPy and NumPy) offer open-source alternatives. Maxima is suggested as a free option that may suffice for small matrices, although it has a learning curve. Ultimately, the choice of software may depend on specific needs, budget, and familiarity with the tools.
mr. bean
Messages
4
Reaction score
0
Software for multiplication of matrices

I'm going to do a lot of matrix multiplications, since I'm computing Jarlskog invariants. I would like to know if there is a great program for doing a lot of matrix multiplications? I tried with Maple but at some point it gives up. My matrices are not very large: 3x3 or 2x2, but the elements get quite complicated, since I do matrix multiplication of 8 matrices.

I do not have access to Mathematica, but would that be a possibility?

MATLAB seems complicated, since I'm using functions and letters.

I think someone talked about that Latex could do computations?

What are your suggestions? :)
 
Physics news on Phys.org
Latex is typically used to rende4 matrices for your manuscript not for doing calculations.

Matlab is quite a powerful tool which specializes in matrix manipulation. Many engineers and scientists use it in daily life. It's pricey if you're not a student though. It comes with many optional toolkits for more specialized work.

http://www.mathworks.com/examples/matlab

An alternative to mat lab would be Julia, an open source language with syntax very similar to mat lab but perhaps faster execution speeds.

If you get the anaconda distribution of Julia and Python you'll have a couple of options to consider for your work.

You should check around your dept to see what others are using. They can tell you xperiences better and you'll have someone to go to right there. Also you could check with Jarlskog to see what math tools were used in her research. You might be able to contact her at the perimeter institute and it would be a great way to setup a connection for the future.
 
mr. bean said:
MATLAB seems complicated, since I'm using functions and letters.
Do you mean that your calculations are symbolical?
 
Krylov said:
Do you mean that your calculations are symbolical?
Yes I do.
 
mr. bean said:
Yes I do.
Then I don't think MATLAB is helpful. It has an optional symbolical toolbox, but you would be better advised to use a system capable of symbolical calculations directly. I think that
Nidum said:
may not be useful either for symbolical calculation, but that poster can perhaps say more about this.

Like you, I use MAPLE myself. It suits my needs, even for quite heavy symbolical (multi)linear algebra, such as the calculation of normal forms for local bifurcations in ODE. Mathematica should have more or less the same capabilities. Both packages cost money. Both packages have student licenses.

An allegedly powerful package that may be worth checking out is Magma. Also see this comparison, which includes free as well as non-free packages.
 
Last edited:
  • Like
Likes S.G. Janssens
Nidum said:
Do you have personal experience with this? I would be curious to hear how it compares with the established CAS, in your opinion.
 
  • #10
Wiki has a good summary of sympy capabilities especially nice is the final conversion to latex for rendering.

https://en.m.wikipedia.org/wiki/SymPy

http://docs.sympy.org/latest/modules/physics/unitsystems/examples.html

Mathematica would be another option although it's pricey but perhaps not so much for students and it also has a cloud based version i.e. you'lll need a web browser to work with the online version.

http://www.wolfram.com/mathematica
 
Last edited:
  • #11
Thank you all for the suggestions. I will try again with Maple and Mathematica.
 
  • #12
For small order matrices you mention the free and pretty darn good Maxima would likely suffice. A bit of a learning curve, but not worse than Maple/Mathematica.
http://maxima.sourceforge.net/
 
  • #13
Krylov said:
Then I don't think MATLAB is helpful. It has an optional symbolical toolbox, but you would be better advised to use a system capable of symbolical calculations directly. I think that ...

Matlab is capable of doing symbolic matrix multiplication, and is actually really simple (just trying to expel any fears of the OP). MATLAB is an option for symbolic multiplication.
 
  • #14
perplexabot said:
Matlab is capable of doing symbolic matrix multiplication, and is actually really simple (just trying to expel any fears of the OP). MATLAB is an option for symbolic multiplication.
In my quote I didn't say that MATLAB is not capable of symbolic manipulation.

However, you need to purchase a separate toolbox for symbolic mathematics in MATLAB (the symbolic "mtimes" function is part of that toolbox). Also, I do not think that for demanding symbolic tasks it can compete with CAS. For lighter tasks it may be convenient, because one can do everything in one environment.

Everybody is at liberty to try, of course.

Similarly, I do not think that CAS are the weapon of choice for demanding numerical linear algebra problems. For this, I would use MATLAB or (when things get out of hand) Fortran. Others in this thread would probably opt for Python, Julia or C++.
 
  • Like
Likes perplexabot

Similar threads

Replies
9
Views
2K
Replies
6
Views
5K
Replies
1
Views
3K
Replies
2
Views
6K
Replies
15
Views
2K
Replies
15
Views
9K
Replies
3
Views
2K
Back
Top