Skip to content

larspars/linalg.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

#What is linalg.js

linalg.js is a linear algebra library for javascript. It is based on Typed Arrays, so you can have fast interop with, for example, WebGL code that uses Typed Arrays.

Example:

var matrix = new Matrix([[7, 3, -1, 2], 
                         [3, 8, 1, -4], 
                         [-1, 1, 4, -1], 
                         [2, -4, -1, 6]]);
						 
//Perform LU decomposition
var res = matrix.LU(),
	L = res[0],
	U = res[1];

var expectedL = new Matrix([[ 1.        ,  0.        ,  0.        ,  0.        ],
							[ 0.42857143,  1.        ,  0.        ,  0.        ],
							[-0.14285714,  0.21276596,  1.        ,  0.        ],
							[ 0.28571429, -0.72340426,  0.08982036,  1.        ]]);
var expectedU = new Matrix([[ 7.        ,  3.        , -1.        ,  2.        ],
							[ 0.        ,  6.71428571,  1.42857143, -4.85714286],
							[ 0.        ,  0.        ,  3.55319149,  0.31914894],
							[ 0.        ,  0.        ,  0.        ,  1.88622754]]);
	
assert(expectedL.allClose(L));
assert(expectedU.allClose(U));

##What's in it?

Currently, the following functions are implemented: Matrix multiplication, matrix inverse, element wise operators (+-*/), LU decomposition, matrix determinant and the Frobenius norm.

##Will this code work in all circumstances?

Probably not.

License: MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published