1
0
forked from leto/LeMA

Added README

This commit is contained in:
Leto 2024-12-23 22:12:55 +01:00
parent d126e6aa63
commit da2c37a249

92
README.md Normal file
View File

@ -0,0 +1,92 @@
# 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
1. Clone or download the repository.
```bash
git clone https://git.letonet.fr/gitea_admin/lema.git
```
2. Include the `lema.h` file in your project.
```cpp
#include "lema.h"
```
That's it! You're ready to use Lema.
### Example Usage
#### Creating a Matrix
```cpp
#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
```cpp
#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
```cpp
#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](WTFPL) Licence.
---
Happy coding with **LeMA**.