Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Software for multiplication of matrices

  1. Sep 4, 2016 #1
    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? :)
     
  2. jcsd
  3. Sep 4, 2016 #2

    jedishrfu

    Staff: Mentor

    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.
     
  4. Sep 4, 2016 #3

    Nidum

    User Avatar
    Science Advisor
    Gold Member

  5. Sep 4, 2016 #4

    jedishrfu

    Staff: Mentor

    Yes these are available in the python/julia anaconda distro preconfigured to work out of the box.
     
  6. Sep 4, 2016 #5

    Krylov

    User Avatar
    Science Advisor
    Education Advisor

    Do you mean that your calculations are symbolical?
     
  7. Sep 4, 2016 #6
    Yes I do.
     
  8. Sep 4, 2016 #7

    Krylov

    User Avatar
    Science Advisor
    Education Advisor

    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
    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: Sep 4, 2016
  9. Sep 4, 2016 #8

    Nidum

    User Avatar
    Science Advisor
    Gold Member

  10. Sep 4, 2016 #9

    Krylov

    User Avatar
    Science Advisor
    Education Advisor

    Do you have personal experience with this? I would be curious to hear how it compares with the established CAS, in your opinion.
     
  11. Sep 4, 2016 #10

    jedishrfu

    Staff: Mentor

    Last edited: Sep 4, 2016
  12. Sep 10, 2016 #11
    Thank you all for the suggestions. I will try again with Maple and Mathematica.
     
  13. Sep 14, 2016 #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/
     
  14. Sep 14, 2016 #13

    perplexabot

    User Avatar
    Gold Member

    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.
     
  15. Sep 15, 2016 #14

    Krylov

    User Avatar
    Science Advisor
    Education Advisor

    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++.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted