mathjs 10.6.2 → 11.0.0

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.
Files changed (436) hide show
  1. package/HISTORY.md +74 -1
  2. package/README.md +1 -1
  3. package/lib/browser/math.js +2 -41
  4. package/lib/browser/math.js.LICENSE.txt +43 -0
  5. package/lib/browser/math.js.map +1 -1
  6. package/lib/cjs/core/create.js +6 -5
  7. package/lib/cjs/core/function/import.js +4 -14
  8. package/lib/cjs/core/function/typed.js +54 -12
  9. package/lib/cjs/defaultInstance.js +3 -3
  10. package/lib/cjs/entry/allFactoriesAny.js +1 -1
  11. package/lib/cjs/entry/allFactoriesNumber.js +1 -1
  12. package/lib/cjs/entry/configReadonly.js +1 -1
  13. package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +3 -0
  14. package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +3 -0
  15. package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +3 -0
  16. package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +3 -0
  17. package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +3 -0
  18. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +56 -0
  19. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +6 -0
  20. package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +3 -0
  21. package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +3 -0
  22. package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +3 -0
  23. package/lib/cjs/entry/dependenciesAny.generated.js +8 -0
  24. package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +3 -0
  25. package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +3 -0
  26. package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +3 -0
  27. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +3 -0
  28. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +50 -0
  29. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +6 -0
  30. package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +3 -0
  31. package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +3 -0
  32. package/lib/cjs/entry/dependenciesNumber.generated.js +8 -0
  33. package/lib/cjs/entry/impureFunctionsAny.generated.js +87 -61
  34. package/lib/cjs/entry/impureFunctionsNumber.generated.js +93 -69
  35. package/lib/cjs/entry/pureFunctionsAny.generated.js +50 -45
  36. package/lib/cjs/entry/pureFunctionsNumber.generated.js +22 -19
  37. package/lib/cjs/expression/Parser.js +1 -1
  38. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +8 -5
  39. package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyConstant.js +15 -0
  40. package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
  41. package/lib/cjs/expression/node/AccessorNode.js +216 -173
  42. package/lib/cjs/expression/node/ArrayNode.js +206 -160
  43. package/lib/cjs/expression/node/AssignmentNode.js +321 -270
  44. package/lib/cjs/expression/node/BlockNode.js +223 -172
  45. package/lib/cjs/expression/node/ConditionalNode.js +253 -193
  46. package/lib/cjs/expression/node/ConstantNode.js +216 -171
  47. package/lib/cjs/expression/node/FunctionAssignmentNode.js +258 -196
  48. package/lib/cjs/expression/node/FunctionNode.js +456 -416
  49. package/lib/cjs/expression/node/IndexNode.js +256 -210
  50. package/lib/cjs/expression/node/Node.js +411 -378
  51. package/lib/cjs/expression/node/ObjectNode.js +223 -178
  52. package/lib/cjs/expression/node/OperatorNode.js +474 -397
  53. package/lib/cjs/expression/node/ParenthesisNode.js +189 -143
  54. package/lib/cjs/expression/node/RangeNode.js +272 -224
  55. package/lib/cjs/expression/node/RelationalNode.js +246 -195
  56. package/lib/cjs/expression/node/SymbolNode.js +219 -172
  57. package/lib/cjs/expression/node/utils/access.js +1 -1
  58. package/lib/cjs/expression/node/utils/assign.js +1 -1
  59. package/lib/cjs/expression/operators.js +117 -23
  60. package/lib/cjs/expression/parse.js +37 -19
  61. package/lib/cjs/expression/transform/std.transform.js +3 -1
  62. package/lib/cjs/factoriesAny.js +8 -0
  63. package/lib/cjs/factoriesNumber.js +10 -1
  64. package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
  65. package/lib/cjs/function/algebra/derivative.js +22 -30
  66. package/lib/cjs/function/algebra/leafCount.js +0 -3
  67. package/lib/cjs/function/algebra/rationalize.js +78 -108
  68. package/lib/cjs/function/algebra/resolve.js +53 -16
  69. package/lib/cjs/function/algebra/simplify/util.js +1 -1
  70. package/lib/cjs/function/algebra/simplify.js +87 -114
  71. package/lib/cjs/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +44 -10
  72. package/lib/cjs/function/algebra/simplifyCore.js +196 -93
  73. package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
  74. package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
  75. package/lib/cjs/function/algebra/symbolicEqual.js +9 -26
  76. package/lib/cjs/function/arithmetic/abs.js +7 -14
  77. package/lib/cjs/function/arithmetic/add.js +26 -70
  78. package/lib/cjs/function/arithmetic/addScalar.js +17 -9
  79. package/lib/cjs/function/arithmetic/cbrt.js +7 -11
  80. package/lib/cjs/function/arithmetic/ceil.js +56 -46
  81. package/lib/cjs/function/arithmetic/cube.js +5 -10
  82. package/lib/cjs/function/arithmetic/divide.js +7 -7
  83. package/lib/cjs/function/arithmetic/divideScalar.js +4 -18
  84. package/lib/cjs/function/arithmetic/dotDivide.js +22 -65
  85. package/lib/cjs/function/arithmetic/dotMultiply.js +16 -61
  86. package/lib/cjs/function/arithmetic/dotPow.js +30 -63
  87. package/lib/cjs/function/arithmetic/exp.js +8 -12
  88. package/lib/cjs/function/arithmetic/expm1.js +10 -10
  89. package/lib/cjs/function/arithmetic/fix.js +33 -27
  90. package/lib/cjs/function/arithmetic/floor.js +56 -46
  91. package/lib/cjs/function/arithmetic/gcd.js +27 -68
  92. package/lib/cjs/function/arithmetic/hypot.js +9 -5
  93. package/lib/cjs/function/arithmetic/invmod.js +1 -1
  94. package/lib/cjs/function/arithmetic/lcm.js +27 -68
  95. package/lib/cjs/function/arithmetic/log.js +10 -12
  96. package/lib/cjs/function/arithmetic/log10.js +5 -3
  97. package/lib/cjs/function/arithmetic/log1p.js +11 -7
  98. package/lib/cjs/function/arithmetic/log2.js +5 -3
  99. package/lib/cjs/function/arithmetic/mod.js +22 -64
  100. package/lib/cjs/function/arithmetic/multiply.js +40 -35
  101. package/lib/cjs/function/arithmetic/multiplyScalar.js +2 -9
  102. package/lib/cjs/function/arithmetic/norm.js +1 -5
  103. package/lib/cjs/function/arithmetic/nthRoot.js +80 -92
  104. package/lib/cjs/function/arithmetic/round.js +56 -42
  105. package/lib/cjs/function/arithmetic/sign.js +14 -10
  106. package/lib/cjs/function/arithmetic/sqrt.js +5 -9
  107. package/lib/cjs/function/arithmetic/square.js +6 -10
  108. package/lib/cjs/function/arithmetic/subtract.js +44 -100
  109. package/lib/cjs/function/arithmetic/unaryMinus.js +14 -16
  110. package/lib/cjs/function/arithmetic/unaryPlus.js +6 -4
  111. package/lib/cjs/function/bitwise/bitAnd.js +17 -61
  112. package/lib/cjs/function/bitwise/bitNot.js +5 -3
  113. package/lib/cjs/function/bitwise/bitOr.js +16 -60
  114. package/lib/cjs/function/bitwise/bitXor.js +17 -61
  115. package/lib/cjs/function/bitwise/leftShift.js +68 -81
  116. package/lib/cjs/function/bitwise/rightArithShift.js +68 -81
  117. package/lib/cjs/function/bitwise/rightLogShift.js +68 -81
  118. package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +36 -0
  119. package/lib/cjs/function/complex/arg.js +5 -3
  120. package/lib/cjs/function/complex/conj.js +6 -7
  121. package/lib/cjs/function/complex/im.js +7 -8
  122. package/lib/cjs/function/complex/re.js +6 -10
  123. package/lib/cjs/function/logical/and.js +74 -80
  124. package/lib/cjs/function/logical/not.js +13 -6
  125. package/lib/cjs/function/logical/or.js +21 -63
  126. package/lib/cjs/function/logical/xor.js +21 -63
  127. package/lib/cjs/function/matrix/diff.js +10 -7
  128. package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
  129. package/lib/cjs/function/matrix/fft.js +2 -2
  130. package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
  131. package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
  132. package/lib/cjs/function/matrix/ones.js +2 -1
  133. package/lib/cjs/function/matrix/sqrtm.js +3 -2
  134. package/lib/cjs/function/matrix/transpose.js +47 -48
  135. package/lib/cjs/function/matrix/zeros.js +2 -1
  136. package/lib/cjs/function/probability/factorial.js +5 -3
  137. package/lib/cjs/function/probability/gamma.js +38 -40
  138. package/lib/cjs/function/probability/kldivergence.js +5 -2
  139. package/lib/cjs/function/probability/lgamma.js +30 -30
  140. package/lib/cjs/function/probability/util/seededRNG.js +2 -2
  141. package/lib/cjs/function/relational/compare.js +21 -67
  142. package/lib/cjs/function/relational/compareNatural.js +59 -54
  143. package/lib/cjs/function/relational/compareText.js +10 -43
  144. package/lib/cjs/function/relational/compareUnits.js +24 -0
  145. package/lib/cjs/function/relational/equal.js +19 -80
  146. package/lib/cjs/function/relational/equalScalar.js +7 -9
  147. package/lib/cjs/function/relational/larger.js +21 -67
  148. package/lib/cjs/function/relational/largerEq.js +21 -67
  149. package/lib/cjs/function/relational/smaller.js +21 -67
  150. package/lib/cjs/function/relational/smallerEq.js +21 -67
  151. package/lib/cjs/function/relational/unequal.js +19 -80
  152. package/lib/cjs/function/special/erf.js +5 -3
  153. package/lib/cjs/function/statistics/std.js +11 -2
  154. package/lib/cjs/function/trigonometry/acos.js +4 -8
  155. package/lib/cjs/function/trigonometry/acosh.js +2 -7
  156. package/lib/cjs/function/trigonometry/acot.js +4 -8
  157. package/lib/cjs/function/trigonometry/acoth.js +4 -8
  158. package/lib/cjs/function/trigonometry/acsc.js +4 -8
  159. package/lib/cjs/function/trigonometry/acsch.js +4 -8
  160. package/lib/cjs/function/trigonometry/asec.js +4 -8
  161. package/lib/cjs/function/trigonometry/asech.js +4 -8
  162. package/lib/cjs/function/trigonometry/asin.js +4 -9
  163. package/lib/cjs/function/trigonometry/asinh.js +4 -9
  164. package/lib/cjs/function/trigonometry/atan.js +4 -9
  165. package/lib/cjs/function/trigonometry/atan2.js +24 -62
  166. package/lib/cjs/function/trigonometry/atanh.js +4 -9
  167. package/lib/cjs/function/trigonometry/cos.js +11 -20
  168. package/lib/cjs/function/trigonometry/cosh.js +5 -19
  169. package/lib/cjs/function/trigonometry/cot.js +9 -15
  170. package/lib/cjs/function/trigonometry/coth.js +4 -15
  171. package/lib/cjs/function/trigonometry/csc.js +11 -17
  172. package/lib/cjs/function/trigonometry/csch.js +4 -15
  173. package/lib/cjs/function/trigonometry/sec.js +11 -17
  174. package/lib/cjs/function/trigonometry/sech.js +4 -15
  175. package/lib/cjs/function/trigonometry/sin.js +11 -21
  176. package/lib/cjs/function/trigonometry/sinh.js +5 -20
  177. package/lib/cjs/function/trigonometry/tan.js +11 -21
  178. package/lib/cjs/function/trigonometry/tanh.js +5 -20
  179. package/lib/cjs/function/trigonometry/trigUnit.js +24 -0
  180. package/lib/cjs/function/unit/to.js +7 -41
  181. package/lib/cjs/function/utils/hasNumericValue.js +4 -0
  182. package/lib/cjs/function/utils/isInteger.js +5 -3
  183. package/lib/cjs/function/utils/isNegative.js +10 -6
  184. package/lib/cjs/function/utils/isNumeric.js +5 -3
  185. package/lib/cjs/function/utils/isPositive.js +10 -6
  186. package/lib/cjs/function/utils/isPrime.js +5 -3
  187. package/lib/cjs/function/utils/isZero.js +10 -6
  188. package/lib/cjs/function/utils/numeric.js +11 -4
  189. package/lib/cjs/function/utils/typeOf.js +38 -44
  190. package/lib/cjs/header.js +2 -2
  191. package/lib/cjs/plain/bignumber/index.js +1 -1
  192. package/lib/cjs/type/bignumber/BigNumber.js +2 -2
  193. package/lib/cjs/type/bignumber/function/bignumber.js +6 -4
  194. package/lib/cjs/type/boolean.js +7 -5
  195. package/lib/cjs/type/chain/Chain.js +23 -3
  196. package/lib/cjs/type/complex/Complex.js +18 -14
  197. package/lib/cjs/type/complex/function/complex.js +6 -4
  198. package/lib/cjs/type/fraction/Fraction.js +10 -6
  199. package/lib/cjs/type/fraction/function/fraction.js +6 -4
  200. package/lib/cjs/type/matrix/DenseMatrix.js +21 -6
  201. package/lib/cjs/type/matrix/SparseMatrix.js +12 -2
  202. package/lib/cjs/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +4 -4
  203. package/lib/cjs/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +5 -5
  204. package/lib/cjs/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +5 -5
  205. package/lib/cjs/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +7 -7
  206. package/lib/cjs/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +5 -5
  207. package/lib/cjs/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +5 -5
  208. package/lib/cjs/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +5 -5
  209. package/lib/cjs/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +6 -6
  210. package/lib/cjs/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +5 -5
  211. package/lib/cjs/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +5 -5
  212. package/lib/cjs/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +5 -5
  213. package/lib/cjs/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +5 -5
  214. package/lib/cjs/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +5 -5
  215. package/lib/cjs/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +5 -5
  216. package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +238 -0
  217. package/lib/cjs/type/number.js +6 -4
  218. package/lib/cjs/type/string.js +7 -5
  219. package/lib/cjs/type/unit/Unit.js +69 -21
  220. package/lib/cjs/type/unit/function/createUnit.js +2 -1
  221. package/lib/cjs/type/unit/function/unit.js +9 -3
  222. package/lib/cjs/utils/customs.js +2 -2
  223. package/lib/cjs/utils/emitter.js +1 -1
  224. package/lib/cjs/utils/function.js +2 -2
  225. package/lib/cjs/utils/is.js +27 -25
  226. package/lib/cjs/utils/latex.js +3 -3
  227. package/lib/cjs/utils/lruQueue.js +1 -1
  228. package/lib/cjs/utils/map.js +3 -3
  229. package/lib/cjs/utils/object.js +2 -2
  230. package/lib/cjs/utils/snapshot.js +30 -57
  231. package/lib/cjs/utils/string.js +3 -3
  232. package/lib/cjs/version.js +1 -1
  233. package/lib/esm/core/create.js +2 -1
  234. package/lib/esm/core/function/import.js +2 -12
  235. package/lib/esm/core/function/typed.js +47 -11
  236. package/lib/esm/entry/dependenciesAny/dependenciesChainClass.generated.js +2 -0
  237. package/lib/esm/entry/dependenciesAny/dependenciesKldivergence.generated.js +2 -0
  238. package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +2 -0
  239. package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +2 -0
  240. package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +2 -0
  241. package/lib/esm/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +34 -0
  242. package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +4 -0
  243. package/lib/esm/entry/dependenciesAny/dependenciesSqrtm.generated.js +2 -0
  244. package/lib/esm/entry/dependenciesAny/dependenciesStd.generated.js +2 -0
  245. package/lib/esm/entry/dependenciesAny/dependenciesStdTransform.generated.js +2 -0
  246. package/lib/esm/entry/dependenciesAny.generated.js +1 -0
  247. package/lib/esm/entry/dependenciesNumber/dependenciesChainClass.generated.js +2 -0
  248. package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +2 -0
  249. package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +2 -0
  250. package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +2 -0
  251. package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +30 -0
  252. package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +4 -0
  253. package/lib/esm/entry/dependenciesNumber/dependenciesStd.generated.js +2 -0
  254. package/lib/esm/entry/dependenciesNumber/dependenciesStdTransform.generated.js +2 -0
  255. package/lib/esm/entry/dependenciesNumber.generated.js +1 -0
  256. package/lib/esm/entry/impureFunctionsAny.generated.js +73 -48
  257. package/lib/esm/entry/impureFunctionsNumber.generated.js +81 -58
  258. package/lib/esm/entry/pureFunctionsAny.generated.js +39 -36
  259. package/lib/esm/entry/pureFunctionsNumber.generated.js +14 -13
  260. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +2 -0
  261. package/lib/esm/expression/embeddedDocs/function/algebra/simplifyConstant.js +8 -0
  262. package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
  263. package/lib/esm/expression/node/AccessorNode.js +158 -153
  264. package/lib/esm/expression/node/ArrayNode.js +162 -154
  265. package/lib/esm/expression/node/AssignmentNode.js +257 -245
  266. package/lib/esm/expression/node/BlockNode.js +177 -163
  267. package/lib/esm/expression/node/ConditionalNode.js +197 -174
  268. package/lib/esm/expression/node/ConstantNode.js +171 -163
  269. package/lib/esm/expression/node/FunctionAssignmentNode.js +205 -180
  270. package/lib/esm/expression/node/FunctionNode.js +407 -407
  271. package/lib/esm/expression/node/IndexNode.js +206 -198
  272. package/lib/esm/expression/node/Node.js +325 -325
  273. package/lib/esm/expression/node/ObjectNode.js +166 -157
  274. package/lib/esm/expression/node/OperatorNode.js +414 -377
  275. package/lib/esm/expression/node/ParenthesisNode.js +146 -138
  276. package/lib/esm/expression/node/RangeNode.js +221 -212
  277. package/lib/esm/expression/node/RelationalNode.js +190 -176
  278. package/lib/esm/expression/node/SymbolNode.js +161 -152
  279. package/lib/esm/expression/operators.js +96 -4
  280. package/lib/esm/expression/parse.js +25 -7
  281. package/lib/esm/expression/transform/std.transform.js +3 -1
  282. package/lib/esm/factoriesAny.js +1 -0
  283. package/lib/esm/factoriesNumber.js +1 -0
  284. package/lib/esm/function/algebra/derivative.js +22 -30
  285. package/lib/esm/function/algebra/leafCount.js +0 -3
  286. package/lib/esm/function/algebra/rationalize.js +83 -114
  287. package/lib/esm/function/algebra/resolve.js +25 -16
  288. package/lib/esm/function/algebra/simplify.js +82 -112
  289. package/lib/esm/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +39 -9
  290. package/lib/esm/function/algebra/simplifyCore.js +192 -91
  291. package/lib/esm/function/algebra/symbolicEqual.js +9 -26
  292. package/lib/esm/function/arithmetic/abs.js +3 -16
  293. package/lib/esm/function/arithmetic/add.js +21 -65
  294. package/lib/esm/function/arithmetic/addScalar.js +11 -5
  295. package/lib/esm/function/arithmetic/cbrt.js +7 -10
  296. package/lib/esm/function/arithmetic/ceil.js +25 -25
  297. package/lib/esm/function/arithmetic/cube.js +5 -9
  298. package/lib/esm/function/arithmetic/divide.js +7 -7
  299. package/lib/esm/function/arithmetic/divideScalar.js +2 -19
  300. package/lib/esm/function/arithmetic/dotDivide.js +22 -64
  301. package/lib/esm/function/arithmetic/dotMultiply.js +16 -60
  302. package/lib/esm/function/arithmetic/dotPow.js +30 -62
  303. package/lib/esm/function/arithmetic/exp.js +8 -11
  304. package/lib/esm/function/arithmetic/expm1.js +10 -9
  305. package/lib/esm/function/arithmetic/fix.js +17 -17
  306. package/lib/esm/function/arithmetic/floor.js +25 -25
  307. package/lib/esm/function/arithmetic/gcd.js +26 -70
  308. package/lib/esm/function/arithmetic/hypot.js +7 -6
  309. package/lib/esm/function/arithmetic/lcm.js +26 -70
  310. package/lib/esm/function/arithmetic/log.js +7 -10
  311. package/lib/esm/function/arithmetic/log10.js +1 -3
  312. package/lib/esm/function/arithmetic/log1p.js +4 -6
  313. package/lib/esm/function/arithmetic/log2.js +1 -3
  314. package/lib/esm/function/arithmetic/mod.js +21 -62
  315. package/lib/esm/function/arithmetic/multiply.js +23 -27
  316. package/lib/esm/function/arithmetic/multiplyScalar.js +2 -13
  317. package/lib/esm/function/arithmetic/norm.js +0 -4
  318. package/lib/esm/function/arithmetic/nthRoot.js +38 -73
  319. package/lib/esm/function/arithmetic/round.js +26 -28
  320. package/lib/esm/function/arithmetic/sign.js +5 -7
  321. package/lib/esm/function/arithmetic/sqrt.js +5 -8
  322. package/lib/esm/function/arithmetic/square.js +6 -9
  323. package/lib/esm/function/arithmetic/subtract.js +31 -95
  324. package/lib/esm/function/arithmetic/unaryMinus.js +6 -16
  325. package/lib/esm/function/arithmetic/unaryPlus.js +2 -4
  326. package/lib/esm/function/bitwise/bitAnd.js +16 -59
  327. package/lib/esm/function/bitwise/bitNot.js +1 -3
  328. package/lib/esm/function/bitwise/bitOr.js +16 -59
  329. package/lib/esm/function/bitwise/bitXor.js +16 -59
  330. package/lib/esm/function/bitwise/leftShift.js +38 -60
  331. package/lib/esm/function/bitwise/rightArithShift.js +38 -60
  332. package/lib/esm/function/bitwise/rightLogShift.js +38 -60
  333. package/lib/esm/function/bitwise/useMatrixForArrayScalar.js +13 -0
  334. package/lib/esm/function/complex/arg.js +1 -3
  335. package/lib/esm/function/complex/conj.js +3 -12
  336. package/lib/esm/function/complex/im.js +4 -15
  337. package/lib/esm/function/complex/re.js +3 -15
  338. package/lib/esm/function/logical/and.js +35 -57
  339. package/lib/esm/function/logical/not.js +3 -6
  340. package/lib/esm/function/logical/or.js +16 -61
  341. package/lib/esm/function/logical/xor.js +16 -61
  342. package/lib/esm/function/matrix/diff.js +2 -7
  343. package/lib/esm/function/matrix/ones.js +2 -1
  344. package/lib/esm/function/matrix/sqrtm.js +3 -2
  345. package/lib/esm/function/matrix/transpose.js +47 -50
  346. package/lib/esm/function/matrix/zeros.js +2 -1
  347. package/lib/esm/function/probability/factorial.js +1 -3
  348. package/lib/esm/function/probability/gamma.js +38 -39
  349. package/lib/esm/function/probability/kldivergence.js +3 -2
  350. package/lib/esm/function/probability/lgamma.js +29 -29
  351. package/lib/esm/function/relational/compare.js +21 -67
  352. package/lib/esm/function/relational/compareNatural.js +54 -49
  353. package/lib/esm/function/relational/compareText.js +10 -42
  354. package/lib/esm/function/relational/compareUnits.js +15 -0
  355. package/lib/esm/function/relational/equal.js +19 -79
  356. package/lib/esm/function/relational/equalScalar.js +6 -9
  357. package/lib/esm/function/relational/larger.js +23 -73
  358. package/lib/esm/function/relational/largerEq.js +23 -73
  359. package/lib/esm/function/relational/smaller.js +23 -73
  360. package/lib/esm/function/relational/smallerEq.js +23 -73
  361. package/lib/esm/function/relational/unequal.js +19 -79
  362. package/lib/esm/function/special/erf.js +1 -3
  363. package/lib/esm/function/statistics/std.js +10 -2
  364. package/lib/esm/function/trigonometry/acos.js +4 -7
  365. package/lib/esm/function/trigonometry/acosh.js +2 -6
  366. package/lib/esm/function/trigonometry/acot.js +4 -7
  367. package/lib/esm/function/trigonometry/acoth.js +4 -7
  368. package/lib/esm/function/trigonometry/acsc.js +4 -7
  369. package/lib/esm/function/trigonometry/acsch.js +4 -7
  370. package/lib/esm/function/trigonometry/asec.js +4 -7
  371. package/lib/esm/function/trigonometry/asech.js +4 -7
  372. package/lib/esm/function/trigonometry/asin.js +4 -8
  373. package/lib/esm/function/trigonometry/asinh.js +4 -8
  374. package/lib/esm/function/trigonometry/atan.js +4 -8
  375. package/lib/esm/function/trigonometry/atan2.js +25 -64
  376. package/lib/esm/function/trigonometry/atanh.js +4 -8
  377. package/lib/esm/function/trigonometry/cos.js +11 -22
  378. package/lib/esm/function/trigonometry/cosh.js +5 -20
  379. package/lib/esm/function/trigonometry/cot.js +10 -20
  380. package/lib/esm/function/trigonometry/coth.js +6 -20
  381. package/lib/esm/function/trigonometry/csc.js +12 -22
  382. package/lib/esm/function/trigonometry/csch.js +6 -20
  383. package/lib/esm/function/trigonometry/sec.js +12 -22
  384. package/lib/esm/function/trigonometry/sech.js +6 -20
  385. package/lib/esm/function/trigonometry/sin.js +11 -23
  386. package/lib/esm/function/trigonometry/sinh.js +5 -21
  387. package/lib/esm/function/trigonometry/tan.js +11 -23
  388. package/lib/esm/function/trigonometry/tanh.js +5 -21
  389. package/lib/esm/function/trigonometry/trigUnit.js +15 -0
  390. package/lib/esm/function/unit/to.js +8 -43
  391. package/lib/esm/function/utils/hasNumericValue.js +2 -0
  392. package/lib/esm/function/utils/isInteger.js +1 -3
  393. package/lib/esm/function/utils/isNegative.js +2 -6
  394. package/lib/esm/function/utils/isNumeric.js +3 -9
  395. package/lib/esm/function/utils/isPositive.js +2 -6
  396. package/lib/esm/function/utils/isPrime.js +1 -3
  397. package/lib/esm/function/utils/isZero.js +2 -6
  398. package/lib/esm/function/utils/numeric.js +11 -4
  399. package/lib/esm/function/utils/typeOf.js +38 -44
  400. package/lib/esm/type/bignumber/function/bignumber.js +1 -3
  401. package/lib/esm/type/boolean.js +1 -3
  402. package/lib/esm/type/chain/Chain.js +23 -3
  403. package/lib/esm/type/complex/Complex.js +4 -0
  404. package/lib/esm/type/complex/function/complex.js +1 -3
  405. package/lib/esm/type/fraction/Fraction.js +4 -0
  406. package/lib/esm/type/fraction/function/fraction.js +1 -3
  407. package/lib/esm/type/matrix/DenseMatrix.js +15 -1
  408. package/lib/esm/type/matrix/SparseMatrix.js +9 -0
  409. package/lib/esm/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +2 -2
  410. package/lib/esm/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +3 -3
  411. package/lib/esm/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +3 -3
  412. package/lib/esm/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +5 -5
  413. package/lib/esm/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +3 -3
  414. package/lib/esm/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +3 -3
  415. package/lib/esm/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +3 -3
  416. package/lib/esm/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +4 -4
  417. package/lib/esm/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +3 -3
  418. package/lib/esm/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +3 -3
  419. package/lib/esm/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +3 -3
  420. package/lib/esm/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +3 -3
  421. package/lib/esm/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +3 -3
  422. package/lib/esm/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +3 -3
  423. package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +168 -0
  424. package/lib/esm/type/number.js +1 -3
  425. package/lib/esm/type/string.js +1 -3
  426. package/lib/esm/type/unit/Unit.js +61 -13
  427. package/lib/esm/type/unit/function/createUnit.js +2 -1
  428. package/lib/esm/type/unit/function/unit.js +5 -3
  429. package/lib/esm/utils/is.js +18 -18
  430. package/lib/esm/utils/snapshot.js +22 -48
  431. package/lib/esm/version.js +1 -1
  432. package/package.json +21 -24
  433. package/types/index.d.ts +202 -181
  434. package/types/index.ts +264 -57
  435. package/lib/cjs/utils/polyfills.js +0 -14
  436. package/lib/esm/utils/polyfills.js +0 -12
