LeMA : Matrices simply
LeMA (short for "Leto Matrix") is a lightweight C++ header-only library designed to simplify matrix manipulation. LeMA will eventually be used for graphical and machine learning usage in my other projects.
Features
- Lightweight: Just a single header file.
- Easy to Use: Intuitive functions.
- Somewhat complete: Supports addition, subtraction, multiplication, and more.
- Ready to Integrate: Designed to work seamlessly with C++ code.
Getting Started
Installation
-
Clone or download the repository.
git clone https://git.letonet.fr/gitea_admin/lema.git
-
Include the
lema.h
file in your project.#include "lema.h"
That's it! You're ready to use Lema.
Example Usage
Creating a Matrix
#include "lema.h"
#include <iostream>
int main() {
Matrix mat(3, 2); // Create a 3 rows, 2 columns matrix
mat.Print("Weights"); // LeMA can print matrices in terminal for easy debugging
return 0;
}
Matrix Addition
#include "lema.h"
#include <iostream>
int main() {
Matrix a(2,2);
Matrix b(2,2);
a.Set(2.0F); // Fill both matrices
b.Set(3.0F);
a.Add(&b);
a.Print("A + B");
return 0;
}
Matrix Multiplication
#include "lema.h"
#include <iostream>
int main() {
Lema::Matrix<int> mat1(2, 2, {1, 2, 3, 4});
Lema::Matrix<int> mat2(2, 2, {1, 0, 0, 1});
auto result = mat1 * mat2;
std::cout << "Result of multiplication:\n";
result.print();
return 0;
}
Contributing
Contributions are welcome. If you find a bug or have a feature request, feel free to open an issue or submit a pull request.
License
This project is licensed under the https://en.wikipedia.org/wiki/WTFPL Licence.
Happy coding with LeMA.
Description
Languages
C++
100%