* add placeholder for apply function
* added apply function
* add test coverage for apply utility
* stylsitic name change in apply source code
* stylistic format change to test
* improved description of function parameters
* moved the apply function to the public matrix functions
* update location and reference of unit test
* fixed function reference paths in apply for location in function
* changed path to apply in apply.test
* make apply a typed function, update unit test
* added typing error test to coverage
* remove apply.test.js from the utils test function
* added transform function for apply
* add unit test for apply.transform.js
* Fixed unit base recognition and formatting for user-defined units
* Began writing tests for range
* Use fuzzy comparisons for detecting range endpoint
* chore(package): update standard to version 12.0.0
* update to new lint version with --fix
I believe this mainly adds whitespace to `{}`'s.
* Replace assert.equal with assert.strictEqual
This breaks a lot of tests which I will endevour to fix in the next
commits.
* Fix most errors due to assert.strictEquals
Some instances of `strictEquals` are replaced by `deepEquals`.
`toString` has been used to make some string comparisions explicit.
Tests will still fail untill #1236 and #1237 are fixed.
* Fix assertion erros due to -0
With node 10, assert.strictEqual no longer considers `0 === -0`.
I missed these first time round as I was using node 8.
* Put toString correct side of bracket
I was converting the constructor to a string rather
than the result of the computation. Oops.
* Fixed#1236: quantileSeq has inconsistant return
* Update package-lock
* Fixed#1237: norm sometimes returning a complex number instead of number
* Fix cli tests
* More changes for standardjs, and fixes in unit tests
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.
* 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