@@ -1,11 +1,11 @@
1
1
  import { nearlyEqual as bigNearlyEqual } from '../../utils/bignumber/nearlyEqual.js';
2
2
  import { nearlyEqual } from '../../utils/number.js';
3
3
  import { factory } from '../../utils/factory.js';
4
- import { createAlgorithm03 } from '../../type/matrix/utils/algorithm03.js';
5
- import { createAlgorithm07 } from '../../type/matrix/utils/algorithm07.js';
6
- import { createAlgorithm12 } from '../../type/matrix/utils/algorithm12.js';
7
- import { createAlgorithm14 } from '../../type/matrix/utils/algorithm14.js';
8
- import { createAlgorithm13 } from '../../type/matrix/utils/algorithm13.js';
4
+ import { createMatAlgo03xDSf } from '../../type/matrix/utils/matAlgo03xDSf.js';
5
+ import { createMatAlgo07xSSf } from '../../type/matrix/utils/matAlgo07xSSf.js';
6
+ import { createMatAlgo12xSfs } from '../../type/matrix/utils/matAlgo12xSfs.js';
7
+ import { createMatrixAlgorithmSuite } from '../../type/matrix/utils/matrixAlgorithmSuite.js';
8
+ import { createCompareUnits } from './compareUnits.js';
9
9
  var name = 'smallerEq';
