This project is developped to provide a tool to compute and manipulate matrices in
and
sets. It allows to perform basic matrix operations as well as some decomposition and diagonalization operations. This tool is currently geared towards teaching and allows students to easily correct their algebra exercices, which are often difficult to correct by themselves. To print, it uses the beautiful
typesetting.
For developers : the library that we coded for matrix computations can be reused as a static or shared library in their own programs.
Static executables are available to compile the sources yourself. However, some conditions must be fulfilled to execute them without error. If you do not have the necessary conditions, please read the Build section. At present, the application is not available on Windows, but we are working to provide a complete cross-compilation application.
your OS must be :
- Debian based distribution with GLIBC version >= 2.27 ( i.e from Ubuntu 18.04 LTS )
- Mac OSX 10.14 or higher
You just have to download the good executable in the Releases
section and :
UNIX
Make sure the AppImage is executable with :
$ chmod a+x MatriXMiX-x86_64.AppImage
and after :
$ ./MatriXMiX-x86_64.AppImage
After that, if you want, you can put the executable in your Desktop entries with the AppImageLauncher tool .
OSX
Just double click on the .dmg ! (And drag it to your Applictions folder if you like MatriXMiX)
OSX and Unix
Before compiling, you must install the only dependencies of the project : The Qt Framework. Please note: sometimes, its installation can be a bit tedious. We advise you to install Qt OpenSource via their graphic installer available on the Official Website. Preferably, choose in the utility install version 12.8 of Qt because MatriXMiX has been entirely developed on it.
After, make sure the qmake tool is available in your PATH env variable by :
$ export PATH=~/Qt/5.12.8/gcc_64/bin:$PATH // Unix systems
$ export PATH=~/Qt/5.12.8/clang_64/bin:$PATH // OSX systems
Finally, you can execute the following command:
$ make
Which will generate the following executables in ./bin
folder :
- MatriXMiX : the MatriXMiX app in graphic version
- MatriXMiX_TXT : A TXT Version of MatriXMiX
- MatriXMiX_Test : regression tests for MatriXMiX
- libMatriXMiX.a : a static lib of our Matrix Module for your
C++
programs
And execute MatriXMiX with :
$ ./bin/MatriXMiX // Unix systems
$ open ./bin/MatriXMiX // OSX systems
- make clean : cleans .obj files, all the stuff to make the final binaries
- make veryclean : cleans all files generated by the make command
- make documentation : generates the
Doxygen
documentation
As explained before, you can generate full documentation with the command :
$ make documentation
Be ensure you have the required Doxygen
tool for this. if not, you can install it with :
$ sudo apt install doxygen // Unix systems
$ brew install doxygen // OSX systems
Using MatriXMiX is very simple. You can put some matrices in the Library section. To compute, you must go to main menu and select the type of operation you want. If you don't see a matrix for one of the operation , it's because the operation you have selected can not be executed for the matrix.
You can save your current library with the File menu. A .mtmx txt file is created. Also, you can load a .mtmx file to restore a previous library.
The MatriXMiX app uses :
- Eigen : a C++ template library for linear algebra
- JQKTPlotter : for
typesetting
- MuParserX : to parse the user inputs easily
For any problem of running, building, or using MatriXMiX, please contact us :
Support 1
Support 2
- p1712754 CERBULEAN Ana-Maria
- p1710179 OLIVIE Maxime
- p1716451 SEBIA Hana
- p1712760 BOUMAZA Tarik