mathjs 12.1.0 → 12.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HISTORY.md +13 -0
- package/lib/browser/math.js +1 -1
- package/lib/browser/math.js.LICENSE.txt +2 -2
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/core/function/import.js +0 -1
- package/lib/cjs/core/function/typed.js +0 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesAndTransform.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesBitAndTransform.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesBitOrTransform.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesOrTransform.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +28 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +33 -1
- package/lib/cjs/entry/pureFunctionsAny.generated.js +7 -7
- package/lib/cjs/expression/embeddedDocs/function/matrix/eigs.js +1 -1
- package/lib/cjs/expression/function/help.js +0 -1
- package/lib/cjs/expression/node/AccessorNode.js +2 -2
- package/lib/cjs/expression/node/ArrayNode.js +2 -2
- package/lib/cjs/expression/node/AssignmentNode.js +2 -2
- package/lib/cjs/expression/node/BlockNode.js +2 -2
- package/lib/cjs/expression/node/ConditionalNode.js +2 -2
- package/lib/cjs/expression/node/ConstantNode.js +2 -2
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +2 -2
- package/lib/cjs/expression/node/FunctionNode.js +6 -6
- package/lib/cjs/expression/node/IndexNode.js +2 -2
- package/lib/cjs/expression/node/Node.js +18 -5
- package/lib/cjs/expression/node/ObjectNode.js +2 -2
- package/lib/cjs/expression/node/OperatorNode.js +10 -3
- package/lib/cjs/expression/node/ParenthesisNode.js +2 -2
- package/lib/cjs/expression/node/RangeNode.js +2 -2
- package/lib/cjs/expression/node/RelationalNode.js +2 -2
- package/lib/cjs/expression/node/SymbolNode.js +2 -2
- package/lib/cjs/expression/operators.js +0 -2
- package/lib/cjs/expression/parse.js +0 -3
- package/lib/cjs/expression/transform/and.transform.js +39 -0
- package/lib/cjs/expression/transform/bitAnd.transform.js +44 -0
- package/lib/cjs/expression/transform/bitOr.transform.js +45 -0
- package/lib/cjs/expression/transform/forEach.transform.js +0 -1
- package/lib/cjs/expression/transform/or.transform.js +37 -0
- package/lib/cjs/factoriesAny.js +29 -1
- package/lib/cjs/factoriesNumber.js +1 -0
- package/lib/cjs/function/algebra/derivative.js +0 -1
- package/lib/cjs/function/algebra/rationalize.js +0 -2
- package/lib/cjs/function/algebra/simplify.js +0 -1
- package/lib/cjs/function/algebra/simplifyConstant.js +0 -1
- package/lib/cjs/function/algebra/simplifyCore.js +0 -2
- package/lib/cjs/function/arithmetic/cube.js +0 -2
- package/lib/cjs/function/arithmetic/nthRoots.js +0 -1
- package/lib/cjs/function/arithmetic/unaryPlus.js +0 -3
- package/lib/cjs/function/matrix/det.js +0 -1
- package/lib/cjs/function/matrix/diff.js +0 -2
- package/lib/cjs/function/matrix/matrixFromColumns.js +0 -1
- package/lib/cjs/function/matrix/matrixFromRows.js +0 -1
- package/lib/cjs/function/matrix/partitionSelect.js +0 -1
- package/lib/cjs/function/matrix/resize.js +0 -1
- package/lib/cjs/function/matrix/transpose.js +0 -1
- package/lib/cjs/function/probability/pickRandom.js +0 -1
- package/lib/cjs/function/statistics/median.js +0 -1
- package/lib/cjs/function/statistics/prod.js +0 -1
- package/lib/cjs/function/utils/isNegative.js +0 -1
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/plain/number/arithmetic.js +0 -1
- package/lib/cjs/plain/number/probability.js +0 -2
- package/lib/cjs/type/complex/function/complex.js +0 -1
- package/lib/cjs/type/fraction/function/fraction.js +0 -1
- package/lib/cjs/type/unit/Unit.js +0 -2
- package/lib/cjs/type/unit/function/unit.js +0 -2
- package/lib/cjs/utils/is.js +0 -1
- package/lib/cjs/utils/latex.js +0 -2
- package/lib/cjs/version.js +1 -1
- package/lib/esm/core/function/import.js +0 -1
- package/lib/esm/core/function/typed.js +0 -1
- package/lib/esm/entry/dependenciesAny/dependenciesAndTransform.generated.js +22 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitAndTransform.generated.js +22 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitOrTransform.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesOrTransform.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny.generated.js +4 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +35 -3
- package/lib/esm/entry/pureFunctionsAny.generated.js +8 -8
- package/lib/esm/expression/embeddedDocs/function/matrix/eigs.js +1 -1
- package/lib/esm/expression/function/help.js +0 -1
- package/lib/esm/expression/node/AccessorNode.js +1 -1
- package/lib/esm/expression/node/ArrayNode.js +1 -1
- package/lib/esm/expression/node/AssignmentNode.js +1 -1
- package/lib/esm/expression/node/BlockNode.js +1 -1
- package/lib/esm/expression/node/ConditionalNode.js +1 -1
- package/lib/esm/expression/node/ConstantNode.js +1 -1
- package/lib/esm/expression/node/FunctionAssignmentNode.js +1 -1
- package/lib/esm/expression/node/FunctionNode.js +5 -5
- package/lib/esm/expression/node/IndexNode.js +1 -1
- package/lib/esm/expression/node/Node.js +15 -4
- package/lib/esm/expression/node/ObjectNode.js +1 -1
- package/lib/esm/expression/node/OperatorNode.js +9 -2
- package/lib/esm/expression/node/ParenthesisNode.js +1 -1
- package/lib/esm/expression/node/RangeNode.js +1 -2
- package/lib/esm/expression/node/RelationalNode.js +1 -1
- package/lib/esm/expression/node/SymbolNode.js +1 -1
- package/lib/esm/expression/operators.js +0 -2
- package/lib/esm/expression/parse.js +0 -3
- package/lib/esm/expression/transform/and.transform.js +35 -0
- package/lib/esm/expression/transform/bitAnd.transform.js +40 -0
- package/lib/esm/expression/transform/bitOr.transform.js +41 -0
- package/lib/esm/expression/transform/forEach.transform.js +0 -1
- package/lib/esm/expression/transform/or.transform.js +33 -0
- package/lib/esm/factoriesAny.js +5 -1
- package/lib/esm/function/algebra/derivative.js +0 -1
- package/lib/esm/function/algebra/rationalize.js +0 -2
- package/lib/esm/function/algebra/simplify.js +0 -1
- package/lib/esm/function/algebra/simplifyConstant.js +0 -1
- package/lib/esm/function/algebra/simplifyCore.js +0 -2
- package/lib/esm/function/arithmetic/cube.js +0 -2
- package/lib/esm/function/arithmetic/nthRoots.js +0 -1
- package/lib/esm/function/arithmetic/unaryPlus.js +0 -3
- package/lib/esm/function/matrix/det.js +0 -1
- package/lib/esm/function/matrix/diff.js +0 -2
- package/lib/esm/function/matrix/matrixFromColumns.js +0 -1
- package/lib/esm/function/matrix/matrixFromRows.js +0 -1
- package/lib/esm/function/matrix/partitionSelect.js +0 -1
- package/lib/esm/function/matrix/resize.js +0 -1
- package/lib/esm/function/matrix/transpose.js +0 -1
- package/lib/esm/function/probability/pickRandom.js +0 -1
- package/lib/esm/function/statistics/median.js +0 -1
- package/lib/esm/function/statistics/prod.js +0 -1
- package/lib/esm/function/utils/isNegative.js +0 -1
- package/lib/esm/plain/number/arithmetic.js +0 -1
- package/lib/esm/plain/number/probability.js +0 -2
- package/lib/esm/type/complex/function/complex.js +0 -1
- package/lib/esm/type/fraction/function/fraction.js +0 -1
- package/lib/esm/type/unit/Unit.js +0 -2
- package/lib/esm/type/unit/function/unit.js +0 -2
- package/lib/esm/utils/is.js +0 -1
- package/lib/esm/utils/latex.js +0 -2
- package/lib/esm/version.js +1 -1
- package/package.json +18 -18
|
@@ -190,14 +190,14 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
|
190
190
|
* @returns {RelationalNode}
|
|
191
191
|
*/
|
|
192
192
|
}, {
|
|
193
|
-
key: "
|
|
193
|
+
key: "_toHTML",
|
|
194
194
|
value:
|
|
195
195
|
/**
|
|
196
196
|
* Get HTML representation
|
|
197
197
|
* @param {Object} options
|
|
198
198
|
* @return {string} str
|
|
199
199
|
*/
|
|
200
|
-
function
|
|
200
|
+
function _toHTML(options) {
|
|
201
201
|
var parenthesis = options && options.parenthesis ? options.parenthesis : 'keep';
|
|
202
202
|
var precedence = (0, _operators.getPrecedence)(this, parenthesis, options && options.implicit);
|
|
203
203
|
var paramStrings = this.params.map(function (p, index) {
|
|
@@ -154,8 +154,8 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
|
154
154
|
* @override
|
|
155
155
|
*/
|
|
156
156
|
}, {
|
|
157
|
-
key: "
|
|
158
|
-
value: function
|
|
157
|
+
key: "_toHTML",
|
|
158
|
+
value: function _toHTML(options) {
|
|
159
159
|
var name = (0, _string.escape)(this.name);
|
|
160
160
|
if (name === 'true' || name === 'false') {
|
|
161
161
|
return '<span class="math-symbol math-boolean">' + name + '</span>';
|
|
@@ -178,7 +178,6 @@ var properties = exports.properties = [{
|
|
|
178
178
|
// they're 2 dimensional, so parens aren't needed
|
|
179
179
|
// in LaTeX
|
|
180
180
|
},
|
|
181
|
-
|
|
182
181
|
'OperatorNode:dotMultiply': {
|
|
183
182
|
op: '.*',
|
|
184
183
|
associativity: 'left',
|
|
@@ -229,7 +228,6 @@ var properties = exports.properties = [{
|
|
|
229
228
|
// LaTeX because it's 2 dimensional
|
|
230
229
|
// (it's on top)
|
|
231
230
|
},
|
|
232
|
-
|
|
233
231
|
'OperatorNode:dotPow': {
|
|
234
232
|
op: '.^',
|
|
235
233
|
associativity: 'right',
|
|
@@ -172,7 +172,6 @@ var createParse = exports.createParse = /* #__PURE__ */(0, _factory.factory)(nam
|
|
|
172
172
|
t: '\t'
|
|
173
173
|
// note that \u is handled separately in parseStringToken()
|
|
174
174
|
};
|
|
175
|
-
|
|
176
175
|
function initialState() {
|
|
177
176
|
return {
|
|
178
177
|
extraNodes: {},
|
|
@@ -873,7 +872,6 @@ var createParse = exports.createParse = /* #__PURE__ */(0, _factory.factory)(nam
|
|
|
873
872
|
to: 'to',
|
|
874
873
|
"in": 'to' // alias of 'to'
|
|
875
874
|
};
|
|
876
|
-
|
|
877
875
|
while ((0, _object.hasOwnProperty)(operators, state.token)) {
|
|
878
876
|
name = state.token;
|
|
879
877
|
fn = operators[name];
|
|
@@ -930,7 +928,6 @@ var createParse = exports.createParse = /* #__PURE__ */(0, _factory.factory)(nam
|
|
|
930
928
|
node = new RangeNode(params[0], params[1]); // start, end
|
|
931
929
|
}
|
|
932
930
|
}
|
|
933
|
-
|
|
934
931
|
return node;
|
|
935
932
|
}
|
|
936
933
|
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createAndTransform = void 0;
|
|
7
|
+
var _and = require("../../function/logical/and.js");
|
|
8
|
+
var _factory = require("../../utils/factory.js");
|
|
9
|
+
var _is = require("../../utils/is.js");
|
|
10
|
+
var name = 'and';
|
|
11
|
+
var dependencies = ['typed', 'matrix', 'zeros', 'add', 'equalScalar', 'not', 'concat'];
|
|
12
|
+
var createAndTransform = exports.createAndTransform = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
13
|
+
var typed = _ref.typed,
|
|
14
|
+
matrix = _ref.matrix,
|
|
15
|
+
equalScalar = _ref.equalScalar,
|
|
16
|
+
zeros = _ref.zeros,
|
|
17
|
+
not = _ref.not,
|
|
18
|
+
concat = _ref.concat;
|
|
19
|
+
var and = (0, _and.createAnd)({
|
|
20
|
+
typed: typed,
|
|
21
|
+
matrix: matrix,
|
|
22
|
+
equalScalar: equalScalar,
|
|
23
|
+
zeros: zeros,
|
|
24
|
+
not: not,
|
|
25
|
+
concat: concat
|
|
26
|
+
});
|
|
27
|
+
function andTransform(args, math, scope) {
|
|
28
|
+
var condition1 = args[0].compile().evaluate(scope);
|
|
29
|
+
if (!(0, _is.isCollection)(condition1) && !and(condition1, true)) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
var condition2 = args[1].compile().evaluate(scope);
|
|
33
|
+
return and(condition1, condition2);
|
|
34
|
+
}
|
|
35
|
+
andTransform.rawArgs = true;
|
|
36
|
+
return andTransform;
|
|
37
|
+
}, {
|
|
38
|
+
isTransformFunction: true
|
|
39
|
+
});
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createBitAndTransform = void 0;
|
|
7
|
+
var _bitAnd = require("../../function/bitwise/bitAnd.js");
|
|
8
|
+
var _factory = require("../../utils/factory.js");
|
|
9
|
+
var _is = require("../../utils/is.js");
|
|
10
|
+
var name = 'bitAnd';
|
|
11
|
+
var dependencies = ['typed', 'matrix', 'zeros', 'add', 'equalScalar', 'not', 'concat'];
|
|
12
|
+
var createBitAndTransform = exports.createBitAndTransform = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
13
|
+
var typed = _ref.typed,
|
|
14
|
+
matrix = _ref.matrix,
|
|
15
|
+
equalScalar = _ref.equalScalar,
|
|
16
|
+
zeros = _ref.zeros,
|
|
17
|
+
not = _ref.not,
|
|
18
|
+
concat = _ref.concat;
|
|
19
|
+
var bitAnd = (0, _bitAnd.createBitAnd)({
|
|
20
|
+
typed: typed,
|
|
21
|
+
matrix: matrix,
|
|
22
|
+
equalScalar: equalScalar,
|
|
23
|
+
zeros: zeros,
|
|
24
|
+
not: not,
|
|
25
|
+
concat: concat
|
|
26
|
+
});
|
|
27
|
+
function bitAndTransform(args, math, scope) {
|
|
28
|
+
var condition1 = args[0].compile().evaluate(scope);
|
|
29
|
+
if (!(0, _is.isCollection)(condition1)) {
|
|
30
|
+
if (isNaN(condition1)) {
|
|
31
|
+
return NaN;
|
|
32
|
+
}
|
|
33
|
+
if (condition1 === 0 || condition1 === false) {
|
|
34
|
+
return 0;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
var condition2 = args[1].compile().evaluate(scope);
|
|
38
|
+
return bitAnd(condition1, condition2);
|
|
39
|
+
}
|
|
40
|
+
bitAndTransform.rawArgs = true;
|
|
41
|
+
return bitAndTransform;
|
|
42
|
+
}, {
|
|
43
|
+
isTransformFunction: true
|
|
44
|
+
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createBitOrTransform = void 0;
|
|
7
|
+
var _bitOr = require("../../function/bitwise/bitOr.js");
|
|
8
|
+
var _factory = require("../../utils/factory.js");
|
|
9
|
+
var _is = require("../../utils/is.js");
|
|
10
|
+
var name = 'bitOr';
|
|
11
|
+
var dependencies = ['typed', 'matrix', 'equalScalar', 'DenseMatrix', 'concat'];
|
|
12
|
+
var createBitOrTransform = exports.createBitOrTransform = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
13
|
+
var typed = _ref.typed,
|
|
14
|
+
matrix = _ref.matrix,
|
|
15
|
+
equalScalar = _ref.equalScalar,
|
|
16
|
+
DenseMatrix = _ref.DenseMatrix,
|
|
17
|
+
concat = _ref.concat;
|
|
18
|
+
var bitOr = (0, _bitOr.createBitOr)({
|
|
19
|
+
typed: typed,
|
|
20
|
+
matrix: matrix,
|
|
21
|
+
equalScalar: equalScalar,
|
|
22
|
+
DenseMatrix: DenseMatrix,
|
|
23
|
+
concat: concat
|
|
24
|
+
});
|
|
25
|
+
function bitOrTransform(args, math, scope) {
|
|
26
|
+
var condition1 = args[0].compile().evaluate(scope);
|
|
27
|
+
if (!(0, _is.isCollection)(condition1)) {
|
|
28
|
+
if (isNaN(condition1)) {
|
|
29
|
+
return NaN;
|
|
30
|
+
}
|
|
31
|
+
if (condition1 === -1) {
|
|
32
|
+
return -1;
|
|
33
|
+
}
|
|
34
|
+
if (condition1 === true) {
|
|
35
|
+
return 1;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
var condition2 = args[1].compile().evaluate(scope);
|
|
39
|
+
return bitOr(condition1, condition2);
|
|
40
|
+
}
|
|
41
|
+
bitOrTransform.rawArgs = true;
|
|
42
|
+
return bitOrTransform;
|
|
43
|
+
}, {
|
|
44
|
+
isTransformFunction: true
|
|
45
|
+
});
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createOrTransform = void 0;
|
|
7
|
+
var _or = require("../../function/logical/or.js");
|
|
8
|
+
var _factory = require("../../utils/factory.js");
|
|
9
|
+
var _is = require("../../utils/is.js");
|
|
10
|
+
var name = 'or';
|
|
11
|
+
var dependencies = ['typed', 'matrix', 'equalScalar', 'DenseMatrix', 'concat'];
|
|
12
|
+
var createOrTransform = exports.createOrTransform = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
13
|
+
var typed = _ref.typed,
|
|
14
|
+
matrix = _ref.matrix,
|
|
15
|
+
equalScalar = _ref.equalScalar,
|
|
16
|
+
DenseMatrix = _ref.DenseMatrix,
|
|
17
|
+
concat = _ref.concat;
|
|
18
|
+
var or = (0, _or.createOr)({
|
|
19
|
+
typed: typed,
|
|
20
|
+
matrix: matrix,
|
|
21
|
+
equalScalar: equalScalar,
|
|
22
|
+
DenseMatrix: DenseMatrix,
|
|
23
|
+
concat: concat
|
|
24
|
+
});
|
|
25
|
+
function orTransform(args, math, scope) {
|
|
26
|
+
var condition1 = args[0].compile().evaluate(scope);
|
|
27
|
+
if (!(0, _is.isCollection)(condition1) && or(condition1, false)) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
var condition2 = args[1].compile().evaluate(scope);
|
|
31
|
+
return or(condition1, condition2);
|
|
32
|
+
}
|
|
33
|
+
orTransform.rawArgs = true;
|
|
34
|
+
return orTransform;
|
|
35
|
+
}, {
|
|
36
|
+
isTransformFunction: true
|
|
37
|
+
});
|
package/lib/cjs/factoriesAny.js
CHANGED
|
@@ -69,6 +69,12 @@ Object.defineProperty(exports, "createAnd", {
|
|
|
69
69
|
return _and.createAnd;
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
|
+
Object.defineProperty(exports, "createAndTransform", {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function get() {
|
|
75
|
+
return _andTransform.createAndTransform;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
72
78
|
Object.defineProperty(exports, "createApply", {
|
|
73
79
|
enumerable: true,
|
|
74
80
|
get: function get() {
|
|
@@ -183,6 +189,12 @@ Object.defineProperty(exports, "createBitAnd", {
|
|
|
183
189
|
return _bitAnd.createBitAnd;
|
|
184
190
|
}
|
|
185
191
|
});
|
|
192
|
+
Object.defineProperty(exports, "createBitAndTransform", {
|
|
193
|
+
enumerable: true,
|
|
194
|
+
get: function get() {
|
|
195
|
+
return _bitAndTransform.createBitAndTransform;
|
|
196
|
+
}
|
|
197
|
+
});
|
|
186
198
|
Object.defineProperty(exports, "createBitNot", {
|
|
187
199
|
enumerable: true,
|
|
188
200
|
get: function get() {
|
|
@@ -195,6 +207,12 @@ Object.defineProperty(exports, "createBitOr", {
|
|
|
195
207
|
return _bitOr.createBitOr;
|
|
196
208
|
}
|
|
197
209
|
});
|
|
210
|
+
Object.defineProperty(exports, "createBitOrTransform", {
|
|
211
|
+
enumerable: true,
|
|
212
|
+
get: function get() {
|
|
213
|
+
return _bitOrTransform.createBitOrTransform;
|
|
214
|
+
}
|
|
215
|
+
});
|
|
198
216
|
Object.defineProperty(exports, "createBitXor", {
|
|
199
217
|
enumerable: true,
|
|
200
218
|
get: function get() {
|
|
@@ -1353,6 +1371,12 @@ Object.defineProperty(exports, "createOr", {
|
|
|
1353
1371
|
return _or.createOr;
|
|
1354
1372
|
}
|
|
1355
1373
|
});
|
|
1374
|
+
Object.defineProperty(exports, "createOrTransform", {
|
|
1375
|
+
enumerable: true,
|
|
1376
|
+
get: function get() {
|
|
1377
|
+
return _orTransform.createOrTransform;
|
|
1378
|
+
}
|
|
1379
|
+
});
|
|
1356
1380
|
Object.defineProperty(exports, "createParenthesisNode", {
|
|
1357
1381
|
enumerable: true,
|
|
1358
1382
|
get: function get() {
|
|
@@ -2434,4 +2458,8 @@ var _sumTransform = require("./expression/transform/sum.transform.js");
|
|
|
2434
2458
|
var _quantileSeqTransform = require("./expression/transform/quantileSeq.transform.js");
|
|
2435
2459
|
var _cumsumTransform = require("./expression/transform/cumsum.transform.js");
|
|
2436
2460
|
var _varianceTransform = require("./expression/transform/variance.transform.js");
|
|
2437
|
-
var _printTransform = require("./expression/transform/print.transform.js");
|
|
2461
|
+
var _printTransform = require("./expression/transform/print.transform.js");
|
|
2462
|
+
var _andTransform = require("./expression/transform/and.transform.js");
|
|
2463
|
+
var _orTransform = require("./expression/transform/or.transform.js");
|
|
2464
|
+
var _bitAndTransform = require("./expression/transform/bitAnd.transform.js");
|
|
2465
|
+
var _bitOrTransform = require("./expression/transform/bitOr.transform.js");
|
|
@@ -983,6 +983,7 @@ var createSubset = exports.createSubset = /* #__PURE__ */(0, _factory.factory)('
|
|
|
983
983
|
});
|
|
984
984
|
// TODO: provide number+array implementations for map, filter, forEach, zeros, ...?
|
|
985
985
|
// TODO: create range implementation for range?
|
|
986
|
+
|
|
986
987
|
// probability
|
|
987
988
|
var createCombinations = exports.createCombinations = createNumberFactory('combinations', _index.combinationsNumber);
|
|
988
989
|
var createGamma = exports.createGamma = createNumberFactory('gamma', _index.gammaNumber);
|
|
@@ -122,7 +122,6 @@ var createRationalize = exports.createRationalize = /* #__PURE__ */(0, _factory.
|
|
|
122
122
|
if (s === sBefore) {
|
|
123
123
|
break; // No changes : end of the loop
|
|
124
124
|
}
|
|
125
|
-
|
|
126
125
|
redoInic = true;
|
|
127
126
|
sBefore = s;
|
|
128
127
|
}
|
|
@@ -547,7 +546,6 @@ var createRationalize = exports.createRationalize = /* #__PURE__ */(0, _factory.
|
|
|
547
546
|
r: '(n1^(n2*n3))'
|
|
548
547
|
} // Power to Power
|
|
549
548
|
];
|
|
550
|
-
|
|
551
549
|
return setRules;
|
|
552
550
|
} // End rulesRationalize
|
|
553
551
|
|
|
@@ -909,7 +909,6 @@ var createSimplify = exports.createSimplify = /* #__PURE__ */(0, _factory.factor
|
|
|
909
909
|
// const after = res.toString({parenthesis: 'all'})
|
|
910
910
|
// console.log('Simplified ' + before + ' to ' + after)
|
|
911
911
|
}
|
|
912
|
-
|
|
913
912
|
if (rule.repeat && res !== node) {
|
|
914
913
|
res = applyRule(res, rule, context);
|
|
915
914
|
}
|
|
@@ -110,7 +110,6 @@ var createSimplifyConstant = exports.createSimplifyConstant = /* #__PURE__ */(0,
|
|
|
110
110
|
}
|
|
111
111
|
return new ConstantNode(n); // old parameters: (n.toString(), 'number')
|
|
112
112
|
},
|
|
113
|
-
|
|
114
113
|
Complex: function Complex(s) {
|
|
115
114
|
throw new Error('Cannot convert Complex number to Node');
|
|
116
115
|
},
|
|
@@ -158,7 +158,6 @@ var createSimplifyCore = exports.createSimplifyCore = /* #__PURE__ */(0, _factor
|
|
|
158
158
|
node = new OperatorNode('-', 'subtract', [a0.args[1], a0.args[0]]);
|
|
159
159
|
finish = false; // continue to process the new binary node
|
|
160
160
|
}
|
|
161
|
-
|
|
162
161
|
if (a0.isUnary() && a0.op === '-') {
|
|
163
162
|
return a0.args[0];
|
|
164
163
|
}
|
|
@@ -211,7 +210,6 @@ var createSimplifyCore = exports.createSimplifyCore = /* #__PURE__ */(0, _factor
|
|
|
211
210
|
return new OperatorNode(node.op, node.fn, [a1, _a], node.implicit); // constants on left
|
|
212
211
|
}
|
|
213
212
|
}
|
|
214
|
-
|
|
215
213
|
return new OperatorNode(node.op, node.fn, [_a, a1], node.implicit);
|
|
216
214
|
}
|
|
217
215
|
if (node.op === '/') {
|
|
@@ -40,14 +40,12 @@ var createCube = exports.createCube = /* #__PURE__ */(0, _factory.factory)(name,
|
|
|
40
40
|
Complex: function Complex(x) {
|
|
41
41
|
return x.mul(x).mul(x); // Is faster than pow(x, 3)
|
|
42
42
|
},
|
|
43
|
-
|
|
44
43
|
BigNumber: function BigNumber(x) {
|
|
45
44
|
return x.times(x).times(x);
|
|
46
45
|
},
|
|
47
46
|
Fraction: function Fraction(x) {
|
|
48
47
|
return x.pow(3); // Is faster than mul()mul()mul()
|
|
49
48
|
},
|
|
50
|
-
|
|
51
49
|
Unit: function Unit(x) {
|
|
52
50
|
return x.pow(3);
|
|
53
51
|
}
|
|
@@ -42,15 +42,12 @@ var createUnaryPlus = exports.createUnaryPlus = /* #__PURE__ */(0, _factory.fact
|
|
|
42
42
|
Complex: function Complex(x) {
|
|
43
43
|
return x; // complex numbers are immutable
|
|
44
44
|
},
|
|
45
|
-
|
|
46
45
|
BigNumber: function BigNumber(x) {
|
|
47
46
|
return x; // bignumbers are immutable
|
|
48
47
|
},
|
|
49
|
-
|
|
50
48
|
Fraction: function Fraction(x) {
|
|
51
49
|
return x; // fractions are immutable
|
|
52
50
|
},
|
|
53
|
-
|
|
54
51
|
Unit: function Unit(x) {
|
|
55
52
|
return x.clone();
|
|
56
53
|
},
|
|
@@ -132,7 +132,6 @@ var createDet = exports.createDet = /* #__PURE__ */(0, _factory.factory)(name, d
|
|
|
132
132
|
}
|
|
133
133
|
if (_k === rows) return matrix[k_][k]; // some zero of the type
|
|
134
134
|
}
|
|
135
|
-
|
|
136
135
|
var piv = matrix[k_][k];
|
|
137
136
|
var piv_ = k === 0 ? 1 : matrix[rowIndices[k - 1]][k - 1];
|
|
138
137
|
for (var i = k + 1; i < rows; i++) {
|
|
@@ -101,7 +101,6 @@ var createDiff = exports.createDiff = /* #__PURE__ */(0, _factory.factory)(name,
|
|
|
101
101
|
if ((0, _is.isMatrix)(arr)) {
|
|
102
102
|
arr = arr.toArray(); // Makes sure arrays like [ matrix([0, 1]), matrix([1, 0]) ] are processed properly
|
|
103
103
|
}
|
|
104
|
-
|
|
105
104
|
if (!Array.isArray(arr)) {
|
|
106
105
|
throw RangeError('Array/Matrix does not have that many dimensions');
|
|
107
106
|
}
|
|
@@ -152,7 +151,6 @@ var createDiff = exports.createDiff = /* #__PURE__ */(0, _factory.factory)(name,
|
|
|
152
151
|
if (!obj1IsArray && !obj2IsArray) {
|
|
153
152
|
return subtract(obj2, obj1); // Difference is (second - first) NOT (first - second)
|
|
154
153
|
}
|
|
155
|
-
|
|
156
154
|
throw TypeError('Cannot calculate difference between 1 array and 1 non-array');
|
|
157
155
|
}
|
|
158
156
|
|
|
@@ -49,7 +49,6 @@ var createMatrixFromColumns = exports.createMatrixFromColumns = /* #__PURE__ */(
|
|
|
49
49
|
|
|
50
50
|
// TODO implement this properly for SparseMatrix
|
|
51
51
|
});
|
|
52
|
-
|
|
53
52
|
function _createArray(arr) {
|
|
54
53
|
if (arr.length === 0) throw new TypeError('At least one column is needed to construct a matrix.');
|
|
55
54
|
var N = checkVectorTypeAndReturnLength(arr[0]);
|
|
@@ -49,7 +49,6 @@ var createMatrixFromRows = exports.createMatrixFromRows = /* #__PURE__ */(0, _fa
|
|
|
49
49
|
|
|
50
50
|
// TODO implement this properly for SparseMatrix
|
|
51
51
|
});
|
|
52
|
-
|
|
53
52
|
function _createArray(arr) {
|
|
54
53
|
if (arr.length === 0) throw new TypeError('At least one row is needed to construct a matrix.');
|
|
55
54
|
var N = checkVectorTypeAndReturnLength(arr[0]);
|
|
@@ -51,7 +51,6 @@ var createResize = exports.createResize = /* #__PURE__ */(0, _factory.factory)(n
|
|
|
51
51
|
if ((0, _is.isMatrix)(size)) {
|
|
52
52
|
size = size.valueOf(); // get Array
|
|
53
53
|
}
|
|
54
|
-
|
|
55
54
|
if ((0, _is.isBigNumber)(size[0])) {
|
|
56
55
|
// convert bignumbers to numbers
|
|
57
56
|
size = size.map(function (value) {
|
|
@@ -114,7 +114,6 @@ var createPickRandom = exports.createPickRandom = /* #__PURE__ */(0, _factory.fa
|
|
|
114
114
|
if (weights) {
|
|
115
115
|
weights = weights.valueOf(); // get Array
|
|
116
116
|
}
|
|
117
|
-
|
|
118
117
|
if (elementWise === true) {
|
|
119
118
|
possibles = (0, _array.flatten)(possibles);
|
|
120
119
|
weights = (0, _array.flatten)(weights);
|
|
@@ -101,7 +101,6 @@ var createMedian = exports.createMedian = /* #__PURE__ */(0, _factory.factory)(n
|
|
|
101
101
|
throw new Error('median(A, dim) is not yet supported');
|
|
102
102
|
// return reduce(arguments[0], arguments[1], ...)
|
|
103
103
|
},
|
|
104
|
-
|
|
105
104
|
// median(a, b, c, d, ...)
|
|
106
105
|
'...': function _(args) {
|
|
107
106
|
if ((0, _collection.containsCollections)(args)) {
|
|
@@ -48,7 +48,6 @@ var createProd = exports.createProd = /* #__PURE__ */(0, _factory.factory)(name,
|
|
|
48
48
|
throw new Error('prod(A, dim) is not yet supported');
|
|
49
49
|
// return reduce(arguments[0], arguments[1], math.prod)
|
|
50
50
|
},
|
|
51
|
-
|
|
52
51
|
// prod(a, b, c, d, ...)
|
|
53
52
|
'...': function _(args) {
|
|
54
53
|
return _prod(args);
|
|
@@ -48,7 +48,6 @@ var createIsNegative = exports.createIsNegative = /* #__PURE__ */(0, _factory.fa
|
|
|
48
48
|
Fraction: function Fraction(x) {
|
|
49
49
|
return x.s < 0; // It's enough to decide on the sign
|
|
50
50
|
},
|
|
51
|
-
|
|
52
51
|
Unit: typed.referToSelf(function (self) {
|
|
53
52
|
return function (x) {
|
|
54
53
|
return typed.find(self, x.valueType())(x.value);
|
package/lib/cjs/header.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* It features real and complex numbers, units, matrices, a large set of
|
|
7
7
|
* mathematical functions, and a flexible expression parser.
|
|
8
8
|
*
|
|
9
|
-
* @version 12.1
|
|
10
|
-
* @date 2023-
|
|
9
|
+
* @version 12.2.1
|
|
10
|
+
* @date 2023-12-20
|
|
11
11
|
*
|
|
12
12
|
* @license
|
|
13
13
|
* Copyright (C) 2013-2023 Jos de Jong <wjosdejong@gmail.com>
|
|
@@ -21,7 +21,6 @@ function gammaNumber(n) {
|
|
|
21
21
|
if (n > 171) {
|
|
22
22
|
return Infinity; // Will overflow
|
|
23
23
|
}
|
|
24
|
-
|
|
25
24
|
return (0, _product.product)(1, n - 1);
|
|
26
25
|
}
|
|
27
26
|
if (n < 0.5) {
|
|
@@ -30,7 +29,6 @@ function gammaNumber(n) {
|
|
|
30
29
|
if (n >= 171.35) {
|
|
31
30
|
return Infinity; // will overflow
|
|
32
31
|
}
|
|
33
|
-
|
|
34
32
|
if (n > 85.0) {
|
|
35
33
|
// Extended Stirling Approx
|
|
36
34
|
var twoN = n * n;
|
|
@@ -1080,7 +1080,6 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
|
1080
1080
|
if (simp.value && (0, _is.isComplex)(simp.value)) {
|
|
1081
1081
|
str = '(' + str + ')'; // Surround complex values with ( ) to enable better parsing
|
|
1082
1082
|
}
|
|
1083
|
-
|
|
1084
1083
|
if (unitStr.length > 0 && str.length > 0) {
|
|
1085
1084
|
str += ' ';
|
|
1086
1085
|
}
|
|
@@ -3528,7 +3527,6 @@ var createUnitClass = exports.createUnitClass = /* #__PURE__ */(0, _factory.fact
|
|
|
3528
3527
|
if (x !== null && x !== void 0 && x.isFraction) return new _BigNumber(x.n).div(x.d).times(x.s);
|
|
3529
3528
|
return new _BigNumber(x + ''); // stringify to prevent constructor error
|
|
3530
3529
|
},
|
|
3531
|
-
|
|
3532
3530
|
Fraction: function Fraction(x) {
|
|
3533
3531
|
return new _Fraction(x);
|
|
3534
3532
|
},
|
|
@@ -48,12 +48,10 @@ var createUnitFunction = exports.createUnitFunction = /* #__PURE__ */(0, _factor
|
|
|
48
48
|
if (Unit.isValuelessUnit(x)) {
|
|
49
49
|
return new Unit(null, x); // a pure unit
|
|
50
50
|
}
|
|
51
|
-
|
|
52
51
|
return Unit.parse(x, {
|
|
53
52
|
allowNoUnits: true
|
|
54
53
|
}); // a unit with value, like '5cm'
|
|
55
54
|
},
|
|
56
|
-
|
|
57
55
|
'number | BigNumber | Fraction | Complex, string | Unit': function numberBigNumberFractionComplexStringUnit(value, unit) {
|
|
58
56
|
return new Unit(value, unit);
|
|
59
57
|
},
|
package/lib/cjs/utils/is.js
CHANGED
package/lib/cjs/utils/latex.js
CHANGED
|
@@ -185,7 +185,6 @@ var latexFunctions = exports.latexFunctions = {
|
|
|
185
185
|
1: '\\left\\|${args[0]}\\right\\|',
|
|
186
186
|
2: undefined // use default template
|
|
187
187
|
},
|
|
188
|
-
|
|
189
188
|
nthRoot: {
|
|
190
189
|
2: '\\sqrt[${args[1]}]{${args[0]}}'
|
|
191
190
|
},
|
|
@@ -199,7 +198,6 @@ var latexFunctions = exports.latexFunctions = {
|
|
|
199
198
|
1: '\\left\\lfloor${args[0]}\\right\\rceil',
|
|
200
199
|
2: undefined // use default template
|
|
201
200
|
},
|
|
202
|
-
|
|
203
201
|
sign: {
|
|
204
202
|
1: '\\mathrm{${name}}\\left(${args[0]}\\right)'
|
|
205
203
|
},
|
package/lib/cjs/version.js
CHANGED
|
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.version = void 0;
|
|
7
|
-
var version = exports.version = '12.1
|
|
7
|
+
var version = exports.version = '12.2.1';
|
|
8
8
|
// Note: This file is automatically generated when building math.js.
|
|
9
9
|
// Changes made in this file will be overwritten.
|