10
10
  var dependencies = ['typed', 'config', 'matrix', 'DenseMatrix'];
11
11
  export var createSmallerEq = /* #__PURE__ */factory(name, dependencies, _ref => {
@@ -15,21 +15,22 @@ export var createSmallerEq = /* #__PURE__ */factory(name, dependencies, _ref =>
15
15
  matrix,
16
16
  DenseMatrix
17
17
  } = _ref;
18
- var algorithm03 = createAlgorithm03({
18
+ var matAlgo03xDSf = createMatAlgo03xDSf({
19
19
  typed
20
20
  });
21
- var algorithm07 = createAlgorithm07({
21
+ var matAlgo07xSSf = createMatAlgo07xSSf({
22
22
  typed,
23
23
  DenseMatrix
24
24
  });
25
- var algorithm12 = createAlgorithm12({
25
+ var matAlgo12xSfs = createMatAlgo12xSfs({
26
26
  typed,
27
27
  DenseMatrix
28
28
  });
29
- var algorithm13 = createAlgorithm13({
30
- typed
29
+ var matrixAlgorithmSuite = createMatrixAlgorithmSuite({
30
+ typed,
31
+ matrix
31
32
  });
32
- var algorithm14 = createAlgorithm14({
33
+ var compareUnits = createCompareUnits({
33
34
  typed
34
35
  });
35
36
  /**
@@ -60,74 +61,23 @@ export var createSmallerEq = /* #__PURE__ */factory(name, dependencies, _ref =>
60
61
  * @return {boolean | Array | Matrix} Returns true when the x is smaller than y, else returns false
61
62
  */
62
63
 
63
- return typed(name, {
64
- 'boolean, boolean': function booleanBoolean(x, y) {
65
- return x <= y;
66
- },
67
- 'number, number': function numberNumber(x, y) {
68
- return x <= y || nearlyEqual(x, y, config.epsilon);
69
- },
64
+ return typed(name, createSmallerEqNumber({
65
+ typed,
66
+ config
67
+ }), {
68
+ 'boolean, boolean': (x, y) => x <= y,
70
69
  'BigNumber, BigNumber': function BigNumberBigNumber(x, y) {
71
70
  return x.lte(y) || bigNearlyEqual(x, y, config.epsilon);
72
71
  },
73
- 'Fraction, Fraction': function FractionFraction(x, y) {
74
- return x.compare(y) !== 1;
75
- },
72
+ 'Fraction, Fraction': (x, y) => x.compare(y) !== 1,
76
73
  'Complex, Complex': function ComplexComplex() {
77
74
  throw new TypeError('No ordering relation is defined for complex numbers');
78
- },
79
- 'Unit, Unit': function UnitUnit(x, y) {
80
- if (!x.equalBase(y)) {
81
- throw new Error('Cannot compare units with different base');
82
- }
83
-
84
- return this(x.value, y.value);
85
- },
86
- 'SparseMatrix, SparseMatrix': function SparseMatrixSparseMatrix(x, y) {
87
- return algorithm07(x, y, this);
88
- },
89
- 'SparseMatrix, DenseMatrix': function SparseMatrixDenseMatrix(x, y) {
90
- return algorithm03(y, x, this, true);
91
- },
92
- 'DenseMatrix, SparseMatrix': function DenseMatrixSparseMatrix(x, y) {
93
- return algorithm03(x, y, this, false);
94
- },
95
- 'DenseMatrix, DenseMatrix': function DenseMatrixDenseMatrix(x, y) {
96
- return algorithm13(x, y, this);
97
- },
98
- 'Array, Array': function ArrayArray(x, y) {
99
- // use matrix implementation
100
- return this(matrix(x), matrix(y)).valueOf();
101
- },
102
- 'Array, Matrix': function ArrayMatrix(x, y) {
103
- // use matrix implementation
104
- return this(matrix(x), y);
105
- },
106
- 'Matrix, Array': function MatrixArray(x, y) {
107
- // use matrix implementation
108
- return this(x, matrix(y));
109
- },
110
- 'SparseMatrix, any': function SparseMatrixAny(x, y) {
111
- return algorithm12(x, y, this, false);
112
- },
113
- 'DenseMatrix, any': function DenseMatrixAny(x, y) {
114
- return algorithm14(x, y, this, false);
115
- },
116
- 'any, SparseMatrix': function anySparseMatrix(x, y) {
117
- return algorithm12(y, x, this, true);
118
- },
119
- 'any, DenseMatrix': function anyDenseMatrix(x, y) {
120
- return algorithm14(y, x, this, true);
121
- },
122
- 'Array, any': function ArrayAny(x, y) {
123
- // use matrix implementation
124
- return algorithm14(matrix(x), y, this, false).valueOf();
125
- },
126
- 'any, Array': function anyArray(x, y) {
127
- // use matrix implementation
128
- return algorithm14(matrix(y), x, this, true).valueOf();
129
75
  }
130
- });
76
+ }, compareUnits, matrixAlgorithmSuite({
77
+ SS: matAlgo07xSSf,
78
+ DS: matAlgo03xDSf,
79
+ Ss: matAlgo12xSfs
80
+ }));
131
81
  });
132
82
  export var createSmallerEqNumber = /* #__PURE__ */factory(name, ['typed', 'config'], _ref2 => {
133
83
  var {
@@ -1,9 +1,8 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { createAlgorithm03 } from '../../type/matrix/utils/algorithm03.js';
3
- import { createAlgorithm07 } from '../../type/matrix/utils/algorithm07.js';
4
- import { createAlgorithm12 } from '../../type/matrix/utils/algorithm12.js';
5
- import { createAlgorithm14 } from '../../type/matrix/utils/algorithm14.js';
6
- import { createAlgorithm13 } from '../../type/matrix/utils/algorithm13.js';
2
+ import { createMatAlgo03xDSf } from '../../type/matrix/utils/matAlgo03xDSf.js';
3
+ import { createMatAlgo07xSSf } from '../../type/matrix/utils/matAlgo07xSSf.js';
4
+ import { createMatAlgo12xSfs } from '../../type/matrix/utils/matAlgo12xSfs.js';
5
+ import { createMatrixAlgorithmSuite } from '../../type/matrix/utils/matrixAlgorithmSuite.js';
7
6
  var name = 'unequal';
8
7
  var dependencies = ['typed', 'config', 'equalScalar', 'matrix', 'DenseMatrix'];
9
8
  export var createUnequal = /* #__PURE__ */factory(name, dependencies, _ref => {
@@ -14,22 +13,20 @@ export var createUnequal = /* #__PURE__ */factory(name, dependencies, _ref => {
14
13
  matrix,
15
14
  DenseMatrix
16
15
  } = _ref;
17
- var algorithm03 = createAlgorithm03({
16
+ var matAlgo03xDSf = createMatAlgo03xDSf({
18
17
  typed
19
18
  });
20
- var algorithm07 = createAlgorithm07({
19
+ var matAlgo07xSSf = createMatAlgo07xSSf({
21
20
  typed,
22
21
  DenseMatrix
23
22
  });
24
- var algorithm12 = createAlgorithm12({
23
+ var matAlgo12xSfs = createMatAlgo12xSfs({
25
24
  typed,
26
25
  DenseMatrix
27
26
  });
28
- var algorithm13 = createAlgorithm13({
29
- typed
30
- });
31
- var algorithm14 = createAlgorithm14({
32
- typed
27
+ var matrixAlgorithmSuite = createMatrixAlgorithmSuite({
28
+ typed,
29
+ matrix
33
30
  });
34
31
  /**
35
32
  * Test whether two values are unequal.
@@ -75,72 +72,15 @@ export var createUnequal = /* #__PURE__ */factory(name, dependencies, _ref => {
75
72
  * @return {boolean | Array | Matrix} Returns true when the compared values are unequal, else returns false
76
73
  */
77
74
 
78
- return typed('unequal', {
79
- 'any, any': function anyAny(x, y) {
80
- // strict equality for null and undefined?
81
- if (x === null) {
82
- return y !== null;
83
- }
84
-
85
- if (y === null) {
86
- return x !== null;
87
- }
88
-
89
- if (x === undefined) {
90
- return y !== undefined;
91
- }
92
-
93
- if (y === undefined) {
94
- return x !== undefined;
95
- }
96
-
97
- return _unequal(x, y);
98
- },
99
- 'SparseMatrix, SparseMatrix': function SparseMatrixSparseMatrix(x, y) {
100
- return algorithm07(x, y, _unequal);
101
- },
102
- 'SparseMatrix, DenseMatrix': function SparseMatrixDenseMatrix(x, y) {
103
- return algorithm03(y, x, _unequal, true);
104
- },
105
- 'DenseMatrix, SparseMatrix': function DenseMatrixSparseMatrix(x, y) {
106
- return algorithm03(x, y, _unequal, false);
107
- },
108
- 'DenseMatrix, DenseMatrix': function DenseMatrixDenseMatrix(x, y) {
109
- return algorithm13(x, y, _unequal);
110
- },
111
- 'Array, Array': function ArrayArray(x, y) {
112
- // use matrix implementation
113
- return this(matrix(x), matrix(y)).valueOf();
114
- },
115
- 'Array, Matrix': function ArrayMatrix(x, y) {
116
- // use matrix implementation
117
- return this(matrix(x), y);
118
- },
119
- 'Matrix, Array': function MatrixArray(x, y) {
120
- // use matrix implementation
121
- return this(x, matrix(y));
122
- },
123
- 'SparseMatrix, any': function SparseMatrixAny(x, y) {
124
- return algorithm12(x, y, _unequal, false);
125
- },
126
- 'DenseMatrix, any': function DenseMatrixAny(x, y) {
127
- return algorithm14(x, y, _unequal, false);
128
- },
129
- 'any, SparseMatrix': function anySparseMatrix(x, y) {
130
- return algorithm12(y, x, _unequal, true);
131
- },
132
- 'any, DenseMatrix': function anyDenseMatrix(x, y) {
133
- return algorithm14(y, x, _unequal, true);
134
- },
135
- 'Array, any': function ArrayAny(x, y) {
136
- // use matrix implementation
137
- return algorithm14(matrix(x), y, _unequal, false).valueOf();
138
- },
139
- 'any, Array': function anyArray(x, y) {
140
- // use matrix implementation
141
- return algorithm14(matrix(y), x, _unequal, true).valueOf();
142
- }
143
- });
75
+ return typed(name, createUnequalNumber({
76
+ typed,
77
+ equalScalar
78
+ }), matrixAlgorithmSuite({
79
+ elop: _unequal,
80
+ SS: matAlgo07xSSf,
81
+ DS: matAlgo03xDSf,
82
+ Ss: matAlgo12xSfs
83
+ }));
144
84
 
145
85
  function _unequal(x, y) {
146
86
  return !equalScalar(x, y);
@@ -51,9 +51,7 @@ export var createErf = /* #__PURE__ */factory(name, dependencies, _ref => {
51
51
 
52
52
  return sign(x) * (1 - erfc3(y));
53
53
  },
54
- 'Array | Matrix': function ArrayMatrix(n) {
55
- return deepMap(n, this);
56
- } // TODO: For complex numbers, use the approximation for the Faddeeva function
54
+ 'Array | Matrix': typed.referToSelf(self => n => deepMap(n, self)) // TODO: For complex numbers, use the approximation for the Faddeeva function
57
55
  // from "More Efficient Computation of the Complex Error Function" (AMS)
58
56
 
59
57
  });
@@ -1,9 +1,11 @@
1
1
  import { factory } from '../../utils/factory.js';
2
+ import { isCollection } from '../../utils/is.js';
2
3
  var name = 'std';
3
- var dependencies = ['typed', 'sqrt', 'variance'];
4
+ var dependencies = ['typed', 'map', 'sqrt', 'variance'];
4
5
  export var createStd = /* #__PURE__ */factory(name, dependencies, _ref => {
5
6
  var {
6
7
  typed,
8
+ map,
7
9
  sqrt,
8
10
  variance
9
11
  } = _ref;
@@ -81,7 +83,13 @@ export var createStd = /* #__PURE__ */factory(name, dependencies, _ref => {
81
83
  }
82
84
 
83
85
  try {
84
- return sqrt(variance.apply(null, arguments));
86
+ var v = variance.apply(null, arguments);
87
+
88
+ if (isCollection(v)) {
89
+ return map(v, sqrt);
90
+ } else {
91
+ return sqrt(v);
92
+ }
85
93
  } catch (err) {
86
94
  if (err instanceof TypeError && err.message.indexOf(' variance') !== -1) {
87
95
  throw new TypeError(err.message.replace(' variance', ' std'));
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  var name = 'acos';
4
3
  var dependencies = ['typed', 'config', 'Complex'];
5
4
  export var createAcos = /* #__PURE__ */factory(name, dependencies, _ref => {
@@ -12,7 +11,8 @@ export var createAcos = /* #__PURE__ */factory(name, dependencies, _ref => {
12
11
  /**
13
12
  * Calculate the inverse cosine of a value.
14
13
  *
15
- * For matrices, the function is evaluated element wise.
14
+ * To avoid confusion with the matrix arccosine, this function does not
15
+ * apply to matrices.
16
16
  *
17
17
  * Syntax:
18
18
  *
@@ -29,8 +29,8 @@ export var createAcos = /* #__PURE__ */factory(name, dependencies, _ref => {
29
29
  *
30
30
  * cos, atan, asin
31
31
  *
32
- * @param {number | BigNumber | Complex | Array | Matrix} x Function input
33
- * @return {number | BigNumber | Complex | Array | Matrix} The arc cosine of x
32
+ * @param {number | BigNumber | Complex} x Function input
33
+ * @return {number | BigNumber | Complex} The arc cosine of x
34
34
  */
35
35
  return typed(name, {
36
36
  number: function number(x) {
@@ -45,9 +45,6 @@ export var createAcos = /* #__PURE__ */factory(name, dependencies, _ref => {
45
45
  },
46
46
  BigNumber: function BigNumber(x) {
47
47
  return x.acos();
48
- },
49
- 'Array | Matrix': function ArrayMatrix(x) {
50
- return deepMap(x, this);
51
48
  }
52
49
  });
53
50
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { acoshNumber } from '../../plain/number/index.js';
4
3
  var name = 'acosh';
5
4
  var dependencies = ['typed', 'config', 'Complex'];
@@ -28,8 +27,8 @@ export var createAcosh = /* #__PURE__ */factory(name, dependencies, _ref => {
28
27
  *
29
28
  * cosh, asinh, atanh
30
29
  *
31
- * @param {number | Complex | Unit | Array | Matrix} x Function input
32
- * @return {number | Complex | Array | Matrix} Hyperbolic arccosine of x
30
+ * @param {number | BigNumber | Complex} x Function input
31
+ * @return {number | BigNumber | Complex} Hyperbolic arccosine of x
33
32
  */
34
33
  return typed(name, {
35
34
  number: function number(x) {
@@ -48,9 +47,6 @@ export var createAcosh = /* #__PURE__ */factory(name, dependencies, _ref => {
48
47
  },
49
48
  BigNumber: function BigNumber(x) {
50
49
  return x.acosh();
51
- },
52
- 'Array | Matrix': function ArrayMatrix(x) {
53
- return deepMap(x, this);
54
50
  }
55
51
  });
56
52
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { acotNumber } from '../../plain/number/index.js';
4
3
  var name = 'acot';
5
4
  var dependencies = ['typed', 'BigNumber'];
@@ -12,7 +11,8 @@ export var createAcot = /* #__PURE__ */factory(name, dependencies, _ref => {
12
11
  /**
13
12
  * Calculate the inverse cotangent of a value, defined as `acot(x) = atan(1/x)`.
14
13
  *
15
- * For matrices, the function is evaluated element wise.
14
+ * To avoid confusion with the matrix arccotanget, this function does not
15
+ * apply to matrices.
16
16
  *
17
17
  * Syntax:
18
18
  *
@@ -29,8 +29,8 @@ export var createAcot = /* #__PURE__ */factory(name, dependencies, _ref => {
29
29
  *
30
30
  * cot, atan
31
31
  *
32
- * @param {number | Complex | Array | Matrix} x Function input
33
- * @return {number | Complex | Array | Matrix} The arc cotangent of x
32
+ * @param {number | BigNumber| Complex} x Function input
33
+ * @return {number | BigNumber| Complex} The arc cotangent of x
34
34
  */
35
35
  return typed(name, {
36
36
  number: acotNumber,
@@ -39,9 +39,6 @@ export var createAcot = /* #__PURE__ */factory(name, dependencies, _ref => {
39
39
  },
40
40
  BigNumber: function BigNumber(x) {
41
41
  return new _BigNumber(1).div(x).atan();
42
- },
43
- 'Array | Matrix': function ArrayMatrix(x) {
44
- return deepMap(x, this);
45
42
  }
46
43
  });
47
44
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { acothNumber } from '../../plain/number/index.js';
4
3
  var name = 'acoth';
5
4
  var dependencies = ['typed', 'config', 'Complex', 'BigNumber'];
@@ -15,7 +14,8 @@ export var createAcoth = /* #__PURE__ */factory(name, dependencies, _ref => {
15
14
  * Calculate the hyperbolic arccotangent of a value,
16
15
  * defined as `acoth(x) = atanh(1/x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.
17
16
  *
18
- * For matrices, the function is evaluated element wise.
17
+ * To avoid confusion with the matrix hyperbolic arccotangent, this
18
+ * function does not apply to matrices.
19
19
  *
20
20
  * Syntax:
21
21
  *
@@ -29,8 +29,8 @@ export var createAcoth = /* #__PURE__ */factory(name, dependencies, _ref => {
29
29
  *
30
30
  * acsch, asech
31
31
  *
32
- * @param {number | Complex | Array | Matrix} x Function input
33
- * @return {number | Complex | Array | Matrix} Hyperbolic arccotangent of x
32
+ * @param {number | BigNumber | Complex} x Function input
33
+ * @return {number | BigNumber | Complex} Hyperbolic arccotangent of x
34
34
  */
35
35
  return typed(name, {
36
36
  number: function number(x) {
@@ -45,9 +45,6 @@ export var createAcoth = /* #__PURE__ */factory(name, dependencies, _ref => {
45
45
  },
46
46
  BigNumber: function BigNumber(x) {
47
47
  return new _BigNumber(1).div(x).atanh();
48
- },
49
- 'Array | Matrix': function ArrayMatrix(x) {
50
- return deepMap(x, this);
51
48
  }
52
49
  });
53
50
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { acscNumber } from '../../plain/number/index.js';
4
3
  var name = 'acsc';
5
4
  var dependencies = ['typed', 'config', 'Complex', 'BigNumber'];
@@ -14,7 +13,8 @@ export var createAcsc = /* #__PURE__ */factory(name, dependencies, _ref => {
14
13
  /**
15
14
  * Calculate the inverse cosecant of a value, defined as `acsc(x) = asin(1/x)`.
16
15
  *
17
- * For matrices, the function is evaluated element wise.
16
+ * To avoid confusion with the matrix arccosecant, this function does not
17
+ * apply to matrices.
18
18
  *
19
19
  * Syntax:
20
20
  *
@@ -31,8 +31,8 @@ export var createAcsc = /* #__PURE__ */factory(name, dependencies, _ref => {
31
31
  *
32
32
  * csc, asin, asec
33
33
  *
34
- * @param {number | Complex | Array | Matrix} x Function input
35
- * @return {number | Complex | Array | Matrix} The arc cosecant of x
34
+ * @param {number | BigNumber | Complex} x Function input
35
+ * @return {number | BigNumber | Complex} The arc cosecant of x
36
36
  */
37
37
  return typed(name, {
38
38
  number: function number(x) {
@@ -47,9 +47,6 @@ export var createAcsc = /* #__PURE__ */factory(name, dependencies, _ref => {
47
47
  },
48
48
  BigNumber: function BigNumber(x) {
49
49
  return new _BigNumber(1).div(x).asin();
50
- },
51
- 'Array | Matrix': function ArrayMatrix(x) {
52
- return deepMap(x, this);
53
50
  }
54
51
  });
55
52
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { acschNumber } from '../../plain/number/index.js';
4
3
  var name = 'acsch';
5
4
  var dependencies = ['typed', 'BigNumber'];
@@ -13,7 +12,8 @@ export var createAcsch = /* #__PURE__ */factory(name, dependencies, _ref => {
13
12
  * Calculate the hyperbolic arccosecant of a value,
14
13
  * defined as `acsch(x) = asinh(1/x) = ln(1/x + sqrt(1/x^2 + 1))`.
15
14
  *
16
- * For matrices, the function is evaluated element wise.
15
+ * To avoid confusion with the matrix hyperbolic arccosecant, this function
16
+ * does not apply to matrices.
17
17
  *
18
18
  * Syntax:
19
19
  *
@@ -27,8 +27,8 @@ export var createAcsch = /* #__PURE__ */factory(name, dependencies, _ref => {
27
27
  *
28
28
  * asech, acoth
29
29
  *
30
- * @param {number | Complex | Array | Matrix} x Function input
31
- * @return {number | Complex | Array | Matrix} Hyperbolic arccosecant of x
30
+ * @param {number | BigNumber | Complex} x Function input
31
+ * @return {number | BigNumber | Complex} Hyperbolic arccosecant of x
32
32
  */
33
33
  return typed(name, {
34
34
  number: acschNumber,
@@ -37,9 +37,6 @@ export var createAcsch = /* #__PURE__ */factory(name, dependencies, _ref => {
37
37
  },
38
38
  BigNumber: function BigNumber(x) {
39
39
  return new _BigNumber(1).div(x).asinh();
40
- },
41
- 'Array | Matrix': function ArrayMatrix(x) {
42
- return deepMap(x, this);
43
40
  }
44
41
  });
45
42
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { asecNumber } from '../../plain/number/index.js';
4
3
  var name = 'asec';
5
4
  var dependencies = ['typed', 'config', 'Complex', 'BigNumber'];
@@ -14,7 +13,8 @@ export var createAsec = /* #__PURE__ */factory(name, dependencies, _ref => {
14
13
  /**
15
14
  * Calculate the inverse secant of a value. Defined as `asec(x) = acos(1/x)`.
16
15
  *
17
- * For matrices, the function is evaluated element wise.
16
+ * To avoid confusion with the matrix arcsecant, this function does not
17
+ * apply to matrices.
18
18
  *
19
19
  * Syntax:
20
20
  *
@@ -31,8 +31,8 @@ export var createAsec = /* #__PURE__ */factory(name, dependencies, _ref => {
31
31
  *
32
32
  * acos, acot, acsc
33
33
  *
34
- * @param {number | Complex | Array | Matrix} x Function input
35
- * @return {number | Complex | Array | Matrix} The arc secant of x
34
+ * @param {number | BigNumber | Complex} x Function input
35
+ * @return {number | BigNumber | Complex} The arc secant of x
36
36
  */
37
37
  return typed(name, {
38
38
  number: function number(x) {
@@ -47,9 +47,6 @@ export var createAsec = /* #__PURE__ */factory(name, dependencies, _ref => {
47
47
  },
48
48
  BigNumber: function BigNumber(x) {
49
49
  return new _BigNumber(1).div(x).acos();
50
- },
51
- 'Array | Matrix': function ArrayMatrix(x) {
52
- return deepMap(x, this);
53
50
  }
54
51
  });
55
52
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { asechNumber } from '../../plain/number/index.js';
4
3
  var name = 'asech';
5
4
  var dependencies = ['typed', 'config', 'Complex', 'BigNumber'];
@@ -15,7 +14,8 @@ export var createAsech = /* #__PURE__ */factory(name, dependencies, _ref => {
15
14
  * Calculate the hyperbolic arcsecant of a value,
16
15
  * defined as `asech(x) = acosh(1/x) = ln(sqrt(1/x^2 - 1) + 1/x)`.
17
16
  *
18
- * For matrices, the function is evaluated element wise.
17
+ * To avoid confusion with the matrix hyperbolic arcsecant, this function
18
+ * does not apply to matrices.
19
19
  *
20
20
  * Syntax:
21
21
  *
@@ -29,8 +29,8 @@ export var createAsech = /* #__PURE__ */factory(name, dependencies, _ref => {
29
29
  *
30
30
  * acsch, acoth
31
31
  *
32
- * @param {number | Complex | Array | Matrix} x Function input
33
- * @return {number | Complex | Array | Matrix} Hyperbolic arcsecant of x
32
+ * @param {number | BigNumber | Complex} x Function input
33
+ * @return {number | BigNumber | Complex} Hyperbolic arcsecant of x
34
34
  */
35
35
  return typed(name, {
36
36
  number: function number(x) {
@@ -52,9 +52,6 @@ export var createAsech = /* #__PURE__ */factory(name, dependencies, _ref => {
52
52
  },
53
53
  BigNumber: function BigNumber(x) {
54
54
  return new _BigNumber(1).div(x).acosh();
55
- },
56
- 'Array | Matrix': function ArrayMatrix(x) {
57
- return deepMap(x, this);
58
55
  }
59
56
  });
60
57
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  var name = 'asin';
4
3
  var dependencies = ['typed', 'config', 'Complex'];
5
4
  export var createAsin = /* #__PURE__ */factory(name, dependencies, _ref => {
@@ -12,7 +11,8 @@ export var createAsin = /* #__PURE__ */factory(name, dependencies, _ref => {
12
11
  /**
13
12
  * Calculate the inverse sine of a value.
14
13
  *
15
- * For matrices, the function is evaluated element wise.
14
+ * To avoid confusion with the matric arcsine, this function does not apply
15
+ * to matrices.
16
16
  *
17
17
  * Syntax:
18
18
  *
@@ -29,8 +29,8 @@ export var createAsin = /* #__PURE__ */factory(name, dependencies, _ref => {
29
29
  *
30
30
  * sin, atan, acos
31
31
  *
32
- * @param {number | BigNumber | Complex | Array | Matrix} x Function input
33
- * @return {number | BigNumber | Complex | Array | Matrix} The arc sine of x
32
+ * @param {number | BigNumber | Complex} x Function input
33
+ * @return {number | BigNumber | Complex} The arc sine of x
34
34
  */
35
35
  return typed(name, {
36
36
  number: function number(x) {
@@ -45,10 +45,6 @@ export var createAsin = /* #__PURE__ */factory(name, dependencies, _ref => {
45
45
  },
46
46
  BigNumber: function BigNumber(x) {
47
47
  return x.asin();
48
- },
49
- 'Array | Matrix': function ArrayMatrix(x) {
50
- // deep map collection, skip zeros since asin(0) = 0
51
- return deepMap(x, this, true);
52
48
  }
53
49
  });
54
50
  });
@@ -1,5 +1,4 @@
1
1
  import { factory } from '../../utils/factory.js';
2
- import { deepMap } from '../../utils/collection.js';
3
2
  import { asinhNumber } from '../../plain/number/index.js';
4
3
  var name = 'asinh';
5
4
  var dependencies = ['typed'];
@@ -12,7 +11,8 @@ export var createAsinh = /* #__PURE__ */factory(name, dependencies, _ref => {
12
11
  * Calculate the hyperbolic arcsine of a value,
13
12
  * defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.
14
13
  *
15
- * For matrices, the function is evaluated element wise.
14
+ * To avoid confusion with the matrix hyperbolic arcsine, this function
15
+ * does not apply to matrices.
16
16
  *
17
17
  * Syntax:
18
18
  *
@@ -26,8 +26,8 @@ export var createAsinh = /* #__PURE__ */factory(name, dependencies, _ref => {
26
26
  *
27
27
  * acosh, atanh
28
28
  *
29
- * @param {number | Complex | Array | Matrix} x Function input
30
- * @return {number | Complex | Array | Matrix} Hyperbolic arcsine of x
29
+ * @param {number | BigNumber | Complex} x Function input
30
+ * @return {number | BigNumber | Complex} Hyperbolic arcsine of x
31
31
  */
32
32
  return typed('asinh', {
33
33
  number: asinhNumber,
@@ -36,10 +36,6 @@ export var createAsinh = /* #__PURE__ */factory(name, dependencies, _ref => {
36
36
  },
37
37
  BigNumber: function BigNumber(x) {
38
38
  return x.asinh();
39
- },
40
- 'Array | Matrix': function ArrayMatrix(x) {
41
- // deep map collection, skip zeros since asinh(0) = 0
42
- return deepMap(x, this, true);
43
39
  }
44
40
  });
45
41
  });