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
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
jos
8724ae0ae5
Fixed #1013 : simplify wrongly simplifing some expressions containing unary minus, like 0 - -x
2018-01-13 14:37:27 +01:00
Jos de Jong
4504c3cc2a
Merge pull request #1003 from HarrySarson/3-arg-derivative
...
Improves derivative for 3 argument nodes. Closes #1002
2018-01-13 12:32:56 +01:00
Harry Sarson
84c9db3395
uses orginal order of switch statements
2018-01-08 11:18:44 +00:00
Harry Sarson
aaf6536138
ignores additional arguements in subtraction OperatorNode
2018-01-08 11:11:47 +00:00
Joel Hoover
6e6d0e37b1
Handle error in simplifyConstants when a function has all numeric arguments but is not itself defined
2018-01-08 01:13:14 -05:00
Joel Hoover
77dcd5abe9
Do not let simplifyConstants binarize functions with more than two arguments
2018-01-08 00:42:26 -05:00
Jos de Jong
9002e3b6eb
Merge pull request #1001 from joelhoover/simplify-improvement
...
Added rule to simplify that allows for combining of like terms in embedded quantities
2018-01-06 20:07:01 +01:00
Harry Sarson
05e6de2fd9
adds constant node checking with 3+ args
2018-01-04 14:25:05 +00:00
Harry Sarson
59e4c4ca97
derivative correctly handles '+' and '*' with three args
2018-01-04 13:42:00 +00:00
Joel Hoover
97098adad7
Added rule to simplify that allows for combining of like terms in embedded quantities
2018-01-02 01:02:19 -05:00
Jos de Jong
817ed3e6be
Merge pull request #996 from ovk/bignum-geometry
...
Added BigNumber support for distance() and intersect() functions
2017-12-29 09:46:53 +01:00
alik
69dfc4f78a
Updated error messages for distance and intersect functions to better indicate that only numbers and BigNumbers are supported
2017-12-28 18:55:26 -05:00
jos
67eeaea740
Merge branch 'simplify2' into develop
2017-12-28 17:08:46 +01:00
Karl Lew
f1d0beb252
fix for #998 unary minus bug
2017-12-26 15:34:11 -08:00
alik
4c842de7c6
Added BigNumber support for distance() and intersect() functions
2017-12-24 18:28:21 -05:00
jos
7df52c1d1a
Fixed #983 : pickRandom returning an array instead of single value when input was an array with just one value. Clarified docs.
2017-12-09 20:42:08 +01:00
Jos de Jong
df206f73fb
Merge pull request #980 from paulobuchsbaum/new_rationalize
...
Small fix
2017-12-03 19:54:52 +01:00
paulobuchsbaum
f933639a98
Small fix
...
Denominator and Numerator fields for polynomials with more than 1 variable.
2017-12-03 00:59:45 -02:00
jos
270d28b8d2
Update history, add embedded docs for rationalize
2017-12-02 20:34:40 +01:00
Jos de Jong
7b5d30fff4
Merge pull request #978 from paulobuchsbaum/new_rationalize
...
Rationalize. Is it almost ready?
2017-12-02 19:59:28 +01:00