Menu

HASEM

What HASEM is and What it can do

HASEM is a template C++ library which makes it possible for you to apply any arithmetic operations on matrices and vectors as simple as you would apply arithmetic operations on scalars. All the arithmetic operations are overloaded and there is no limitation on their order or combination. The arithmetic operations can be ordered or combined in any complex way. Any arithmetic expression may also contain scalars, matrices properties such as inverse, transpose, adjugate and so on. It is also very easy to configure HASEM to be a expression template.

With HASEM you can manipulate matrices in any way you might wish, you can manipulate matrices as if they were just scalars, or as if they were a standard library vector. Adding rows or columns to an existing matrix in any order, removing rows or columns from an existing matrix are just simple features of HASEM.

HASEM makes it possible to solve any linear equation of any kind, it might be homogenous or none homogenous, compute the inverse of square or none square matrices, find LU decomposition, find determinant and rank of matrices, calculate the characteristic polynomial of matrices, find the eigenvalues and eigen vectors and so on. In most cases HASEM uses many methods, therefore, you are not limited to just one method, you have the choice to define your desire method as default one.

With over 200 member functions and over 40 none member functions HASEM is almost able to solve any linear algebra problems. Many statistics problems are also supported.
Just imagine you want to apply an arithmetic operation including different type of matrices and scalars, a combination of integer, double and float , and you want to assign the result to a matrix which can be type of integer, double or float, but you do not want to care about casting or parsing. With this library you do not have to, however you can if you wish. HASEM takes care of casting and parsing the result to the target type.

HASEM support multidimensional as well, you can mix up your multidimensional matrix with other matrices with different size, and apply all operations on them as well.

HASEM makes it possible for you to save the computed matrix into files, and when required read it from files and load the data into objects, matrices.

It is also very easy to add your extension to HASEM.

Please see User's Guide

for more details.


Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.