Jack Schmidt
088ac99f65
ctranspose: Simplify method selection
2018-05-05 11:33:26 -04: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
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
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