925 Commits

Author SHA1 Message Date
jos
f87ec1c6db Setup Babel compilation (WIP) 2018-06-06 14:31:33 +02:00
jos
1ddbf18cef Fix some more failing unit tests on browsers (part V) 2018-06-06 10:56:54 +02:00
jos
36f89a3598 Merge branch 'develop' into browser_testing
# Conflicts:
#	test/function/arithmetic/pow.test.js
2018-06-06 10:54:31 +02:00
jos
cf5c1c1af8 Fixes #1054: renamed eye to identity 2018-06-06 10:52:08 +02:00
jos
a19ebaca1c More fixes for unite tests on IE11 and Edge (part IV) 2018-06-06 10:21:54 +02:00
jos
814abf3f5d Merge branch 'develop' into browser_testing
# Conflicts:
#	package-lock.json
2018-06-06 09:51:37 +02:00
jos
63d05479b4 Merge branch 'develop' into v5 2018-06-06 09:45:13 +02:00
jos
8b5586914a More unit test tweaks to make everything work on IE 11 and Edge (part III) 2018-06-06 09:39:04 +02:00
jos
ee008d992e Fixes failing unit tests on IE11/Edge 2018-06-04 21:19:10 +02:00
Eric Mansfield
07a48b4209 Bug fix in inv.js 2018-06-01 18:54:56 -06: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 de Jong
553531b57c
Merge pull request #1093 from harrysarson/sep-tests
Separate tests that depend on node
2018-05-10 19:40:12 +02:00
jos
0abdfbe590 Upgraded dependencies for complex.js and fraction.js (see #1100) 2018-05-07 21:16:07 +02:00
jos
7c4920a9a3 Merge branch 'develop' into v5 2018-05-05 21:20:50 +02:00
Jos de Jong
b5c3ff2bdf
Merge pull request #1097 from jackschmidt/ctranspose
Add complex transpose. A' now takes conjugate.
2018-05-05 21:17:46 +02:00
Jos de Jong
7332993df7
Merge pull request #976 from ericman314/expm
Matrix exponential
2018-05-05 21:13:12 +02:00
jos
835aab10b5 Merge branch 'develop' into v5
# Conflicts:
#	lib/expression/embeddedDocs/function/arithmetic/sqrt.js
2018-05-05 09:53:51 +02: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
Harry Sarson
45fa1edb16
remove now unused require for matrixmarket
The code that depended on matrixmarket has been removed in c23761be but
I forgot to remove the `require()` in that commit.
2018-05-02 15:20:43 +01:00
Jack Schmidt
e1f0791574 Add complex transpose. A' now takes conjugate.
In matlab and octave the expression A' produces the Hermitian
conjugate, the complex conjugate of the transpose.

Now transpose produces the transpose, while ctranspose produces
the conjugate transpose. These are equal for real numbers, while
for complex numbers only the conjugate transpose is of much use.
2018-05-02 10:14:10 -04:00
Harry Sarson
29052cbdcc
use math.create() to prevent tests changing global state.
Tests should not import functions into global math namespace.
2018-05-01 17:40:57 +01:00
Harry Sarson
c23761bee0
separate tests that depend on node
Ddds new directory 'test/node' for tests which require node.
In practice these tests are the ones that depend on matrixmarket.
2018-05-01 17:38:51 +01: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
0053546868
fix testing of log2(0) 2018-04-29 19:31:30 +01:00
Harry Sarson
95f988181f
fix tests where bignumbers is infinite or NaN 2018-04-29 19:20:06 +01:00
Harry Sarson
b452d55cf7
change expected error message.
presumably typed-function now counts from zero.
2018-04-29 19:19:11 +01:00
Harry Sarson
bd868e7f64
Remove tests for null parameters.
mathjs no longer coerses null to zero so don't test for this.
2018-04-29 19:06:36 +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
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
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
Dakota Blair
c2917dca52 Fixed offset bug. 2018-03-21 19:46:31 +00:00
Dakota Blair
cbcf27282e Updated behavior of nthRoots 2018-03-21 19:05:09 +00:00
Dakota Blair
c591c07347 Fixed #851: More consistent behavior of sqrt, nthRoot, and pow 2018-03-21 19:05:08 +00:00
Favian Contreras
d8ec9c3638
More functions from ECMA 6 draft (expm1, log2, and log1p). 2018-03-08 17:10:59 +00:00
jos
bf3f62b564 Upgraded to typed-function@1.0.0 2018-02-20 20:59:05 +01:00
jos
99ab11b234 Dropped constant uninitialized 2018-02-04 13:09:09 +01:00
Jos de Jong
cdda817d9f
Merge pull request #1036 from ericman314/implicit-multiplication
Implicit multiplication
2018-02-04 11:55:15 +01:00
Eric Mansfield
17a4e33ae2 Added tests 2018-02-02 21:14:33 -07: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
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