mathjs 13.0.3 → 13.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (210) hide show
  1. package/HISTORY.md +17 -1
  2. package/lib/browser/math.js +1 -1
  3. package/lib/browser/math.js.LICENSE.txt +2 -2
  4. package/lib/browser/math.js.map +1 -1
  5. package/lib/cjs/core/create.js +12 -9
  6. package/lib/cjs/core/function/typed.js +3 -4
  7. package/lib/cjs/entry/dependenciesAny/dependenciesFlatten.generated.js +0 -2
  8. package/lib/cjs/entry/dependenciesAny/dependenciesSqueeze.generated.js +0 -2
  9. package/lib/cjs/entry/impureFunctionsAny.generated.js +2 -2
  10. package/lib/cjs/entry/pureFunctionsAny.generated.js +6 -8
  11. package/lib/cjs/entry/typeChecks.js +18 -0
  12. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +2 -2
  13. package/lib/cjs/expression/embeddedDocs/function/arithmetic/hypot.js +1 -1
  14. package/lib/cjs/expression/embeddedDocs/function/matrix/diff.js +1 -1
  15. package/lib/cjs/expression/embeddedDocs/function/matrix/fft.js +1 -1
  16. package/lib/cjs/expression/embeddedDocs/function/matrix/ifft.js +1 -1
  17. package/lib/cjs/expression/embeddedDocs/function/matrix/kron.js +1 -1
  18. package/lib/cjs/expression/embeddedDocs/function/matrix/map.js +3 -3
  19. package/lib/cjs/expression/embeddedDocs/function/special/zeta.js +1 -1
  20. package/lib/cjs/expression/embeddedDocs/function/statistics/quantileSeq.js +1 -1
  21. package/lib/cjs/expression/embeddedDocs/function/trigonometry/acoth.js +1 -1
  22. package/lib/cjs/expression/embeddedDocs/function/trigonometry/acsch.js +1 -1
  23. package/lib/cjs/expression/embeddedDocs/function/utils/clone.js +1 -1
  24. package/lib/cjs/expression/function/evaluate.js +5 -0
  25. package/lib/cjs/expression/node/FunctionNode.js +1 -1
  26. package/lib/cjs/expression/transform/filter.transform.js +2 -2
  27. package/lib/cjs/expression/transform/map.transform.js +104 -37
  28. package/lib/cjs/expression/transform/utils/dimToZeroBase.js +23 -0
  29. package/lib/cjs/expression/transform/utils/lastDimToZeroBase.js +3 -4
  30. package/lib/cjs/function/arithmetic/hypot.js +3 -3
  31. package/lib/cjs/function/matrix/apply.js +1 -1
  32. package/lib/cjs/function/matrix/fft.js +3 -3
  33. package/lib/cjs/function/matrix/filter.js +2 -2
  34. package/lib/cjs/function/matrix/flatten.js +5 -6
  35. package/lib/cjs/function/matrix/ifft.js +2 -2
  36. package/lib/cjs/function/matrix/kron.js +4 -4
  37. package/lib/cjs/function/matrix/map.js +109 -18
  38. package/lib/cjs/function/matrix/size.js +7 -7
  39. package/lib/cjs/function/matrix/squeeze.js +3 -4
  40. package/lib/cjs/function/probability/random.js +1 -1
  41. package/lib/cjs/function/probability/randomInt.js +1 -1
  42. package/lib/cjs/function/statistics/cumsum.js +2 -2
  43. package/lib/cjs/function/trigonometry/acoth.js +2 -2
  44. package/lib/cjs/function/trigonometry/acsch.js +2 -2
  45. package/lib/cjs/header.js +2 -2
  46. package/lib/cjs/type/matrix/DenseMatrix.js +3 -28
  47. package/lib/cjs/type/matrix/SparseMatrix.js +5 -8
  48. package/lib/cjs/utils/array.js +27 -0
  49. package/lib/cjs/utils/collection.js +1 -1
  50. package/lib/cjs/utils/function.js +0 -14
  51. package/lib/cjs/utils/is.js +27 -0
  52. package/lib/cjs/utils/map.js +2 -20
  53. package/lib/cjs/version.js +1 -1
  54. package/lib/esm/core/create.js +9 -6
  55. package/lib/esm/core/function/typed.js +2 -3
  56. package/lib/esm/entry/dependenciesAny/dependenciesFlatten.generated.js +0 -2
  57. package/lib/esm/entry/dependenciesAny/dependenciesSqueeze.generated.js +0 -2
  58. package/lib/esm/entry/impureFunctionsAny.generated.js +3 -3
  59. package/lib/esm/entry/pureFunctionsAny.generated.js +7 -9
  60. package/lib/esm/entry/typeChecks.js +1 -1
  61. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +2 -2
  62. package/lib/esm/expression/embeddedDocs/function/arithmetic/hypot.js +1 -1
  63. package/lib/esm/expression/embeddedDocs/function/matrix/diff.js +1 -1
  64. package/lib/esm/expression/embeddedDocs/function/matrix/fft.js +1 -1
  65. package/lib/esm/expression/embeddedDocs/function/matrix/ifft.js +1 -1
  66. package/lib/esm/expression/embeddedDocs/function/matrix/kron.js +1 -1
  67. package/lib/esm/expression/embeddedDocs/function/matrix/map.js +3 -3
  68. package/lib/esm/expression/embeddedDocs/function/special/zeta.js +1 -1
  69. package/lib/esm/expression/embeddedDocs/function/statistics/quantileSeq.js +1 -1
  70. package/lib/esm/expression/embeddedDocs/function/trigonometry/acoth.js +1 -1
  71. package/lib/esm/expression/embeddedDocs/function/trigonometry/acsch.js +1 -1
  72. package/lib/esm/expression/embeddedDocs/function/utils/clone.js +1 -1
  73. package/lib/esm/expression/function/compile.js +1 -1
  74. package/lib/esm/expression/function/evaluate.js +8 -3
  75. package/lib/esm/expression/node/FunctionNode.js +1 -1
  76. package/lib/esm/expression/parse.js +2 -2
  77. package/lib/esm/expression/transform/filter.transform.js +4 -4
  78. package/lib/esm/expression/transform/forEach.transform.js +4 -4
  79. package/lib/esm/expression/transform/map.transform.js +104 -37
  80. package/lib/esm/expression/transform/print.transform.js +2 -2
  81. package/lib/esm/expression/transform/utils/dimToZeroBase.js +16 -0
  82. package/lib/esm/expression/transform/utils/lastDimToZeroBase.js +4 -6
  83. package/lib/esm/function/algebra/decomposition/slu.js +1 -1
  84. package/lib/esm/function/algebra/derivative.js +15 -15
  85. package/lib/esm/function/algebra/lyap.js +4 -4
  86. package/lib/esm/function/algebra/simplify/util.js +3 -3
  87. package/lib/esm/function/algebra/simplifyConstant.js +9 -9
  88. package/lib/esm/function/algebra/solver/lsolve.js +3 -3
  89. package/lib/esm/function/algebra/solver/lsolveAll.js +3 -3
  90. package/lib/esm/function/algebra/solver/lusolve.js +5 -5
  91. package/lib/esm/function/algebra/solver/usolve.js +3 -3
  92. package/lib/esm/function/algebra/solver/usolveAll.js +3 -3
  93. package/lib/esm/function/algebra/sylvester.js +7 -7
  94. package/lib/esm/function/arithmetic/addScalar.js +4 -4
  95. package/lib/esm/function/arithmetic/ceil.js +6 -6
  96. package/lib/esm/function/arithmetic/divide.js +5 -5
  97. package/lib/esm/function/arithmetic/divideScalar.js +5 -5
  98. package/lib/esm/function/arithmetic/fix.js +5 -5
  99. package/lib/esm/function/arithmetic/floor.js +6 -6
  100. package/lib/esm/function/arithmetic/hypot.js +3 -3
  101. package/lib/esm/function/arithmetic/mod.js +3 -3
  102. package/lib/esm/function/arithmetic/multiply.js +7 -7
  103. package/lib/esm/function/arithmetic/multiplyScalar.js +4 -4
  104. package/lib/esm/function/arithmetic/norm.js +2 -2
  105. package/lib/esm/function/arithmetic/pow.js +6 -6
  106. package/lib/esm/function/arithmetic/round.js +7 -7
  107. package/lib/esm/function/arithmetic/subtractScalar.js +4 -4
  108. package/lib/esm/function/arithmetic/xgcd.js +1 -1
  109. package/lib/esm/function/combinatorics/bellNumbers.js +1 -1
  110. package/lib/esm/function/combinatorics/catalan.js +1 -1
  111. package/lib/esm/function/combinatorics/composition.js +1 -1
  112. package/lib/esm/function/combinatorics/stirlingS2.js +1 -1
  113. package/lib/esm/function/geometry/distance.js +4 -4
  114. package/lib/esm/function/geometry/intersect.js +2 -2
  115. package/lib/esm/function/logical/and.js +2 -2
  116. package/lib/esm/function/logical/or.js +2 -2
  117. package/lib/esm/function/logical/xor.js +2 -2
  118. package/lib/esm/function/matrix/apply.js +2 -2
  119. package/lib/esm/function/matrix/column.js +1 -1
  120. package/lib/esm/function/matrix/concat.js +1 -1
  121. package/lib/esm/function/matrix/count.js +1 -1
  122. package/lib/esm/function/matrix/cross.js +3 -3
  123. package/lib/esm/function/matrix/diag.js +10 -10
  124. package/lib/esm/function/matrix/diff.js +2 -2
  125. package/lib/esm/function/matrix/eigs.js +3 -3
  126. package/lib/esm/function/matrix/fft.js +3 -3
  127. package/lib/esm/function/matrix/filter.js +4 -4
  128. package/lib/esm/function/matrix/flatten.js +5 -6
  129. package/lib/esm/function/matrix/forEach.js +4 -4
  130. package/lib/esm/function/matrix/identity.js +6 -6
  131. package/lib/esm/function/matrix/ifft.js +3 -3
  132. package/lib/esm/function/matrix/inv.js +1 -1
  133. package/lib/esm/function/matrix/kron.js +7 -7
  134. package/lib/esm/function/matrix/map.js +110 -19
  135. package/lib/esm/function/matrix/matrixFromFunction.js +6 -6
  136. package/lib/esm/function/matrix/ones.js +2 -2
  137. package/lib/esm/function/matrix/partitionSelect.js +2 -2
  138. package/lib/esm/function/matrix/pinv.js +1 -1
  139. package/lib/esm/function/matrix/range.js +10 -10
  140. package/lib/esm/function/matrix/reshape.js +2 -2
  141. package/lib/esm/function/matrix/rotate.js +4 -4
  142. package/lib/esm/function/matrix/rotationMatrix.js +6 -6
  143. package/lib/esm/function/matrix/row.js +1 -1
  144. package/lib/esm/function/matrix/size.js +8 -8
  145. package/lib/esm/function/matrix/sort.js +4 -4
  146. package/lib/esm/function/matrix/sqrtm.js +1 -1
  147. package/lib/esm/function/matrix/squeeze.js +3 -4
  148. package/lib/esm/function/matrix/subset.js +2 -2
  149. package/lib/esm/function/matrix/zeros.js +2 -2
  150. package/lib/esm/function/probability/combinations.js +1 -1
  151. package/lib/esm/function/probability/combinationsWithRep.js +2 -2
  152. package/lib/esm/function/probability/kldivergence.js +4 -4
  153. package/lib/esm/function/probability/multinomial.js +1 -1
  154. package/lib/esm/function/probability/permutations.js +2 -2
  155. package/lib/esm/function/probability/pickRandom.js +6 -6
  156. package/lib/esm/function/probability/random.js +1 -1
  157. package/lib/esm/function/probability/randomInt.js +1 -1
  158. package/lib/esm/function/relational/compare.js +6 -6
  159. package/lib/esm/function/relational/deepEqual.js +1 -1
  160. package/lib/esm/function/relational/equal.js +1 -1
  161. package/lib/esm/function/relational/equalScalar.js +7 -7
  162. package/lib/esm/function/relational/equalText.js +1 -1
  163. package/lib/esm/function/relational/larger.js +3 -3
  164. package/lib/esm/function/relational/largerEq.js +4 -4
  165. package/lib/esm/function/relational/smaller.js +3 -3
  166. package/lib/esm/function/relational/smallerEq.js +3 -3
  167. package/lib/esm/function/relational/unequal.js +1 -1
  168. package/lib/esm/function/set/setCartesian.js +1 -1
  169. package/lib/esm/function/set/setDifference.js +1 -1
  170. package/lib/esm/function/set/setDistinct.js +1 -1
  171. package/lib/esm/function/set/setIntersect.js +1 -1
  172. package/lib/esm/function/set/setIsSubset.js +1 -1
  173. package/lib/esm/function/set/setMultiplicity.js +1 -1
  174. package/lib/esm/function/set/setPowerset.js +1 -1
  175. package/lib/esm/function/set/setSize.js +2 -2
  176. package/lib/esm/function/set/setSymDifference.js +1 -1
  177. package/lib/esm/function/set/setUnion.js +1 -1
  178. package/lib/esm/function/signal/freqz.js +6 -6
  179. package/lib/esm/function/statistics/corr.js +2 -2
  180. package/lib/esm/function/statistics/cumsum.js +3 -3
  181. package/lib/esm/function/statistics/max.js +1 -1
  182. package/lib/esm/function/statistics/median.js +3 -3
  183. package/lib/esm/function/statistics/min.js +1 -1
  184. package/lib/esm/function/statistics/prod.js +1 -1
  185. package/lib/esm/function/statistics/variance.js +2 -2
  186. package/lib/esm/function/string/bin.js +2 -2
  187. package/lib/esm/function/string/hex.js +2 -2
  188. package/lib/esm/function/string/oct.js +2 -2
  189. package/lib/esm/function/trigonometry/acoth.js +2 -2
  190. package/lib/esm/function/trigonometry/acsch.js +2 -2
  191. package/lib/esm/type/bigint.js +1 -1
  192. package/lib/esm/type/complex/function/complex.js +2 -2
  193. package/lib/esm/type/fraction/function/fraction.js +1 -1
  194. package/lib/esm/type/matrix/DenseMatrix.js +13 -38
  195. package/lib/esm/type/matrix/SparseMatrix.js +5 -8
  196. package/lib/esm/type/matrix/function/index.js +1 -1
  197. package/lib/esm/type/matrix/function/matrix.js +1 -1
  198. package/lib/esm/type/matrix/function/sparse.js +2 -2
  199. package/lib/esm/type/number.js +1 -1
  200. package/lib/esm/type/unit/function/createUnit.js +3 -3
  201. package/lib/esm/type/unit/function/splitUnit.js +1 -1
  202. package/lib/esm/type/unit/function/unit.js +2 -2
  203. package/lib/esm/utils/array.js +26 -0
  204. package/lib/esm/utils/collection.js +1 -1
  205. package/lib/esm/utils/function.js +0 -13
  206. package/lib/esm/utils/is.js +24 -0
  207. package/lib/esm/utils/map.js +2 -19
  208. package/lib/esm/version.js +1 -1
  209. package/package.json +13 -13
  210. package/types/index.d.ts +57 -18
