1003 Commits

Author SHA1 Message Date
Eric Mansfield
a91998446d
Merge pull request #1124 from ericman314/matrix-inv-bugfix
inv bug fix
2018-06-01 19:04:21 -06:00
Eric Mansfield
07a48b4209 Bug fix in inv.js 2018-06-01 18:54:56 -06:00
Jos de Jong
afdd1c366b
Merge pull request #1118 from josdejong/determinant-lu-decomp
Improved performance of determinant
2018-05-31 20:56:17 +02:00
jos
a389d340e9 Fixed #1065, #1121: Fixed wrong documentation of function compareNatural and clarified the behavior for strings 2018-05-31 20:39:55 +02:00
Eric Mansfield
f6e5a47cda Improved performance of determinant 2018-05-29 22:37:47 -06:00
Jos de Jong
517cd7d15a
Merge pull request #1114 from ericman314/matrix-inverse-debugging
Add pivoting to matrix inverse algorithm, and tests
2018-05-29 20:41:49 +02:00
Eric Mansfield
ad390e8903 Add pivoting to matrix inverse algorithm, and tests 2018-05-28 14:58:55 -06:00
jos
d08223e7a5 Implemented functions equalText. See #1085. 2018-05-27 14:13:17 +02:00
jos
94accc1889 Implemented function compareText, see #1085 2018-05-26 18:41:31 +02:00
jos
29aebc51b4 Updated history 2018-05-05 21:16:29 +02:00
Jos de Jong
7332993df7
Merge pull request #976 from ericman314/expm
Matrix exponential
2018-05-05 21:13:12 +02:00
Eric Mansfield
e46934541b Adjust return code in expm.js 2018-05-05 08:10:51 -06:00
Eric Mansfield
7d66e34bad Added support for SparseMatrix 2018-05-02 20:51:43 -06:00
Jack Schmidt
9a63e0e82e Bugix for Frobenius norm of complex matrices.
Also improve efficiency from cubic to quadratic by avoiding taking
the trace of a mat-mat multiplication, and rather just summing the
formula for the diagonal entries.

