{"_id":"robust-linear-solve","_rev":"4-3c3f26d675637a338a3b130cc2d76f68","name":"robust-linear-solve","description":"Exactly solve a low dimensional linear system","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"robust-linear-solve","version":"1.0.0","description":"Exactly solve a low dimensional linear system","main":"linsolve.js","directories":{"test":"test"},"dependencies":{"robust-determinant":"^1.1.0"},"devDependencies":{"robust-compare":"^1.0.0","robust-compress":"^1.0.0","robust-scale":"^1.0.2","robust-sum":"^1.0.0","validate-robust-sequence":"^1.0.0","tape":"^2.12.3"},"scripts":{"test":"tape test/*.js"},"repository":{"type":"git","url":"git://github.com/mikolalysenko/robust-linear-solve.git"},"keywords":["linear","solve","robust","exact","arithmetic"],"author":{"name":"Mikola Lysenko"},"license":"MIT","bugs":{"url":"https://github.com/mikolalysenko/robust-linear-solve/issues"},"homepage":"https://github.com/mikolalysenko/robust-linear-solve","_id":"robust-linear-solve@1.0.0","dist":{"shasum":"0cd6ac5040691a6f2aa3cd6311d728905ca3a1f1","tarball":"https://registry.npmjs.org/robust-linear-solve/-/robust-linear-solve-1.0.0.tgz","integrity":"sha512-I1qW8Bl9+UYeGNh2Vt8cwkcD74xWMyjnU6lSVcZrf0eyfwPmreflY3v0SvqCZOj5ddxnSS1Xp31igbFNcg1TGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGoe6bQFEmeka68Gimz1kXKublHx38wv05Ab8DjQWEecAiBuyT3HyF0ICtxPXioM2fkNjBk0LxUmzVjpBxkyf6lnEA=="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"mikolalysenko","email":"mikolalysenko@gmail.com"},"maintainers":[{"name":"mikolalysenko","email":"mikolalysenko@gmail.com"}]}},"readme":"robust-linear-solve\n===================\nAn exact linear solver for low dimensional systems.\n\n# Example\n\n```javascript\nvar linSolve = require(\"robust-linear-solve\")\n\nvar A = [ [1, 2, 3],\n          [3, 2, 1],\n          [0, 0, 1] ]\n\nvar b = [1, 2, 3]\n\nconsole.log(linSolve(A, b))\n```\n\nOutput:\n\n```javascript\n[ [ -14 ], [ 23 ], [ -12 ], [ -4 ] ]\n```\n\n# Install\n\n```\nnpm install robust-linear-solve\n```\n\n# API\n\n#### `require(\"robust-linear-solve\")(A, b)`\nFinds the exact solution to a linear system, `Ax = b`, using Cramer's rule.\n\n* `A` is a `n`-by-`n` square matrix, encoded as an array of arrays\n* `b` is an `n` dimensional vector encoded as a length `n` array\n\n**Returns** A projective `n+1` dimensional vector of non-overlapping increasing sequences representing the exact solution to the system.  That is to say, if `x` is the returned solution then in psuedocode we have the following constraint:\n\n`A [ x[0], x[1], ... ,  x[n-1] ] =  b * x[n]`\n\nOr in other words, the solution is given by the quotient:\n\n`[ x[0] / x[n], x[1] / x[n], .... , x[n-1] / x[n] ]`\n\nIf the system is not solvable, then the last coefficient, `x[n]` will be `0`.\n\n**Note** For up to `n=5`, you can avoid the extra method look up by calling `linSolve[n]` directly.\n\n# Credits\n(c) 2014 Mikola Lysenko. MIT License","maintainers":[{"name":"mikolalysenko","email":"mikolalysenko@gmail.com"}],"time":{"modified":"2022-06-26T13:47:24.892Z","created":"2014-05-08T16:29:54.130Z","1.0.0":"2014-05-08T16:29:54.130Z"},"homepage":"https://github.com/mikolalysenko/robust-linear-solve","keywords":["linear","solve","robust","exact","arithmetic"],"repository":{"type":"git","url":"git://github.com/mikolalysenko/robust-linear-solve.git"},"author":{"name":"Mikola Lysenko"},"bugs":{"url":"https://github.com/mikolalysenko/robust-linear-solve/issues"},"license":"MIT","readmeFilename":"README.md"}