@@ -25,14 +25,17 @@ exports.isFunctionNode = isFunctionNode;
25
25
  exports.isHelp = isHelp;
26
26
  exports.isIndex = isIndex;
27
27
  exports.isIndexNode = isIndexNode;
28
+ exports.isMap = isMap;
28
29
  exports.isMatrix = isMatrix;
29
30
  exports.isNode = isNode;
30
31
  exports.isNull = isNull;
31
32
  exports.isNumber = isNumber;
32
33
  exports.isObject = isObject;
33
34
  exports.isObjectNode = isObjectNode;
35
+ exports.isObjectWrappingMap = isObjectWrappingMap;
34
36
  exports.isOperatorNode = isOperatorNode;
35
37
  exports.isParenthesisNode = isParenthesisNode;
38
+ exports.isPartitionedMap = isPartitionedMap;
36
39
  exports.isRange = isRange;
37
40
  exports.isRangeNode = isRangeNode;
38
41
  exports.isRegExp = isRegExp;
@@ -45,6 +48,7 @@ exports.isUndefined = isUndefined;
45
48
  exports.isUnit = isUnit;
46
49
  exports.rule2Node = rule2Node;
47
50
  exports.typeOf = typeOf;
51
+ var _map = require("./map.js");
48
52
  // type checks for all known types
