Site hosted by Angelfire.com: Build your free website today!

Matrix Math

A package to make matrix functions quick and easy

Maintained by Jeff Craig

Matrix Math is a package currently in an early phase that allows a user to quickly and easily perform mathematical operations on matrices.
This project is licensed under the GPL and is looking for developers who would be willing to help. Currently the project is it's infancy, but I have plans forthe future of the project.
The Matrix Math package has been designed to be easy to use, so it shouldn't take long to learn. Currently it is only distributed as source, which can be found in the files section.
I'm also posting patches in the files section.
To use the patch simply place it in the mtrxmath directory and execute 'patch < mtrxmath.patch'

Just untar it and run 'make' from the new directory. The executable places itself in the same directory as everything else, but it is standalone after compilation so it can be moved anywhere.

Development Notes



1.0.2 really fixes the iversion code this time, there was still a problem with returning the incorrect signs on the matrix it was sent.

Jeff Squyres has contacted me a few times and pointed out a limitations in this project that when you get to dealing with bigger matrices (ones that exceed the size of the L1 and L2 caches) that the code will begin to run REALLY slow. He makes a really good point, and pointed me to the Matrix Template Library (MTL). After thinking about his comments, I have decided not to change the way this project is working at this time. Part of the reason I support Open Source and Free Software is because I think that it helps people learn to program more than anything else, and I really wish I'd gotten into it earlier. The project as it stands is written in a clear, easy to read manner, and shows people programatically how to perform several fairly complex higher math functions. For people doing pure science work that involves really large matrices, something that utilizes the MTL would be more appropriate. For people who need a very small, easy to use package, to learn with, or compute non-massive matrices, the Matrix Math package is a good alternative.


Files

The most recent changelog can be found here
The most recent readme file is located here
Finally, the most recent bug file is here

Tarballs


Latest Stable: mtrxmath-1.0.2.tar.gz
Latest Devel: There is not a Devel branch at the moment.

Patches


Patch from 1.0.1 to 1.0.2

Angelfire now supplies it's users with 50MB of webspace, so I will now host previous releases. Click Here for a list.

Debian Packages

Most recent DEB:mtrxmath_1.0.2-1_i386.deb
Most recent DSC:mtrxmath_1.0.2-1.dsc
The .orig.tar.gz file and the diff from the debianizing are on the files page.
I will not be creating RPMs or any other type of binary for this package. If somebody wants to package and provide RPMs I will host them.
Note to Debian Developers:
I plan to apply for Developership sometime soon, but I am currently a little busy. I will be doing a little to prepare for applying, and one of those things is becoming sposored. If you want to sponsor this package, please contact me and let me know you are. I have run these packages through lintian, and they should be error/warning free.

Plans

The 1.0.0(stable) release supports addition, subtraction, multiplication, division, inversion, and determinants, but still has problems with file input on non-US systems. It also sports a Makefile, and install and uninstall options in the Makefile

The future is a little hazier, now. Future versions will include code to compute anything that's seen fit for it. However,there are a few major features which are planned. If you have something you want to see in this source, send me an e-mail and tell me what it is, if you code C, don't be afraid to send me code too. I am considering implementing a kind of console mode that will allow for more matrices to be stored in memory, and more complex series' of computations.



Ports

Eugenia Loli ported the package to BeOS. Find the port here.



This page designed using a combination of Emacs,bluefish, and Mozilla
For high quality Linux systems visit Penguin Computing
Comments, Questions, Suggestions? E-Mail me here [an error occurred while processing this directive]