solve a linear system with LU decomposition
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
example
test
.travis.yml
LICENSE
index.js
package.json
readme.markdown

readme.markdown

ndarray-linear-solve

Solves a system of linear equations, similar to MATLAB's backslash operator, but not yet as sophisticated. (But maybe it will be someday soon! Pull requests welcome!)

testling badge

build status

example

var solve = require('ndarray-linear-solve');
var show = require('ndarray-show');
var ndarray = require('ndarray');

var A = ndarray([ 2, 1, -1, -3, -1, 2, -2, 1, 2 ], [ 3, 3 ], [ 1, 3 ]);
var B = ndarray([ 8, -11, -3 ])
var X = ndarray(new Float64Array(3))
var r = solve(X, A, B)
console.log('input:\n' + show(A), '\n');
if (r) {
  console.log('solution:\n' + show(X));
} else {
  console.log('matrix is singular')
}

output:

input:
   2.000    1.000   -1.000
  -3.000   -1.000    2.000
  -2.000    1.000    2.000 

solution:
   2.000    3.000   -1.000

methods

var solve = require('ndarray-linear-solve')

var solution = solve(X, A, B)

Solves the linear system, AX = B for X

  • X is a vector into which the solution is written
  • A is a matrix encoded as an ndarray
  • B is a vector, encoded as an ndarray

Returns true if the matrix has a solution, otherwise false.

install

With npm do:

npm install ndarray-linear-solve

license

MIT