0.1.0-beta.0 • Published 3 years ago
@nippunsharma/linalg v0.1.0-beta.0
@webml/linalg is a linear algebra library for the browser based on armadillo.
@webml/linalg uses Web Assembly to run armadillo code (in C++) in the browser.
Steps to install.
This library can be installed directly via npm:
npm install @webml/linalgBasic usage.
import { Matrix } from "@webml/linalg";
async getMatrix() {
const A: Matrix<number> = new Matrix<number>({ n_rows: 2, n_cols: 2 }, "float");
await A.init();
return A;
}
const A = await getMatrix();
A.funcFill((i, j) => i + j); // fill matrix A.
const B = A.t(); // transpose of A.
console.log(A.toString());
console.log(B.toString());Steps to build.
- Clone github repo.
git clone --recurse-submodules https://github.com/NippunSharma/webml-linalg- Move to project dir.
cd webml-linalg
mkdir -p build- Build clapack object files first.
make clapack- Build
webml_linalg.wasmbinary along withwebml_linalg.js.
make webml_linalg- Now, generate the
distdir.
npm run buildAlternatively, you can directly execute npm run build and it will
use the pre-existing binary file in resources/. However, if anything
is changed in src/embind, it is recommended to rebuild the binary.
0.1.0-beta.0
3 years ago