49
53
  //
50
54
  // note that:
@@ -135,6 +139,29 @@ function isRegExp(x) {
135
139
  function isObject(x) {
136
140
  return !!(x && typeof x === 'object' && x.constructor === Object && !isComplex(x) && !isFraction(x));
137
141
  }
142
+
143
+ /**
144
+ * Returns `true` if the passed object appears to be a Map (i.e. duck typing).
145
+ *
146
+ * Methods looked for are `get`, `set`, `keys` and `has`.
147
+ *
148
+ * @param {Map | object} object
149
+ * @returns
150
+ */
151
+ function isMap(object) {
152
+ // We can use the fast instanceof, or a slower duck typing check.
153
+ // The duck typing method needs to cover enough methods to not be confused with DenseMatrix.
154
+ if (!object) {
155
+ return false;
156
+ }
157
+ return object instanceof Map || object instanceof _map.ObjectWrappingMap || typeof object.set === 'function' && typeof object.get === 'function' && typeof object.keys === 'function' && typeof object.has === 'function';
158
+ }
159
+ function isPartitionedMap(object) {
160
+ return isMap(object) && isMap(object.a) && isMap(object.b);
161
+ }
162
+ function isObjectWrappingMap(object) {
163
+ return isMap(object) && isObject(object.wrappedObject);
164
+ }
138
165
  function isNull(x) {
139
166
  return x === null;
140
167
  }
@@ -7,7 +7,6 @@ exports.PartitionedMap = exports.ObjectWrappingMap = void 0;
7
7
  exports.assign = assign;
8
8
  exports.createEmptyMap = createEmptyMap;
9
9
  exports.createMap = createMap;
10
- exports.isMap = isMap;
11
10
  exports.toObject = toObject;
12
11
  var _customs = require("./customs.js");
13
12
  var _is = require("./is.js");
@@ -157,7 +156,7 @@ function createMap(mapOrObject) {
157
156
  if (!mapOrObject) {
158
157
  return createEmptyMap();
159
158
  }
160
- if (isMap(mapOrObject)) {
159
+ if ((0, _is.isMap)(mapOrObject)) {
161
160
  return mapOrObject;
162
161
  }
163
162
  if ((0, _is.isObject)(mapOrObject)) {
@@ -184,23 +183,6 @@ function toObject(map) {
184
183
  return object;
185
184
  }
186
185
 
187
- /**
188
- * Returns `true` if the passed object appears to be a Map (i.e. duck typing).
189
- *
190
- * Methods looked for are `get`, `set`, `keys` and `has`.
191
- *
192
- * @param {Map | object} object
193
- * @returns
194
- */
195
- function isMap(object) {
196
- // We can use the fast instanceof, or a slower duck typing check.
197
- // The duck typing method needs to cover enough methods to not be confused with DenseMatrix.
198
- if (!object) {
199
- return false;
200
- }
201
- return object instanceof Map || object instanceof ObjectWrappingMap || typeof object.set === 'function' && typeof object.get === 'function' && typeof object.keys === 'function' && typeof object.has === 'function';
202
- }
203
-
204
186
  /**
205
187
  * Copies the contents of key-value pairs from each `objects` in to `map`.
206
188
  *
@@ -216,7 +198,7 @@ function assign(map) {
216
198
  if (!args) {
217
199
  continue;
218
200
  }
219
- if (isMap(args)) {
201
+ if ((0, _is.isMap)(args)) {
220
202
  for (const key of args.keys()) {
221
203
  map.set(key, args.get(key));
222
204
  }
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- const version = exports.version = '13.0.3';
7
+ const version = exports.version = '13.1.0';
8
8
  // Note: This file is automatically generated when building math.js.
9
9
  // Changes made in this file will be overwritten.
@@ -1,15 +1,15 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import typedFunction from 'typed-function';
3
- import { deepFlatten, isLegacyFactory } from '../utils/object.js';
4
- import * as emitter from './../utils/emitter.js';
5
- import { importFactory } from './function/import.js';
6
- import { configFactory } from './function/config.js';
7
- import { factory, isFactory } from '../utils/factory.js';
8
- import { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigNumber, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMatrix, isNode, isNull, isNumber, isObject, isObjectNode, isOperatorNode, isParenthesisNode, isRange, isRangeNode, isRelationalNode, isRegExp, isResultSet, isSparseMatrix, isString, isSymbolNode, isUndefined, isUnit, isBigInt } from '../utils/is.js';
9
3
  import { ArgumentsError } from '../error/ArgumentsError.js';
10
4
  import { DimensionError } from '../error/DimensionError.js';
11
5
  import { IndexError } from '../error/IndexError.js';
6
+ import { factory, isFactory } from '../utils/factory.js';
7
+ import { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigInt, isBigNumber, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMap, isMatrix, isNode, isNull, isNumber, isObject, isObjectNode, isObjectWrappingMap, isOperatorNode, isParenthesisNode, isPartitionedMap, isRange, isRangeNode, isRegExp, isRelationalNode, isResultSet, isSparseMatrix, isString, isSymbolNode, isUndefined, isUnit } from '../utils/is.js';
8
+ import { deepFlatten, isLegacyFactory } from '../utils/object.js';
9
+ import * as emitter from './../utils/emitter.js';
12
10
  import { DEFAULT_CONFIG } from './config.js';
11
+ import { configFactory } from './function/config.js';
12
+ import { importFactory } from './function/import.js';
13
13
 
14
14
  /**
15
15
  * Create a mathjs instance from given factory functions and optionally config
@@ -85,6 +85,9 @@ export function create(factories, config) {
85
85
  isDate,
86
86
  isRegExp,
87
87
  isObject,
88
+ isMap,
89
+ isPartitionedMap,
90
+ isObjectWrappingMap,
88
91
  isNull,
89
92
  isUndefined,
90
93
  isAccessorNode,
@@ -36,11 +36,10 @@
36
36
  * @returns {function} The created typed-function.
37
37
  */
38
38
 
39
- import { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigNumber, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMatrix, isNode, isNull, isNumber, isObject, isObjectNode, isOperatorNode, isParenthesisNode, isRange, isRangeNode, isRelationalNode, isRegExp, isResultSet, isSparseMatrix, isString, isSymbolNode, isUndefined, isUnit, isBigInt } from '../../utils/is.js';
40
39
  import typedFunction from 'typed-function';
41
- import { digits } from '../../utils/number.js';
42
40
  import { factory } from '../../utils/factory.js';
43
- import { isMap } from '../../utils/map.js';
41
+ import { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigInt, isBigNumber, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMap, isMatrix, isNode, isNull, isNumber, isObject, isObjectNode, isOperatorNode, isParenthesisNode, isRange, isRangeNode, isRegExp, isRelationalNode, isResultSet, isSparseMatrix, isString, isSymbolNode, isUndefined, isUnit } from '../../utils/is.js';
42
+ import { digits } from '../../utils/number.js';
44
43
 
45
44
  // returns a new instance of typed-function
46
45
  var _createTyped2 = function _createTyped() {
@@ -2,11 +2,9 @@
2
2
  * THIS FILE IS AUTO-GENERATED
3
3
  * DON'T MAKE CHANGES HERE
4
4
  */
5
- import { matrixDependencies } from './dependenciesMatrix.generated.js';
6
5
  import { typedDependencies } from './dependenciesTyped.generated.js';
7
6
  import { createFlatten } from '../../factoriesAny.js';
8
7
  export var flattenDependencies = {
9
- matrixDependencies,
10
8
  typedDependencies,
11
9
  createFlatten
12
10
  };
@@ -2,11 +2,9 @@
2
2
  * THIS FILE IS AUTO-GENERATED
3
3
  * DON'T MAKE CHANGES HERE
4
4
  */
5
- import { matrixDependencies } from './dependenciesMatrix.generated.js';
6
5
  import { typedDependencies } from './dependenciesTyped.generated.js';
7
6
  import { createSqueeze } from '../../factoriesAny.js';
8
7
  export var squeezeDependencies = {
9
- matrixDependencies,
10
8
  typedDependencies,
11
9
  createSqueeze
12
10
  };
@@ -7,7 +7,7 @@ import { config } from './configReadonly.js';
7
7
  import { createNode, createObjectNode, createOperatorNode, createParenthesisNode, createRelationalNode, createArrayNode, createBlockNode, createConditionalNode, createConstantNode, createRangeNode, createReviver, createChainClass, createFunctionAssignmentNode, createChain, createIndexNode, createAccessorNode, createAssignmentNode, createSymbolNode, createFunctionNode, createParse, createResolve, createSimplifyConstant, createCompile, createSimplifyCore, createEvaluate, createHelpClass, createParserClass, createSimplify, createSymbolicEqual, createLeafCount, createParser, createRationalize, createDerivative, createHelp, createFilterTransform, createForEachTransform, createMapTransform, createApplyTransform, createOrTransform, createAndTransform, createConcatTransform, createMaxTransform, createPrintTransform, createBitAndTransform, createDiffTransform, createMinTransform, createSubsetTransform, createBitOrTransform, createCumSumTransform, createIndexTransform, createSumTransform, createRangeTransform, createRowTransform, createColumnTransform, createMeanTransform, createQuantileSeqTransform, createVarianceTransform, createStdTransform } from '../factoriesAny.js';
8
8
  import { BigNumber, Complex, e, _false, fineStructure, Fraction, i, _Infinity, LN10, LOG10E, Matrix, _NaN, _null, phi, Range, ResultSet, SQRT1_2,
9
9
  // eslint-disable-line camelcase
10
- sackurTetrode, tau, _true, version, DenseMatrix, efimovFactor, LN2, pi, replacer, SQRT2, typed, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bigint, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, forEach, format, getMatrixDataType, hex, im, isInteger, isNegative, isPositive, isZero, LOG2E, lgamma, log10, log2, map, multiplyScalar, not, number, oct, pickRandom, print, random, re, sec, sign, sin, SparseMatrix, splitUnit, square, string, subtractScalar, tan, typeOf, acosh, acsch, apply, asec, bignumber, combinationsWithRep, cosh, csch, isNaN, isPrime, randomInt, sech, sinh, sparse, sqrt, tanh, unaryMinus, acoth, bin, coth, fraction, isNumeric, matrix, matrixFromFunction, mode, numeric, prod, reshape, size, squeeze, transpose, xgcd, zeros, asin, cbrt, concat, count, ctranspose, diag, divideScalar, dotDivide, equal, flatten, hasNumericValue, identity, kron, largerEq, leftShift, lsolve, matrixFromColumns, nthRoot, ones, qr, resize, rightArithShift, round, smaller, subtract, to, unaryPlus, usolve, xor, add, atan2, bitAnd, bitOr, bitXor, catalan, compare, compareText, cumsum, deepEqual, diff, distance, dot, equalText, floor, gcd, hypot, ImmutableDenseMatrix, Index, larger, log, lsolveAll, matrixFromRows, min, mod, multiply, nthRoots, or, partitionSelect, rightLogShift, slu, subset, sum, trace, usolveAll, zpk2tf, ceil, compareNatural, composition, cross, det, dotMultiply, FibonacciHeap, fix, index, intersect, invmod, lcm, log1p, max, setCartesian, setDistinct, setIsSubset, setPowerset, smallerEq, sort, unequal, and, range, row, setDifference, setMultiplicity, setSymDifference, Spa, column, inv, lup, pinv, pow, setIntersect, setUnion, sqrtm, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, createUnit, divide, electronMass, factorial, firstRadiation, gravity, inverseConductanceQuantum, lusolve, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setSize, solveODE, stirlingS2, unit, bellNumbers, eigs, fermiCoupling, gasConstant, kldivergence, mean, molarVolume, planckConstant, quantileSeq, variance, classicalElectronRadius, median, corr, freqz, mad, std, zeta, norm, rotationMatrix, planckTime, schur, rotate, sylvester, lyap } from './pureFunctionsAny.generated.js';
10
+ sackurTetrode, tau, _true, version, DenseMatrix, efimovFactor, LN2, pi, replacer, SQRT2, typed, weakMixingAngle, abs, acos, acot, acsc, addScalar, arg, asech, asinh, atan, atanh, bigint, bitNot, boolean, clone, combinations, complex, conj, cos, cot, csc, cube, equalScalar, erf, exp, expm1, filter, flatten, forEach, format, getMatrixDataType, hex, im, isInteger, isNegative, isPositive, isZero, LOG2E, lgamma, log10, log2, map, multiplyScalar, not, number, oct, pickRandom, print, random, re, sec, sign, sin, SparseMatrix, splitUnit, square, string, subtractScalar, tan, typeOf, acosh, acsch, apply, asec, bignumber, combinationsWithRep, cosh, csch, isNaN, isPrime, randomInt, sech, sinh, sparse, sqrt, squeeze, tanh, unaryMinus, acoth, bin, coth, fraction, isNumeric, matrix, matrixFromFunction, mode, numeric, prod, reshape, size, transpose, xgcd, zeros, asin, cbrt, concat, count, ctranspose, diag, divideScalar, dotDivide, equal, hasNumericValue, identity, kron, largerEq, leftShift, lsolve, matrixFromColumns, nthRoot, ones, qr, resize, rightArithShift, round, smaller, subtract, to, unaryPlus, usolve, xor, add, atan2, bitAnd, bitOr, bitXor, catalan, compare, compareText, cumsum, deepEqual, diff, distance, dot, equalText, floor, gcd, hypot, ImmutableDenseMatrix, Index, larger, log, lsolveAll, matrixFromRows, min, mod, multiply, nthRoots, or, partitionSelect, rightLogShift, slu, subset, sum, trace, usolveAll, zpk2tf, ceil, compareNatural, composition, cross, det, dotMultiply, FibonacciHeap, fix, index, intersect, invmod, lcm, log1p, max, setCartesian, setDistinct, setIsSubset, setPowerset, smallerEq, sort, unequal, and, range, row, setDifference, setMultiplicity, setSymDifference, Spa, column, inv, lup, pinv, pow, setIntersect, setUnion, sqrtm, Unit, vacuumImpedance, wienDisplacement, atomicMass, bohrMagneton, boltzmann, conductanceQuantum, coulomb, deuteronMass, dotPow, electricConstant, elementaryCharge, expm, faraday, fft, gamma, gravitationConstant, hartreeEnergy, ifft, klitzing, loschmidt, magneticConstant, molarMass, molarPlanckConstant, neutronMass, nuclearMagneton, planckCharge, planckLength, planckTemperature, protonMass, quantumOfCirculation, reducedPlanckConstant, rydberg, secondRadiation, speedOfLight, stefanBoltzmann, thomsonCrossSection, avogadro, bohrRadius, createUnit, divide, electronMass, factorial, firstRadiation, gravity, inverseConductanceQuantum, lusolve, magneticFluxQuantum, molarMassC12, multinomial, permutations, planckMass, polynomialRoot, setSize, solveODE, stirlingS2, unit, bellNumbers, eigs, fermiCoupling, gasConstant, kldivergence, mean, molarVolume, planckConstant, quantileSeq, variance, classicalElectronRadius, median, corr, freqz, mad, std, zeta, norm, rotationMatrix, planckTime, schur, rotate, sylvester, lyap } from './pureFunctionsAny.generated.js';
11
11
  var math = {}; // NOT pure!
12
12
  var mathWithTransform = {}; // NOT pure!
13
13
  var classes = {}; // NOT pure!
@@ -300,6 +300,7 @@ _extends(math, {
300
300
  exp,
301
301
  expm1,
302
302
  filter,
303
+ flatten,
303
304
  forEach,
304
305
  format,
305
306
  getMatrixDataType,
@@ -347,6 +348,7 @@ _extends(math, {
347
348
  sinh,
348
349
  sparse,
349
350
  sqrt,
351
+ squeeze,
350
352
  tanh,
351
353
  unaryMinus,
352
354
  acoth,
@@ -361,7 +363,6 @@ _extends(math, {
361
363
  prod,
362
364
  reshape,
363
365
  size,
364
- squeeze,
365
366
  transpose,
366
367
  xgcd,
367
368
  zeros,
@@ -374,7 +375,6 @@ _extends(math, {
374
375
  divideScalar,
375
376
  dotDivide,
376
377
  equal,
377
- flatten,
378
378
  hasNumericValue,
379
379
  identity,
380
380
  kron,
@@ -5,7 +5,7 @@
5
5
  import { config } from './configReadonly.js';
6
6
  import { createBigNumberClass, createComplexClass, createE, createFalse, createFineStructure, createFractionClass, createI, createInfinity, createLN10, createLOG10E, createMatrixClass, createNaN, createNull, createPhi, createRangeClass, createResultSet, createSQRT1_2,
7
7
  // eslint-disable-line camelcase
8
- createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBigint, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createSubtractScalar, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBignumber, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createTanh, createUnaryMinus, createAcoth, createBin, createCoth, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMode, createNumeric, createProd, createReshape, createSize, createSqueeze, createTranspose, createXgcd, createZeros, createAsin, createCbrt, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createFlatten, createHasNumericValue, createIdentity, createKron, createLargerEq, createLeftShift, createLsolve, createMatrixFromColumns, createNthRoot, createOnes, createQr, createResize, createRightArithShift, createRound, createSmaller, createSubtract, createTo, createUnaryPlus, createUsolve, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCatalan, createCompare, createCompareText, createCumSum, createDeepEqual, createDiff, createDistance, createDot, createEqualText, createFloor, createGcd, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolveAll, createMatrixFromRows, createMin, createMod, createMultiply, createNthRoots, createOr, createPartitionSelect, createRightLogShift, createSlu, createSubset, createSum, createTrace, createUsolveAll, createZpk2tf, createCeil, createCompareNatural, createComposition, createCross, createDet, createDotMultiply, createFibonacciHeapClass, createFix, createIndex, createIntersect, createInvmod, createLcm, createLog1p, createMax, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSmallerEq, createSort, createUnequal, createAnd, createRange, createRow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createColumn, createInv, createLup, createPinv, createPow, createSetIntersect, createSetUnion, createSqrtm, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCreateUnit, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createInverseConductanceQuantum, createLusolve, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetSize, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createEigs, createFermiCoupling, createGasConstant, createKldivergence, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createVariance, createClassicalElectronRadius, createMedian, createCorr, createFreqz, createMad, createStd, createZeta, createNorm, createRotationMatrix, createPlanckTime, createSchur, createRotate, createSylvester, createLyap } from '../factoriesAny.js';
8
+ createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBigint, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCos, createCot, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createFlatten, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createSubtractScalar, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBignumber, createCombinationsWithRep, createCosh, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createSqueeze, createTanh, createUnaryMinus, createAcoth, createBin, createCoth, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMode, createNumeric, createProd, createReshape, createSize, createTranspose, createXgcd, createZeros, createAsin, createCbrt, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createHasNumericValue, createIdentity, createKron, createLargerEq, createLeftShift, createLsolve, createMatrixFromColumns, createNthRoot, createOnes, createQr, createResize, createRightArithShift, createRound, createSmaller, createSubtract, createTo, createUnaryPlus, createUsolve, createXor, createAdd, createAtan2, createBitAnd, createBitOr, createBitXor, createCatalan, createCompare, createCompareText, createCumSum, createDeepEqual, createDiff, createDistance, createDot, createEqualText, createFloor, createGcd, createHypot, createImmutableDenseMatrixClass, createIndexClass, createLarger, createLog, createLsolveAll, createMatrixFromRows, createMin, createMod, createMultiply, createNthRoots, createOr, createPartitionSelect, createRightLogShift, createSlu, createSubset, createSum, createTrace, createUsolveAll, createZpk2tf, createCeil, createCompareNatural, createComposition, createCross, createDet, createDotMultiply, createFibonacciHeapClass, createFix, createIndex, createIntersect, createInvmod, createLcm, createLog1p, createMax, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSmallerEq, createSort, createUnequal, createAnd, createRange, createRow, createSetDifference, createSetMultiplicity, createSetSymDifference, createSpaClass, createColumn, createInv, createLup, createPinv, createPow, createSetIntersect, createSetUnion, createSqrtm, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCoulomb, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFft, createGamma, createGravitationConstant, createHartreeEnergy, createIfft, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createQuantumOfCirculation, createReducedPlanckConstant, createRydberg, createSecondRadiation, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCreateUnit, createDivide, createElectronMass, createFactorial, createFirstRadiation, createGravity, createInverseConductanceQuantum, createLusolve, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createPolynomialRoot, createSetSize, createSolveODE, createStirlingS2, createUnitFunction, createBellNumbers, createEigs, createFermiCoupling, createGasConstant, createKldivergence, createMean, createMolarVolume, createPlanckConstant, createQuantileSeq, createVariance, createClassicalElectronRadius, createMedian, createCorr, createFreqz, createMad, createStd, createZeta, createNorm, createRotationMatrix, createPlanckTime, createSchur, createRotate, createSylvester, createLyap } from '../factoriesAny.js';
9
9
  export var BigNumber = /* #__PURE__ */createBigNumberClass({
10
10
  config
11
11
  });
@@ -185,6 +185,9 @@ export var expm1 = /* #__PURE__ */createExpm1({
185
185
  export var filter = /* #__PURE__ */createFilter({
186
186
  typed
187
187
  });
188
+ export var flatten = /* #__PURE__ */createFlatten({
189
+ typed
190
+ });
188
191
  export var forEach = /* #__PURE__ */createForEach({
189
192
  typed
190
193
  });
@@ -359,6 +362,9 @@ export var sqrt = /* #__PURE__ */createSqrt({
359
362
  config,
360
363
  typed
361
364
  });
365
+ export var squeeze = /* #__PURE__ */createSqueeze({
366
+ typed
367
+ });
362
368
  export var tanh = /* #__PURE__ */createTanh({
363
369
  typed
364
370
  });
@@ -423,10 +429,6 @@ export var size = /* #__PURE__ */createSize({
423
429
  config,
424
430
  typed
425
431
  });
426
- export var squeeze = /* #__PURE__ */createSqueeze({
427
- matrix,
428
- typed
429
- });
430
432
  export var transpose = /* #__PURE__ */createTranspose({
431
433
  matrix,
432
434
  typed
@@ -498,10 +500,6 @@ export var equal = /* #__PURE__ */createEqual({
498
500
  matrix,
499
501
  typed
500
502
  });
501
- export var flatten = /* #__PURE__ */createFlatten({
502
- matrix,
503
- typed
504
- });
505
503
  export var hasNumericValue = /* #__PURE__ */createHasNumericValue({
506
504
  isNumeric,
507
505
  typed
@@ -1,2 +1,2 @@
1
1
  // util functions
2
- export { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigNumber, isBigInt, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMatrix, isNode, isNull, isNumber, isString, isUndefined, isObject, isObjectNode, isOperatorNode, isParenthesisNode, isRange, isRangeNode, isRelationalNode, isRegExp, isResultSet, isSparseMatrix, isSymbolNode, isUnit } from '../utils/is.js';
2
+ export { isAccessorNode, isArray, isArrayNode, isAssignmentNode, isBigNumber, isBigInt, isBlockNode, isBoolean, isChain, isCollection, isComplex, isConditionalNode, isConstantNode, isDate, isDenseMatrix, isFraction, isFunction, isFunctionAssignmentNode, isFunctionNode, isHelp, isIndex, isIndexNode, isMatrix, isNode, isNull, isNumber, isString, isUndefined, isObject, isMap, isPartitionedMap, isObjectWrappingMap, isObjectNode, isOperatorNode, isParenthesisNode, isRange, isRangeNode, isRelationalNode, isRegExp, isResultSet, isSparseMatrix, isSymbolNode, isUnit } from '../utils/is.js';
@@ -316,7 +316,7 @@ export var embeddedDocs = {
316
316
  examples: ['elementaryCharge']
317
317
  },
318
318
  bohrMagneton: {
319
- description: 'Borh magneton',
319
+ description: 'Bohr magneton',
320
320
  examples: ['bohrMagneton']
321
321
  },
322
322
  conductanceQuantum: {
@@ -341,7 +341,7 @@ export var embeddedDocs = {
341
341
  examples: ['klitzing']
342
342
  },
343
343
  bohrRadius: {
344
- description: 'Borh radius',
344
+ description: 'Bohr radius',
345
345
  examples: ['bohrRadius']
346
346
  },
347
347
  classicalElectronRadius: {
@@ -2,7 +2,7 @@ export var hypotDocs = {
2
2
  name: 'hypot',
3
3
  category: 'Arithmetic',
4
4
  syntax: ['hypot(a, b, c, ...)', 'hypot([a, b, c, ...])'],
5
- description: 'Calculate the hypotenusa of a list with values. ',
5
+ description: 'Calculate the hypotenuse of a list with values.',
6
6
  examples: ['hypot(3, 4)', 'sqrt(3^2 + 4^2)', 'hypot(-2)', 'hypot([3, 4, 5])'],
7
7
  seealso: ['abs', 'norm']
8
8
  };
@@ -2,7 +2,7 @@ export var diffDocs = {
2
2
  name: 'diff',
3
3
  category: 'Matrix',
4
4
  syntax: ['diff(arr)', 'diff(arr, dim)'],
5
- description: ['Create a new matrix or array with the difference of the passed matrix or array.', 'Dim parameter is optional and used to indicant the dimension of the array/matrix to apply the difference', 'If no dimension parameter is passed it is assumed as dimension 0', 'Dimension is zero-based in javascript and one-based in the parser', 'Arrays must be \'rectangular\' meaning arrays like [1, 2]', 'If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays'],
5
+ description: ['Create a new matrix or array with the difference of the passed matrix or array.', 'Dim parameter is optional and used to indicate the dimension of the array/matrix to apply the difference', 'If no dimension parameter is passed it is assumed as dimension 0', 'Dimension is zero-based in javascript and one-based in the parser', 'Arrays must be \'rectangular\' meaning arrays like [1, 2]', 'If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays'],
6
6
  examples: ['A = [1, 2, 4, 7, 0]', 'diff(A)', 'diff(A, 1)', 'B = [[1, 2], [3, 4]]', 'diff(B)', 'diff(B, 1)', 'diff(B, 2)', 'diff(B, bignumber(2))', 'diff([[1, 2], matrix([3, 4])], 2)'],
7
7
  seealso: ['subtract', 'partitionSelect']
8
8
  };
@@ -2,7 +2,7 @@ export var fftDocs = {
2
2
  name: 'fft',
3
3
  category: 'Matrix',
4
4
  syntax: ['fft(x)'],
5
- description: 'Calculate N-dimensional fourier transform',
5
+ description: 'Calculate N-dimensional Fourier transform',
6
6
  examples: ['fft([[1, 0], [1, 0]])'],
7
7
  seealso: ['ifft']
8
8
  };
@@ -2,7 +2,7 @@ export var ifftDocs = {
2
2
  name: 'ifft',
3
3
  category: 'Matrix',
4
4
  syntax: ['ifft(x)'],
5
- description: 'Calculate N-dimensional inverse fourier transform',
5
+ description: 'Calculate N-dimensional inverse Fourier transform',
6
6
  examples: ['ifft([[2, 2], [0, 0]])'],
7
7
  seealso: ['fft']
8
8
  };
@@ -2,7 +2,7 @@ export var kronDocs = {
2
2
  name: 'kron',
3
3
  category: 'Matrix',
4
4
  syntax: ['kron(x, y)'],
5
- description: 'Calculates the kronecker product of 2 matrices or vectors.',
5
+ description: 'Calculates the Kronecker product of 2 matrices or vectors.',
6
6
  examples: ['kron([[1, 0], [0, 1]], [[1, 2], [3, 4]])', 'kron([1,1], [2,3,4])'],
7
7
  seealso: ['multiply', 'dot', 'cross']
8
8
  };
@@ -1,8 +1,8 @@
1
1
  export var mapDocs = {
2
2
  name: 'map',
3
3
  category: 'Matrix',
4
- syntax: ['map(x, callback)'],
5
- description: 'Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array.',
6
- examples: ['map([1, 2, 3], square)'],
4
+ syntax: ['map(x, callback)', 'map(x, y, ..., callback)'],
5
+ description: 'Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array or the matrices/arrays.',
6
+ examples: ['map([1, 2, 3], square)', 'map([1, 2], [3, 4], f(a,b) = a + b)'],
7
7
  seealso: ['filter', 'forEach']
8
8
  };
@@ -2,7 +2,7 @@ export var zetaDocs = {
2
2
  name: 'zeta',
3
3
  category: 'Special',
4
4
  syntax: ['zeta(s)'],
5
- description: 'Compute the Riemann Zeta Function using an infinite series and Riemanns Functional Equation for the entire complex plane',
5
+ description: 'Compute the Riemann Zeta Function using an infinite series and Riemann\'s Functional Equation for the entire complex plane',
6
6
  examples: ['zeta(0.2)', 'zeta(-0.5)', 'zeta(4)'],
7
7
  seealso: []
8
8
  };
@@ -2,7 +2,7 @@ export var quantileSeqDocs = {
2
2
  name: 'quantileSeq',
3
3
  category: 'Statistics',
4
4
  syntax: ['quantileSeq(A, prob[, sorted])', 'quantileSeq(A, [prob1, prob2, ...][, sorted])', 'quantileSeq(A, N[, sorted])'],
5
- description: 'Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probablity are: Number, BigNumber. \n\nIn case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.',
5
+ description: 'Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probability are: Number, BigNumber. \n\nIn case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.',
6
6
  examples: ['quantileSeq([3, -1, 5, 7], 0.5)', 'quantileSeq([3, -1, 5, 7], [1/3, 2/3])', 'quantileSeq([3, -1, 5, 7], 2)', 'quantileSeq([-1, 3, 5, 7], 0.5, true)'],
7
7
  seealso: ['mean', 'median', 'min', 'max', 'prod', 'std', 'sum', 'variance']
8
8
  };
@@ -2,7 +2,7 @@ export var acothDocs = {
2
2
  name: 'acoth',
3
3
  category: 'Trigonometry',
4
4
  syntax: ['acoth(x)'],
5
- description: 'Calculate the hyperbolic arccotangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.',
5
+ description: 'Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.',
6
6
  examples: ['acoth(2)', 'acoth(0.5)'],
7
7
  seealso: ['acsch', 'asech']
8
8
  };
@@ -2,7 +2,7 @@ export var acschDocs = {
2
2
  name: 'acsch',
3
3
  category: 'Trigonometry',
4
4
  syntax: ['acsch(x)'],
5
- description: 'Calculate the hyperbolic arccosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.',
5
+ description: 'Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.',
6
6
  examples: ['acsch(0.5)'],
7
7
  seealso: ['asech', 'acoth']
8
8
  };
@@ -2,7 +2,7 @@ export var cloneDocs = {
2
2
  name: 'clone',
3
3
  category: 'Utils',
4
4
  syntax: ['clone(x)'],
5
- description: 'Clone a variable. Creates a copy of primitive variables,and a deep copy of matrices',
5
+ description: 'Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices',
6
6
  examples: ['clone(3.5)', 'clone(2 - 4i)', 'clone(45 deg)', 'clone([1, 2; 3, 4])', 'clone("hello world")'],
7
7
  seealso: []
8
8
  };
@@ -45,7 +45,7 @@ export var createCompile = /* #__PURE__ */factory(name, dependencies, _ref => {
45
45
  string: function string(expr) {
46
46
  return parse(expr).compile();
47
47
  },
48
- 'Array | Matrix': function ArrayMatrix(expr) {
48
+ 'Array | Matrix': function Array__Matrix(expr) {
49
49
  return deepMap(expr, function (entry) {
50
50
  return parse(entry).compile();
51
51
  });
@@ -11,6 +11,11 @@ export var createEvaluate = /* #__PURE__ */factory(name, dependencies, _ref => {
11
11
  /**
12
12
  * Evaluate an expression.
13
13
  *
14
+ * The expression parser does not use JavaScript. Its syntax is close
15
+ * to JavaScript but more suited for mathematical expressions.
16
+ * See [https://mathjs.org/docs/expressions/syntax.html](https://mathjs.org/docs/expressions/syntax.html) to learn
17
+ * the syntax and get an overview of the exact differences from JavaScript.
18
+ *
14
19
  * Note the evaluating arbitrary expressions may involve security risks,
15
20
  * see [https://mathjs.org/docs/expressions/security.html](https://mathjs.org/docs/expressions/security.html) for more information.
16
21
  *
@@ -45,16 +50,16 @@ export var createEvaluate = /* #__PURE__ */factory(name, dependencies, _ref => {
45
50
  var scope = createEmptyMap();
46
51
  return parse(expr).compile().evaluate(scope);
47
52
  },
48
- 'string, Map | Object': function stringMapObject(expr, scope) {
53
+ 'string, Map | Object': function string_Map__Object(expr, scope) {
49
54
  return parse(expr).compile().evaluate(scope);
50
55
  },
51
- 'Array | Matrix': function ArrayMatrix(expr) {
56
+ 'Array | Matrix': function Array__Matrix(expr) {
52
57
  var scope = createEmptyMap();
53
58
  return deepMap(expr, function (entry) {
54
59
  return parse(entry).compile().evaluate(scope);
55
60
  });
56
61
  },
57
- 'Array | Matrix, Map | Object': function ArrayMatrixMapObject(expr, scope) {
62
+ 'Array | Matrix, Map | Object': function Array__Matrix_Map__Object(expr, scope) {
58
63
  return deepMap(expr, function (entry) {
59
64
  return parse(entry).compile().evaluate(scope);
60
65
  });
@@ -97,7 +97,7 @@ export var createFunctionNode = /* #__PURE__ */factory(name, dependencies, _ref
97
97
  * invoke a list with arguments on a node
98
98
  * @param {./Node | string} fn
99
99
  * Item resolving to a function on which to invoke
100
- * the arguments, typically a SymboNode or AccessorNode
100
+ * the arguments, typically a SymbolNode or AccessorNode
101
101
  * @param {./Node[]} args
102
102
  */
103
103
  constructor(fn, args) {
@@ -70,10 +70,10 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
70
70
  string: function string(expression) {
71
71
  return parseStart(expression, {});
72
72
  },
73
- 'Array | Matrix': function ArrayMatrix(expressions) {
73
+ 'Array | Matrix': function Array__Matrix(expressions) {
74
74
  return parseMultiple(expressions, {});
75
75
  },
76
- 'string, Object': function stringObject(expression, options) {
76
+ 'string, Object': function string_Object(expression, options) {
77
77
  var extraNodes = options.nodes !== undefined ? options.nodes : {};
78
78
  return parseStart(expression, extraNodes);
79
79
  },
@@ -37,12 +37,12 @@ export var createFilterTransform = /* #__PURE__ */factory(name, dependencies, _r
37
37
  // one based version of function filter
38
38
  var filter = typed('filter', {
39
39
  'Array, function': _filter,
40
- 'Matrix, function': function MatrixFunction(x, test) {
41
- return x.create(_filter(x.toArray(), test));
40
+ 'Matrix, function': function Matrix_function(x, test) {
41
+ return x.create(_filter(x.toArray(), test), x.datatype());
42
42
  },
43
43
  'Array, RegExp': filterRegExp,
44
- 'Matrix, RegExp': function MatrixRegExp(x, test) {
45
- return x.create(filterRegExp(x.toArray(), test));
44
+ 'Matrix, RegExp': function Matrix_RegExp(x, test) {
45
+ return x.create(filterRegExp(x.toArray(), test), x.datatype());
46
46
  }
47
47
  });
48
48
  return filterTransform;
@@ -35,19 +35,19 @@ export var createForEachTransform = /* #__PURE__ */factory(name, dependencies, _
35
35
 
36
36
  // one-based version of forEach
37
37
  var _forEach = typed('forEach', {
38
- 'Array | Matrix, function': function ArrayMatrixFunction(array, callback) {
39
- var recurse = function recurse(value, index) {
38
+ 'Array | Matrix, function': function Array__Matrix_function(array, callback) {
39
+ var _recurse = function recurse(value, index) {
40
40
  if (Array.isArray(value)) {
41
41
  forEach(value, function (child, i) {
42
42
  // we create a copy of the index array and append the new index value
43
- recurse(child, index.concat(i + 1)); // one based index, hence i+1
43
+ _recurse(child, index.concat(i + 1)); // one based index, hence i+1
44
44
  });
45
45
  } else {
46
46
  // invoke the callback function with the right number of arguments
47
47
  return applyCallback(callback, value, index, array, 'forEach');
48
48
  }
49
49
  };
50
- recurse(array.valueOf(), []); // pass Array
50
+ _recurse(array.valueOf(), []); // pass Array
51
51
  }
52
52
  });
53
53
  return forEachTransform;