Include a unit test to avoid regressions.
2018-05-02 10:58:42 -04:00
jos
6308e5b7fc Added missing embedded docs 2018-05-02 09:51:08 +02:00
Jos de Jong
9006e76f7e
Merge pull request #1046 from harrysarson/es6-maths
Implementation of EMCA 2015 maths functions in mathjs
2018-04-30 20:34:57 +02:00
Harry Sarson
4a693c83b8
Fixes bignumer implementation of es6 math functions.
Removes use of static property `ONE` which is not defined anymore.
2018-04-29 19:06:08 +01:00
Harry Sarson
29aeb4700f
ensure all files end with trailing \n 2018-04-27 21:41:02 +01:00
Harry Sarson
af417d8384
add use strict to the top of a bunch of files 2018-04-27 21:28:28 +01:00
Henrique Ferrolho
308d55dac4 Adds matrix function math.sqrtm(A) (#1086)
* Adds Matrix function math.sqrtm(A)

The current implementation is based on the Babylonian iterative method

* Removing default parameter as they are only supported from ES6/ES2015 onwards

* Increases the robustness of the `math.sqrtm()` Babylonian iterative method

* Adds Denman–Beavers iteration method to compute `X*X = A`

The Babylonian method is numerically unstable and more likely to fail to converge. For that reason, the Denman–Beavers iteration method is the one being used in the current version.

* Adds LaTeX for math.sqrtm(A)

* Updates `math.sqrtm(A)` suggestions list

* Forgot to require latex...

* Adds unit tests for `math.pow(math.sqrtm(A), 2) == A`

* Switches from SyntaxError to Error

Edits error message

* Adds unit tests for non-square matrices and LaTeX conversion

* Changes according to feedback

- Removes Babylonian method implementation;
- Adds unit tests for BigNumber matrices
- sqrtm.test.js refactoring
- Edits LaTeX conversion

* Ensures input/output type persistence

* Changes math.deepEqual to assert.deepEqual (or to approx.deepEqual where appropriate)

* Fixes BigNumber unit test
2018-04-27 22:00:00 +02:00
jos
0c87a1a64f Refactored local variables arg1, arg2 to arg0, arg1 to match the argument index 2018-04-11 13:27:50 +02:00
jos
229ff3d8ff Fixed #1063: derivative not working when resolving a variable with unary minus like math.derivative('-x', 'x') 2018-04-11 13:25:44 +02:00
jos
0dd092666a Fixed indentation 2018-04-08 20:29:37 +02:00
jos
ce4c294329 Updated history, added unit tests for passing a matrix to math.print 2018-04-08 20:13:35 +02:00
Jos de Jong
cbeff911d8
Merge pull request #1058 from jean-emmanuel/master
Add support for Array values argument in print function
2018-04-08 20:02:35 +02:00
jean-emmanuel
f4273d991a Add tests, example and documentation (Add support for Array values argument in print function) 2018-04-05 11:46:32 +02:00
jos
82eec1078e Fixed #1016: Extended math.typeof with support for ResultSet and nodes like SymbolNode 2018-04-04 11:24:45 +02:00
Favian Contreras
d8ec9c3638
More functions from ECMA 6 draft (expm1, log2, and log1p). 2018-03-08 17:10:59 +00:00
jean-emmanuel
0e05c0f9c7 Add support for Array values argument in print function 2018-03-04 14:08:55 +01:00
Clément P
59178319e4
Update isPrime.js 2018-03-01 12:08:28 +01:00
jos
417dc049de Invert some checks for zero 2018-02-21 10:56:33 +01:00
jos
0b9f22e9d8 Refactoring in handling DenseMatrix/SparseMatrix cases in most functions 2018-02-21 10:51:21 +01:00
jos
99ab11b234 Dropped constant uninitialized 2018-02-04 13:09:09 +01:00
jos
cb84036e8e Changes according to feedback from Harry 2018-02-01 19:45:07 +01:00
jos
82b41e696a - Implemented OperatorNode.isUnary and OperatorNode.isBinary.
- Explicit checks for number of arguments everywhere working with `OperatorNode` and `FunctionNode`.
- Fixed #1014: derivative silently ignoring additional arguments.
2018-01-31 11:00:39 +01:00
jos
0b6c0c13f7 Merge branch 'v4' into v4_constant_node
# Conflicts:
#	HISTORY.md
2018-01-27 16:58:17 +01:00
jos
02d7d592e4 Merged util function types.type into math.typeof (see #1023) 2018-01-25 20:21:22 +01:00
jos
cec05b59f9 Changed options lower and upper in function math.format to lowerExp and upperExp, see #676 2018-01-24 15:57:38 +01:00
jos
879e00aecd Change default precision to undefined for BigNumber formatting too. See #676 2018-01-24 14:44:36 +01:00
jos
0406b93fc6 fixed notation in function math.format no longer rounds to zero digits when no precision is specified: it leaves the digits as is. See #676. 2018-01-24 14:27:38 +01:00
jos
f26e5cea03 Improved error messages for statistical functions 2018-01-24 11:52:49 +01:00
jos
087f53d854 Merge branch 'v4' into v4_constant_node
# Conflicts:
#	HISTORY.md
2018-01-23 20:27:16 +01:00
jos
4469f6bd0c Remove support for implicit conversion of null to 0. See #830. 2018-01-23 20:26:38 +01:00
jos
b9c30ebcc7 Updated some docs 2018-01-23 16:43:44 +01:00
jos
326c9fb0de Fixed #680: compare strings by their numerical value instead of alphabetical order 2018-01-23 15:34:49 +01:00
jos
3f3d50f7a0 Fixed #833: the constants true, false, null, undefined, NaN, Infinity, and uninitialized are now parsed as ConstantNodes instead of SymbolNodes in the expression parser 2018-01-23 13:55:57 +01:00
jos
924299c42b Changed ConstantNode(valueStr, valueType) to ConstantNode(value) (breaking change) 2018-01-23 12:08:29 +01:00
jos
3af55ededa Merge branch 'simplify2' into develop 2018-01-17 12:16:05 +01:00
Karl Lew
c4b555c36f #1018 simplifyCore ParenthesisNode 2018-01-16 09:06:24 -08:00
jos
18f703beab Some refactoring in isCommutative and isAssociative (see #1013) 2018-01-13 20:56:59 +01:00