mathjs 12.4.0 → 12.4.2
Sign up to get free protection for your applications and to get access to all the features.
- package/HISTORY.md +22 -0
- package/README.md +28 -0
- package/bin/cli.js +1 -1
- package/bin/repl.js +1 -1
- 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/create.js +3 -3
- package/lib/cjs/defaultInstance.js +1 -1
- package/lib/cjs/entry/allFactoriesAny.js +1 -1
- package/lib/cjs/entry/allFactoriesNumber.js +1 -1
- package/lib/cjs/expression/node/AccessorNode.js +2 -3
- package/lib/cjs/expression/node/ArrayNode.js +2 -3
- package/lib/cjs/expression/node/AssignmentNode.js +2 -3
- package/lib/cjs/expression/node/BlockNode.js +2 -3
- package/lib/cjs/expression/node/ConditionalNode.js +2 -3
- package/lib/cjs/expression/node/ConstantNode.js +7 -6
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +2 -3
- package/lib/cjs/expression/node/FunctionNode.js +5 -6
- package/lib/cjs/expression/node/IndexNode.js +2 -3
- package/lib/cjs/expression/node/Node.js +1 -2
- package/lib/cjs/expression/node/ObjectNode.js +2 -3
- package/lib/cjs/expression/node/OperatorNode.js +2 -3
- package/lib/cjs/expression/node/ParenthesisNode.js +2 -3
- package/lib/cjs/expression/node/RangeNode.js +2 -3
- package/lib/cjs/expression/node/RelationalNode.js +2 -3
- package/lib/cjs/expression/node/SymbolNode.js +2 -3
- package/lib/cjs/function/algebra/simplifyCore.js +3 -0
- package/lib/cjs/function/algebra/sparse/csAmd.js +4 -2
- package/lib/cjs/function/algebra/sparse/csChol.js +4 -2
- package/lib/cjs/function/algebra/sparse/csCounts.js +4 -2
- package/lib/cjs/function/algebra/sparse/csCumsum.js +4 -2
- package/lib/cjs/function/algebra/sparse/csDfs.js +4 -2
- package/lib/cjs/function/algebra/sparse/csEreach.js +4 -2
- package/lib/cjs/function/algebra/sparse/csEtree.js +4 -2
- package/lib/cjs/function/algebra/sparse/csFkeep.js +4 -2
- package/lib/cjs/function/algebra/sparse/csFlip.js +4 -2
- package/lib/cjs/function/algebra/sparse/csIpvec.js +4 -0
- package/lib/cjs/function/algebra/sparse/csLeaf.js +4 -2
- package/lib/cjs/function/algebra/sparse/csLu.js +4 -2
- package/lib/cjs/function/algebra/sparse/csMark.js +4 -2
- package/lib/cjs/function/algebra/sparse/csMarked.js +4 -2
- package/lib/cjs/function/algebra/sparse/csPermute.js +4 -2
- package/lib/cjs/function/algebra/sparse/csPost.js +4 -2
- package/lib/cjs/function/algebra/sparse/csReach.js +4 -2
- package/lib/cjs/function/algebra/sparse/csSpsolve.js +4 -2
- package/lib/cjs/function/algebra/sparse/csSqr.js +4 -2
- package/lib/cjs/function/algebra/sparse/csSymperm.js +4 -2
- package/lib/cjs/function/algebra/sparse/csTdfs.js +4 -2
- package/lib/cjs/function/algebra/sparse/csUnflip.js +4 -2
- package/lib/cjs/function/utils/isNaN.js +5 -3
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/type/unit/Unit.js +6 -2
- package/lib/cjs/utils/map.js +2 -4
- package/lib/cjs/utils/object.js +0 -6
- package/lib/cjs/utils/snapshot.js +1 -1
- package/lib/cjs/version.js +1 -1
- package/lib/esm/core/create.js +3 -3
- package/lib/esm/expression/node/ConstantNode.js +5 -3
- package/lib/esm/expression/node/FunctionNode.js +3 -3
- package/lib/esm/function/algebra/simplifyCore.js +3 -0
- package/lib/esm/function/algebra/sparse/csAmd.js +3 -2
- package/lib/esm/function/algebra/sparse/csChol.js +3 -2
- package/lib/esm/function/algebra/sparse/csCounts.js +3 -2
- package/lib/esm/function/algebra/sparse/csCumsum.js +4 -2
- package/lib/esm/function/algebra/sparse/csDfs.js +3 -2
- package/lib/esm/function/algebra/sparse/csEreach.js +3 -2
- package/lib/esm/function/algebra/sparse/csEtree.js +4 -2
- package/lib/esm/function/algebra/sparse/csFkeep.js +4 -2
- package/lib/esm/function/algebra/sparse/csFlip.js +4 -2
- package/lib/esm/function/algebra/sparse/csIpvec.js +4 -0
- package/lib/esm/function/algebra/sparse/csLeaf.js +4 -2
- package/lib/esm/function/algebra/sparse/csLu.js +4 -2
- package/lib/esm/function/algebra/sparse/csMark.js +4 -2
- package/lib/esm/function/algebra/sparse/csMarked.js +4 -2
- package/lib/esm/function/algebra/sparse/csPermute.js +4 -2
- package/lib/esm/function/algebra/sparse/csPost.js +3 -2
- package/lib/esm/function/algebra/sparse/csReach.js +4 -2
- package/lib/esm/function/algebra/sparse/csSpsolve.js +3 -2
- package/lib/esm/function/algebra/sparse/csSqr.js +3 -2
- package/lib/esm/function/algebra/sparse/csSymperm.js +3 -2
- package/lib/esm/function/algebra/sparse/csTdfs.js +4 -2
- package/lib/esm/function/algebra/sparse/csUnflip.js +3 -2
- package/lib/esm/function/utils/isNaN.js +1 -3
- package/lib/esm/type/unit/Unit.js +6 -2
- package/lib/esm/utils/object.js +0 -3
- package/lib/esm/version.js +1 -1
- package/package.json +18 -18
- package/types/index.d.ts +4 -0
package/lib/cjs/core/create.js
CHANGED
@@ -19,7 +19,7 @@ var _DimensionError = require("../error/DimensionError.js");
|
|
19
19
|
var _IndexError = require("../error/IndexError.js");
|
20
20
|
var _config2 = require("./config.js");
|
21
21
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
22
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
22
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
23
23
|
/**
|
24
24
|
* Create a mathjs instance from given factory functions and optionally config
|
25
25
|
*
|
@@ -179,7 +179,7 @@ function create(factories, config) {
|
|
179
179
|
// listen for changes in config, import all functions again when changed
|
180
180
|
// TODO: move this listener into the import function?
|
181
181
|
math.on('config', function () {
|
182
|
-
|
182
|
+
Object.values(importedFactories).forEach(function (factory) {
|
183
183
|
if (factory && factory.meta && factory.meta.recreateOnConfigChange) {
|
184
184
|
// FIXME: only re-create when the current instance is the same as was initially created
|
185
185
|
// FIXME: delete the functions/constants before importing them again?
|
@@ -199,7 +199,7 @@ function create(factories, config) {
|
|
199
199
|
|
200
200
|
// import the factory functions like createAdd as an array instead of object,
|
201
201
|
// else they will get a different naming (`createAdd` instead of `add`).
|
202
|
-
math["import"](
|
202
|
+
math["import"](Object.values((0, _object.deepFlatten)(factories)));
|
203
203
|
math.ArgumentsError = _ArgumentsError.ArgumentsError;
|
204
204
|
math.DimensionError = _DimensionError.DimensionError;
|
205
205
|
math.IndexError = _IndexError.IndexError;
|
@@ -8,5 +8,5 @@ exports["default"] = void 0;
|
|
8
8
|
var all = _interopRequireWildcard(require("./factoriesAny.js"));
|
9
9
|
var _create = require("./core/create.js");
|
10
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
11
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
12
12
|
var _default = exports["default"] = (0, _create.create)(all);
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.all = void 0;
|
8
8
|
var allFactories = _interopRequireWildcard(require("../factoriesAny.js"));
|
9
9
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
11
11
|
// creating all factories here in a separate file is needed to get tree-shaking working
|
12
12
|
|
13
13
|
var all = exports.all = allFactories;
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
exports.all = void 0;
|
8
8
|
var allFactories = _interopRequireWildcard(require("../factoriesNumber.js"));
|
9
9
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
11
11
|
// creating all factories here in a separate file is needed to get tree-shaking working
|
12
12
|
|
13
13
|
var all = exports.all = allFactories;
|
@@ -35,7 +35,6 @@ var createAccessorNode = exports.createAccessorNode = /* #__PURE__ */(0, _factor
|
|
35
35
|
return !((0, _is.isAccessorNode)(node) || (0, _is.isArrayNode)(node) || (0, _is.isConstantNode)(node) || (0, _is.isFunctionNode)(node) || (0, _is.isObjectNode)(node) || (0, _is.isParenthesisNode)(node) || (0, _is.isSymbolNode)(node));
|
36
36
|
}
|
37
37
|
var AccessorNode = /*#__PURE__*/function (_Node) {
|
38
|
-
(0, _inherits2["default"])(AccessorNode, _Node);
|
39
38
|
/**
|
40
39
|
* @constructor AccessorNode
|
41
40
|
* @extends {Node}
|
@@ -61,7 +60,8 @@ var createAccessorNode = exports.createAccessorNode = /* #__PURE__ */(0, _factor
|
|
61
60
|
}
|
62
61
|
|
63
62
|
// readonly property name
|
64
|
-
(0,
|
63
|
+
(0, _inherits2["default"])(AccessorNode, _Node);
|
64
|
+
return (0, _createClass2["default"])(AccessorNode, [{
|
65
65
|
key: "name",
|
66
66
|
get: function get() {
|
67
67
|
if (this.index) {
|
@@ -221,7 +221,6 @@ var createAccessorNode = exports.createAccessorNode = /* #__PURE__ */(0, _factor
|
|
221
221
|
return new AccessorNode(json.object, json.index);
|
222
222
|
}
|
223
223
|
}]);
|
224
|
-
return AccessorNode;
|
225
224
|
}(Node);
|
226
225
|
(0, _defineProperty2["default"])(AccessorNode, "name", name);
|
227
226
|
return AccessorNode;
|
@@ -21,7 +21,6 @@ var dependencies = ['Node'];
|
|
21
21
|
var createArrayNode = exports.createArrayNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
22
22
|
var Node = _ref.Node;
|
23
23
|
var ArrayNode = /*#__PURE__*/function (_Node) {
|
24
|
-
(0, _inherits2["default"])(ArrayNode, _Node);
|
25
24
|
/**
|
26
25
|
* @constructor ArrayNode
|
27
26
|
* @extends {Node}
|
@@ -40,7 +39,8 @@ var createArrayNode = exports.createArrayNode = /* #__PURE__ */(0, _factory.fact
|
|
40
39
|
}
|
41
40
|
return _this;
|
42
41
|
}
|
43
|
-
(0,
|
42
|
+
(0, _inherits2["default"])(ArrayNode, _Node);
|
43
|
+
return (0, _createClass2["default"])(ArrayNode, [{
|
44
44
|
key: "type",
|
45
45
|
get: function get() {
|
46
46
|
return name;
|
@@ -206,7 +206,6 @@ var createArrayNode = exports.createArrayNode = /* #__PURE__ */(0, _factory.fact
|
|
206
206
|
return new ArrayNode(json.items);
|
207
207
|
}
|
208
208
|
}]);
|
209
|
-
return ArrayNode;
|
210
209
|
}(Node);
|
211
210
|
(0, _defineProperty2["default"])(ArrayNode, "name", name);
|
212
211
|
return ArrayNode;
|
@@ -51,7 +51,6 @@ var createAssignmentNode = exports.createAssignmentNode = /* #__PURE__ */(0, _fa
|
|
51
51
|
return parenthesis === 'all' || exprPrecedence !== null && exprPrecedence <= precedence;
|
52
52
|
}
|
53
53
|
var AssignmentNode = /*#__PURE__*/function (_Node) {
|
54
|
-
(0, _inherits2["default"])(AssignmentNode, _Node);
|
55
54
|
/**
|
56
55
|
* @constructor AssignmentNode
|
57
56
|
* @extends {Node}
|
@@ -109,7 +108,8 @@ var createAssignmentNode = exports.createAssignmentNode = /* #__PURE__ */(0, _fa
|
|
109
108
|
}
|
110
109
|
|
111
110
|
// class name for typing purposes:
|
112
|
-
(0,
|
111
|
+
(0, _inherits2["default"])(AssignmentNode, _Node);
|
112
|
+
return (0, _createClass2["default"])(AssignmentNode, [{
|
113
113
|
key: "name",
|
114
114
|
get:
|
115
115
|
// readonly property name
|
@@ -338,7 +338,6 @@ var createAssignmentNode = exports.createAssignmentNode = /* #__PURE__ */(0, _fa
|
|
338
338
|
return new AssignmentNode(json.object, json.index, json.value);
|
339
339
|
}
|
340
340
|
}]);
|
341
|
-
return AssignmentNode;
|
342
341
|
}(Node);
|
343
342
|
(0, _defineProperty2["default"])(AssignmentNode, "name", name);
|
344
343
|
return AssignmentNode;
|
@@ -22,7 +22,6 @@ var createBlockNode = exports.createBlockNode = /* #__PURE__ */(0, _factory.fact
|
|
22
22
|
var ResultSet = _ref.ResultSet,
|
23
23
|
Node = _ref.Node;
|
24
24
|
var BlockNode = /*#__PURE__*/function (_Node) {
|
25
|
-
(0, _inherits2["default"])(BlockNode, _Node);
|
26
25
|
/**
|
27
26
|
* @constructor BlockNode
|
28
27
|
* @extends {Node}
|
@@ -53,7 +52,8 @@ var createBlockNode = exports.createBlockNode = /* #__PURE__ */(0, _factory.fact
|
|
53
52
|
});
|
54
53
|
return _this;
|
55
54
|
}
|
56
|
-
(0,
|
55
|
+
(0, _inherits2["default"])(BlockNode, _Node);
|
56
|
+
return (0, _createClass2["default"])(BlockNode, [{
|
57
57
|
key: "type",
|
58
58
|
get: function get() {
|
59
59
|
return name;
|
@@ -215,7 +215,6 @@ var createBlockNode = exports.createBlockNode = /* #__PURE__ */(0, _factory.fact
|
|
215
215
|
return new BlockNode(json.blocks);
|
216
216
|
}
|
217
217
|
}]);
|
218
|
-
return BlockNode;
|
219
218
|
}(Node);
|
220
219
|
(0, _defineProperty2["default"])(BlockNode, "name", name);
|
221
220
|
return BlockNode;
|
@@ -46,7 +46,6 @@ var createConditionalNode = exports.createConditionalNode = /* #__PURE__ */(0, _
|
|
46
46
|
throw new TypeError('Unsupported type of condition "' + (0, _is.typeOf)(condition) + '"');
|
47
47
|
}
|
48
48
|
var ConditionalNode = /*#__PURE__*/function (_Node) {
|
49
|
-
(0, _inherits2["default"])(ConditionalNode, _Node);
|
50
49
|
/**
|
51
50
|
* A lazy evaluating conditional operator: 'condition ? trueExpr : falseExpr'
|
52
51
|
*
|
@@ -75,7 +74,8 @@ var createConditionalNode = exports.createConditionalNode = /* #__PURE__ */(0, _
|
|
75
74
|
_this.falseExpr = falseExpr;
|
76
75
|
return _this;
|
77
76
|
}
|
78
|
-
(0,
|
77
|
+
(0, _inherits2["default"])(ConditionalNode, _Node);
|
78
|
+
return (0, _createClass2["default"])(ConditionalNode, [{
|
79
79
|
key: "type",
|
80
80
|
get: function get() {
|
81
81
|
return name;
|
@@ -255,7 +255,6 @@ var createConditionalNode = exports.createConditionalNode = /* #__PURE__ */(0, _
|
|
255
255
|
return new ConditionalNode(json.condition, json.trueExpr, json.falseExpr);
|
256
256
|
}
|
257
257
|
}]);
|
258
|
-
return ConditionalNode;
|
259
258
|
}(Node);
|
260
259
|
(0, _defineProperty2["default"])(ConditionalNode, "name", name);
|
261
260
|
return ConditionalNode;
|
@@ -22,7 +22,6 @@ var dependencies = ['Node'];
|
|
22
22
|
var createConstantNode = exports.createConstantNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
23
23
|
var Node = _ref.Node;
|
24
24
|
var ConstantNode = /*#__PURE__*/function (_Node) {
|
25
|
-
(0, _inherits2["default"])(ConstantNode, _Node);
|
26
25
|
/**
|
27
26
|
* A ConstantNode holds a constant value like a number or string.
|
28
27
|
*
|
@@ -42,7 +41,8 @@ var createConstantNode = exports.createConstantNode = /* #__PURE__ */(0, _factor
|
|
42
41
|
_this.value = value;
|
43
42
|
return _this;
|
44
43
|
}
|
45
|
-
(0,
|
44
|
+
(0, _inherits2["default"])(ConstantNode, _Node);
|
45
|
+
return (0, _createClass2["default"])(ConstantNode, [{
|
46
46
|
key: "type",
|
47
47
|
get: function get() {
|
48
48
|
return name;
|
@@ -175,21 +175,23 @@ var createConstantNode = exports.createConstantNode = /* #__PURE__ */(0, _factor
|
|
175
175
|
*/
|
176
176
|
function _toTex(options) {
|
177
177
|
var value = this._toString(options);
|
178
|
-
|
178
|
+
var type = (0, _is.typeOf)(this.value);
|
179
|
+
switch (type) {
|
179
180
|
case 'string':
|
180
181
|
return '\\mathtt{' + (0, _latex.escapeLatex)(value) + '}';
|
181
182
|
case 'number':
|
182
183
|
case 'BigNumber':
|
183
184
|
{
|
184
|
-
|
185
|
+
var finite = type === 'BigNumber' ? this.value.isFinite() : isFinite(this.value);
|
186
|
+
if (!finite) {
|
185
187
|
return this.value.valueOf() < 0 ? '-\\infty' : '\\infty';
|
186
188
|
}
|
187
189
|
var index = value.toLowerCase().indexOf('e');
|
188
190
|
if (index !== -1) {
|
189
191
|
return value.substring(0, index) + '\\cdot10^{' + value.substring(index + 1) + '}';
|
190
192
|
}
|
193
|
+
return value;
|
191
194
|
}
|
192
|
-
return value;
|
193
195
|
case 'Fraction':
|
194
196
|
return this.value.toLatex();
|
195
197
|
default:
|
@@ -202,7 +204,6 @@ var createConstantNode = exports.createConstantNode = /* #__PURE__ */(0, _factor
|
|
202
204
|
return new ConstantNode(json.value);
|
203
205
|
}
|
204
206
|
}]);
|
205
|
-
return ConstantNode;
|
206
207
|
}(Node);
|
207
208
|
(0, _defineProperty2["default"])(ConstantNode, "name", name);
|
208
209
|
return ConstantNode;
|
@@ -41,7 +41,6 @@ var createFunctionAssignmentNode = exports.createFunctionAssignmentNode = /* #__
|
|
41
41
|
return parenthesis === 'all' || exprPrecedence !== null && exprPrecedence <= precedence;
|
42
42
|
}
|
43
43
|
var FunctionAssignmentNode = /*#__PURE__*/function (_Node) {
|
44
|
-
(0, _inherits2["default"])(FunctionAssignmentNode, _Node);
|
45
44
|
/**
|
46
45
|
* @constructor FunctionAssignmentNode
|
47
46
|
* @extends {Node}
|
@@ -99,7 +98,8 @@ var createFunctionAssignmentNode = exports.createFunctionAssignmentNode = /* #__
|
|
99
98
|
_this.expr = expr;
|
100
99
|
return _this;
|
101
100
|
}
|
102
|
-
(0,
|
101
|
+
(0, _inherits2["default"])(FunctionAssignmentNode, _Node);
|
102
|
+
return (0, _createClass2["default"])(FunctionAssignmentNode, [{
|
103
103
|
key: "type",
|
104
104
|
get: function get() {
|
105
105
|
return name;
|
@@ -277,7 +277,6 @@ var createFunctionAssignmentNode = exports.createFunctionAssignmentNode = /* #__
|
|
277
277
|
return new FunctionAssignmentNode(json.name, json.params, json.expr);
|
278
278
|
}
|
279
279
|
}]);
|
280
|
-
return FunctionAssignmentNode;
|
281
280
|
}(Node);
|
282
281
|
(0, _defineProperty2["default"])(FunctionAssignmentNode, "name", name);
|
283
282
|
return FunctionAssignmentNode;
|
@@ -26,7 +26,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
26
26
|
var name = 'FunctionNode';
|
27
27
|
var dependencies = ['math', 'Node', 'SymbolNode'];
|
28
28
|
var createFunctionNode = exports.createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
29
|
-
var
|
29
|
+
var _FunctionNode;
|
30
30
|
var math = _ref.math,
|
31
31
|
Node = _ref.Node,
|
32
32
|
SymbolNode = _ref.SymbolNode;
|
@@ -108,7 +108,6 @@ var createFunctionNode = exports.createFunctionNode = /* #__PURE__ */(0, _factor
|
|
108
108
|
return latex;
|
109
109
|
}
|
110
110
|
var FunctionNode = /*#__PURE__*/function (_Node) {
|
111
|
-
(0, _inherits2["default"])(FunctionNode, _Node);
|
112
111
|
/**
|
113
112
|
* @constructor FunctionNode
|
114
113
|
* @extends {./Node}
|
@@ -137,7 +136,8 @@ var createFunctionNode = exports.createFunctionNode = /* #__PURE__ */(0, _factor
|
|
137
136
|
}
|
138
137
|
|
139
138
|
// readonly property name
|
140
|
-
(0,
|
139
|
+
(0, _inherits2["default"])(FunctionNode, _Node);
|
140
|
+
return (0, _createClass2["default"])(FunctionNode, [{
|
141
141
|
key: "name",
|
142
142
|
get: function get() {
|
143
143
|
return this.fn.name || '';
|
@@ -515,15 +515,14 @@ var createFunctionNode = exports.createFunctionNode = /* #__PURE__ */(0, _factor
|
|
515
515
|
return this.type + ':' + this.name;
|
516
516
|
}
|
517
517
|
}]);
|
518
|
-
return FunctionNode;
|
519
518
|
}(Node);
|
520
|
-
|
519
|
+
_FunctionNode = FunctionNode;
|
521
520
|
(0, _defineProperty2["default"])(FunctionNode, "name", name);
|
522
521
|
(0, _defineProperty2["default"])(FunctionNode, "onUndefinedFunction", function (name) {
|
523
522
|
throw new Error('Undefined function ' + name);
|
524
523
|
});
|
525
524
|
(0, _defineProperty2["default"])(FunctionNode, "fromJSON", function (json) {
|
526
|
-
return new
|
525
|
+
return new _FunctionNode(json.fn, json.args);
|
527
526
|
});
|
528
527
|
return FunctionNode;
|
529
528
|
}, {
|
@@ -25,7 +25,6 @@ var createIndexNode = exports.createIndexNode = /* #__PURE__ */(0, _factory.fact
|
|
25
25
|
var Node = _ref.Node,
|
26
26
|
size = _ref.size;
|
27
27
|
var IndexNode = /*#__PURE__*/function (_Node) {
|
28
|
-
(0, _inherits2["default"])(IndexNode, _Node);
|
29
28
|
/**
|
30
29
|
* @constructor IndexNode
|
31
30
|
* @extends Node
|
@@ -56,7 +55,8 @@ var createIndexNode = exports.createIndexNode = /* #__PURE__ */(0, _factory.fact
|
|
56
55
|
}
|
57
56
|
return _this;
|
58
57
|
}
|
59
|
-
(0,
|
58
|
+
(0, _inherits2["default"])(IndexNode, _Node);
|
59
|
+
return (0, _createClass2["default"])(IndexNode, [{
|
60
60
|
key: "type",
|
61
61
|
get: function get() {
|
62
62
|
return name;
|
@@ -256,7 +256,6 @@ var createIndexNode = exports.createIndexNode = /* #__PURE__ */(0, _factory.fact
|
|
256
256
|
return new IndexNode(json.dimensions, json.dotNotation);
|
257
257
|
}
|
258
258
|
}]);
|
259
|
-
return IndexNode;
|
260
259
|
}(Node);
|
261
260
|
(0, _defineProperty2["default"])(IndexNode, "name", name);
|
262
261
|
return IndexNode;
|
@@ -35,7 +35,7 @@ var createNode = exports.createNode = /* #__PURE__ */(0, _factory.factory)(name,
|
|
35
35
|
function Node() {
|
36
36
|
(0, _classCallCheck2["default"])(this, Node);
|
37
37
|
}
|
38
|
-
(0, _createClass2["default"])(Node, [{
|
38
|
+
return (0, _createClass2["default"])(Node, [{
|
39
39
|
key: "type",
|
40
40
|
get: function get() {
|
41
41
|
return 'Node';
|
@@ -426,7 +426,6 @@ var createNode = exports.createNode = /* #__PURE__ */(0, _factory.factory)(name,
|
|
426
426
|
return this;
|
427
427
|
}
|
428
428
|
}]);
|
429
|
-
return Node;
|
430
429
|
}();
|
431
430
|
return Node;
|
432
431
|
}, {
|
@@ -24,7 +24,6 @@ var dependencies = ['Node'];
|
|
24
24
|
var createObjectNode = exports.createObjectNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
25
25
|
var Node = _ref.Node;
|
26
26
|
var ObjectNode = /*#__PURE__*/function (_Node) {
|
27
|
-
(0, _inherits2["default"])(ObjectNode, _Node);
|
28
27
|
/**
|
29
28
|
* @constructor ObjectNode
|
30
29
|
* @extends {Node}
|
@@ -47,7 +46,8 @@ var createObjectNode = exports.createObjectNode = /* #__PURE__ */(0, _factory.fa
|
|
47
46
|
}
|
48
47
|
return _this;
|
49
48
|
}
|
50
|
-
(0,
|
49
|
+
(0, _inherits2["default"])(ObjectNode, _Node);
|
50
|
+
return (0, _createClass2["default"])(ObjectNode, [{
|
51
51
|
key: "type",
|
52
52
|
get: function get() {
|
53
53
|
return name;
|
@@ -224,7 +224,6 @@ var createObjectNode = exports.createObjectNode = /* #__PURE__ */(0, _factory.fa
|
|
224
224
|
return new ObjectNode(json.properties);
|
225
225
|
}
|
226
226
|
}]);
|
227
|
-
return ObjectNode;
|
228
227
|
}(Node);
|
229
228
|
(0, _defineProperty2["default"])(ObjectNode, "name", name);
|
230
229
|
return ObjectNode;
|
@@ -235,7 +235,6 @@ var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factor
|
|
235
235
|
return result;
|
236
236
|
}
|
237
237
|
var OperatorNode = /*#__PURE__*/function (_Node) {
|
238
|
-
(0, _inherits2["default"])(OperatorNode, _Node);
|
239
238
|
/**
|
240
239
|
* @constructor OperatorNode
|
241
240
|
* @extends {Node}
|
@@ -268,7 +267,8 @@ var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factor
|
|
268
267
|
_this.args = args || [];
|
269
268
|
return _this;
|
270
269
|
}
|
271
|
-
(0,
|
270
|
+
(0, _inherits2["default"])(OperatorNode, _Node);
|
271
|
+
return (0, _createClass2["default"])(OperatorNode, [{
|
272
272
|
key: "type",
|
273
273
|
get: function get() {
|
274
274
|
return name;
|
@@ -665,7 +665,6 @@ var createOperatorNode = exports.createOperatorNode = /* #__PURE__ */(0, _factor
|
|
665
665
|
return new OperatorNode(json.op, json.fn, json.args, json.implicit, json.isPercentage);
|
666
666
|
}
|
667
667
|
}]);
|
668
|
-
return OperatorNode;
|
669
668
|
}(Node);
|
670
669
|
(0, _defineProperty2["default"])(OperatorNode, "name", name);
|
671
670
|
return OperatorNode;
|
@@ -20,7 +20,6 @@ var dependencies = ['Node'];
|
|
20
20
|
var createParenthesisNode = exports.createParenthesisNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
21
21
|
var Node = _ref.Node;
|
22
22
|
var ParenthesisNode = /*#__PURE__*/function (_Node) {
|
23
|
-
(0, _inherits2["default"])(ParenthesisNode, _Node);
|
24
23
|
/**
|
25
24
|
* @constructor ParenthesisNode
|
26
25
|
* @extends {Node}
|
@@ -39,7 +38,8 @@ var createParenthesisNode = exports.createParenthesisNode = /* #__PURE__ */(0, _
|
|
39
38
|
_this.content = content;
|
40
39
|
return _this;
|
41
40
|
}
|
42
|
-
(0,
|
41
|
+
(0, _inherits2["default"])(ParenthesisNode, _Node);
|
42
|
+
return (0, _createClass2["default"])(ParenthesisNode, [{
|
43
43
|
key: "type",
|
44
44
|
get: function get() {
|
45
45
|
return name;
|
@@ -184,7 +184,6 @@ var createParenthesisNode = exports.createParenthesisNode = /* #__PURE__ */(0, _
|
|
184
184
|
return new ParenthesisNode(json.content);
|
185
185
|
}
|
186
186
|
}]);
|
187
|
-
return ParenthesisNode;
|
188
187
|
}(Node);
|
189
188
|
(0, _defineProperty2["default"])(ParenthesisNode, "name", name);
|
190
189
|
return ParenthesisNode;
|
@@ -42,7 +42,6 @@ var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.fact
|
|
42
42
|
return parens;
|
43
43
|
}
|
44
44
|
var RangeNode = /*#__PURE__*/function (_Node) {
|
45
|
-
(0, _inherits2["default"])(RangeNode, _Node);
|
46
45
|
/**
|
47
46
|
* @constructor RangeNode
|
48
47
|
* @extends {Node}
|
@@ -65,7 +64,8 @@ var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.fact
|
|
65
64
|
_this.step = step || null; // optional step
|
66
65
|
return _this;
|
67
66
|
}
|
68
|
-
(0,
|
67
|
+
(0, _inherits2["default"])(RangeNode, _Node);
|
68
|
+
return (0, _createClass2["default"])(RangeNode, [{
|
69
69
|
key: "type",
|
70
70
|
get: function get() {
|
71
71
|
return name;
|
@@ -282,7 +282,6 @@ var createRangeNode = exports.createRangeNode = /* #__PURE__ */(0, _factory.fact
|
|
282
282
|
return new RangeNode(json.start, json.end, json.step);
|
283
283
|
}
|
284
284
|
}]);
|
285
|
-
return RangeNode;
|
286
285
|
}(Node);
|
287
286
|
(0, _defineProperty2["default"])(RangeNode, "name", name);
|
288
287
|
return RangeNode;
|
@@ -31,7 +31,6 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
31
31
|
largerEq: '>='
|
32
32
|
};
|
33
33
|
var RelationalNode = /*#__PURE__*/function (_Node) {
|
34
|
-
(0, _inherits2["default"])(RelationalNode, _Node);
|
35
34
|
/**
|
36
35
|
* A node representing a chained conditional expression, such as 'x > y > z'
|
37
36
|
*
|
@@ -60,7 +59,8 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
60
59
|
_this.params = params;
|
61
60
|
return _this;
|
62
61
|
}
|
63
|
-
(0,
|
62
|
+
(0, _inherits2["default"])(RelationalNode, _Node);
|
63
|
+
return (0, _createClass2["default"])(RelationalNode, [{
|
64
64
|
key: "type",
|
65
65
|
get: function get() {
|
66
66
|
return name;
|
@@ -236,7 +236,6 @@ var createRelationalNode = exports.createRelationalNode = /* #__PURE__ */(0, _fa
|
|
236
236
|
return new RelationalNode(json.conditionals, json.params);
|
237
237
|
}
|
238
238
|
}]);
|
239
|
-
return RelationalNode;
|
240
239
|
}(Node);
|
241
240
|
(0, _defineProperty2["default"])(RelationalNode, "name", name);
|
242
241
|
return RelationalNode;
|
@@ -31,7 +31,6 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
31
31
|
return Unit ? Unit.isValuelessUnit(name) : false;
|
32
32
|
}
|
33
33
|
var SymbolNode = /*#__PURE__*/function (_Node) {
|
34
|
-
(0, _inherits2["default"])(SymbolNode, _Node);
|
35
34
|
/**
|
36
35
|
* @constructor SymbolNode
|
37
36
|
* @extends {Node}
|
@@ -50,7 +49,8 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
50
49
|
_this.name = name;
|
51
50
|
return _this;
|
52
51
|
}
|
53
|
-
(0,
|
52
|
+
(0, _inherits2["default"])(SymbolNode, _Node);
|
53
|
+
return (0, _createClass2["default"])(SymbolNode, [{
|
54
54
|
key: "type",
|
55
55
|
get: function get() {
|
56
56
|
return 'SymbolNode';
|
@@ -226,7 +226,6 @@ var createSymbolNode = exports.createSymbolNode = /* #__PURE__ */(0, _factory.fa
|
|
226
226
|
return new SymbolNode(json.name);
|
227
227
|
}
|
228
228
|
}]);
|
229
|
-
return SymbolNode;
|
230
229
|
}(Node);
|
231
230
|
return SymbolNode;
|
232
231
|
}, {
|
@@ -234,6 +234,9 @@ var createSimplifyCore = exports.createSimplifyCore = /* #__PURE__ */(0, _factor
|
|
234
234
|
if ((0, _is.isConstantNode)(_a)) {
|
235
235
|
if (_a.value) {
|
236
236
|
if (isAlwaysBoolean(a1)) return a1;
|
237
|
+
if ((0, _is.isConstantNode)(a1)) {
|
238
|
+
return a1.value ? nodeT : nodeF;
|
239
|
+
}
|
237
240
|
} else {
|
238
241
|
return nodeF;
|
239
242
|
}
|
@@ -8,6 +8,10 @@ var _factory = require("../../../utils/factory.js");
|
|
8
8
|
var _csFkeep = require("./csFkeep.js");
|
9
9
|
var _csFlip = require("./csFlip.js");
|
10
10
|
var _csTdfs = require("./csTdfs.js");
|
11
|
+
// Copyright (c) 2006-2024, Timothy A. Davis, All Rights Reserved.
|
12
|
+
// SPDX-License-Identifier: LGPL-2.1+
|
13
|
+
// https://github.com/DrTimothyAldenDavis/SuiteSparse/tree/dev/CSparse/Source
|
14
|
+
|
11
15
|
var name = 'csAmd';
|
12
16
|
var dependencies = ['add', 'multiply', 'transpose'];
|
13
17
|
var createCsAmd = exports.createCsAmd = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -20,8 +24,6 @@ var createCsAmd = exports.createCsAmd = /* #__PURE__ */(0, _factory.factory)(nam
|
|
20
24
|
* than A. It is a gready method that selects the sparsest pivot row and column during the course
|
21
25
|
* of a right looking sparse Cholesky factorization.
|
22
26
|
*
|
23
|
-
* Reference: http://faculty.cse.tamu.edu/davis/publications.html
|
24
|
-
*
|
25
27
|
* @param {Number} order 0: Natural, 1: Cholesky, 2: LU, 3: QR
|
26
28
|
* @param {Matrix} m Sparse Matrix
|
27
29
|
*/
|
@@ -7,6 +7,10 @@ exports.createCsChol = void 0;
|
|
7
7
|
var _factory = require("../../../utils/factory.js");
|
8
8
|
var _csEreach = require("./csEreach.js");
|
9
9
|
var _csSymperm = require("./csSymperm.js");
|
10
|
+
// Copyright (c) 2006-2024, Timothy A. Davis, All Rights Reserved.
|
11
|
+
// SPDX-License-Identifier: LGPL-2.1+
|
12
|
+
// https://github.com/DrTimothyAldenDavis/SuiteSparse/tree/dev/CSparse/Source
|
13
|
+
|
10
14
|
var name = 'csChol';
|
11
15
|
var dependencies = ['divideScalar', 'sqrt', 'subtract', 'multiply', 'im', 're', 'conj', 'equal', 'smallerEq', 'SparseMatrix'];
|
12
16
|
var createCsChol = exports.createCsChol = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -33,8 +37,6 @@ var createCsChol = exports.createCsChol = /* #__PURE__ */(0, _factory.factory)(n
|
|
33
37
|
* @param {Object} s The symbolic analysis from cs_schol()
|
34
38
|
*
|
35
39
|
* @return {Number} The numeric Cholesky factorization of A or null
|
36
|
-
*
|
37
|
-
* Reference: http://faculty.cse.tamu.edu/davis/publications.html
|
38
40
|
*/
|
39
41
|
return function csChol(m, s) {
|
40
42
|
// validate input
|
@@ -6,6 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
exports.createCsCounts = void 0;
|
7
7
|
var _factory = require("../../../utils/factory.js");
|
8
8
|
var _csLeaf = require("./csLeaf.js");
|
9
|
+
// Copyright (c) 2006-2024, Timothy A. Davis, All Rights Reserved.
|
10
|
+
// SPDX-License-Identifier: LGPL-2.1+
|
11
|
+
// https://github.com/DrTimothyAldenDavis/SuiteSparse/tree/dev/CSparse/Source
|
12
|
+
|
9
13
|
var name = 'csCounts';
|
10
14
|
var dependencies = ['transpose'];
|
11
15
|
var createCsCounts = exports.createCsCounts = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
@@ -19,8 +23,6 @@ var createCsCounts = exports.createCsCounts = /* #__PURE__ */(0, _factory.factor
|
|
19
23
|
* @param {Matrix} ata Count the columns of A'A instead
|
20
24
|
*
|
21
25
|
* @return An array of size n of the column counts or null on error
|
22
|
-
*
|
23
|
-
* Reference: http://faculty.cse.tamu.edu/davis/publications.html
|
24
26
|
*/
|
25
27
|
return function (a, parent, post, ata) {
|
26
28
|
// check inputs
|
@@ -4,14 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.csCumsum = csCumsum;
|
7
|
+
// Copyright (c) 2006-2024, Timothy A. Davis, All Rights Reserved.
|
8
|
+
// SPDX-License-Identifier: LGPL-2.1+
|
9
|
+
// https://github.com/DrTimothyAldenDavis/SuiteSparse/tree/dev/CSparse/Source
|
10
|
+
|
7
11
|
/**
|
8
12
|
* It sets the p[i] equal to the sum of c[0] through c[i-1].
|
9
13
|
*
|
10
14
|
* @param {Array} ptr The Sparse Matrix ptr array
|
11
15
|
* @param {Array} c The Sparse Matrix ptr array
|
12
16
|
* @param {Number} n The number of columns
|
13
|
-
*
|
14
|
-
* Reference: http://faculty.cse.tamu.edu/davis/publications.html
|
15
17
|
*/
|
16
18
|
function csCumsum(ptr, c, n) {
|
17
19
|
// variables
|
@@ -7,6 +7,10 @@ exports.csDfs = csDfs;
|
|
7
7
|
var _csMarked = require("./csMarked.js");
|
8
8
|
var _csMark = require("./csMark.js");
|
9
9
|
var _csUnflip = require("./csUnflip.js");
|
10
|
+
// Copyright (c) 2006-2024, Timothy A. Davis, All Rights Reserved.
|
11
|
+
// SPDX-License-Identifier: LGPL-2.1+
|
12
|
+
// https://github.com/DrTimothyAldenDavis/SuiteSparse/tree/dev/CSparse/Source
|
13
|
+
|
10
14
|
/**
|
11
15
|
* Depth-first search computes the nonzero pattern xi of the directed graph G (Matrix) starting
|
12
16
|
* at nodes in B (see csReach()).
|
@@ -20,8 +24,6 @@ var _csUnflip = require("./csUnflip.js");
|
|
20
24
|
* @param {Array} pinv The inverse row permutation vector, must be null for L * x = b
|
21
25
|
*
|
22
26
|
* @return {Number} New value of top
|
23
|
-
*
|
24
|
-
* Reference: http://faculty.cse.tamu.edu/davis/publications.html
|
25
27
|
*/
|
26
28
|
function csDfs(j, g, top, xi, pinv) {
|
27
29
|
// g arrays
|