mathjs 11.2.0 → 11.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1322) hide show
  1. package/HISTORY.md +13 -0
  2. package/README.md +26 -0
  3. package/lib/browser/math.js +1 -1
  4. package/lib/browser/math.js.LICENSE.txt +2 -2
  5. package/lib/browser/math.js.map +1 -1
  6. package/lib/cjs/constants.js +21 -23
  7. package/lib/cjs/core/create.js +23 -41
  8. package/lib/cjs/core/function/config.js +12 -16
  9. package/lib/cjs/core/function/import.js +21 -66
  10. package/lib/cjs/core/function/typed.js +24 -50
  11. package/lib/cjs/defaultInstance.js +0 -7
  12. package/lib/cjs/entry/allFactoriesAny.js +1 -5
  13. package/lib/cjs/entry/allFactoriesNumber.js +1 -5
  14. package/lib/cjs/entry/configReadonly.js +0 -7
  15. package/lib/cjs/entry/dependenciesAny/dependenciesAbs.generated.js +1 -3
  16. package/lib/cjs/entry/dependenciesAny/dependenciesAccessorNode.generated.js +1 -4
  17. package/lib/cjs/entry/dependenciesAny/dependenciesAcos.generated.js +1 -4
  18. package/lib/cjs/entry/dependenciesAny/dependenciesAcosh.generated.js +1 -4
  19. package/lib/cjs/entry/dependenciesAny/dependenciesAcot.generated.js +1 -4
  20. package/lib/cjs/entry/dependenciesAny/dependenciesAcoth.generated.js +1 -5
  21. package/lib/cjs/entry/dependenciesAny/dependenciesAcsc.generated.js +1 -5
  22. package/lib/cjs/entry/dependenciesAny/dependenciesAcsch.generated.js +1 -4
  23. package/lib/cjs/entry/dependenciesAny/dependenciesAdd.generated.js +1 -8
  24. package/lib/cjs/entry/dependenciesAny/dependenciesAddScalar.generated.js +1 -3
  25. package/lib/cjs/entry/dependenciesAny/dependenciesAnd.generated.js +1 -7
  26. package/lib/cjs/entry/dependenciesAny/dependenciesApply.generated.js +1 -4
  27. package/lib/cjs/entry/dependenciesAny/dependenciesApplyTransform.generated.js +1 -4
  28. package/lib/cjs/entry/dependenciesAny/dependenciesArg.generated.js +1 -3
  29. package/lib/cjs/entry/dependenciesAny/dependenciesArrayNode.generated.js +1 -3
  30. package/lib/cjs/entry/dependenciesAny/dependenciesAsec.generated.js +1 -5
  31. package/lib/cjs/entry/dependenciesAny/dependenciesAsech.generated.js +1 -5
  32. package/lib/cjs/entry/dependenciesAny/dependenciesAsin.generated.js +1 -4
  33. package/lib/cjs/entry/dependenciesAny/dependenciesAsinh.generated.js +1 -3
  34. package/lib/cjs/entry/dependenciesAny/dependenciesAssignmentNode.generated.js +1 -5
  35. package/lib/cjs/entry/dependenciesAny/dependenciesAtan.generated.js +1 -3
  36. package/lib/cjs/entry/dependenciesAny/dependenciesAtan2.generated.js +1 -7
  37. package/lib/cjs/entry/dependenciesAny/dependenciesAtanh.generated.js +1 -4
  38. package/lib/cjs/entry/dependenciesAny/dependenciesAtomicMass.generated.js +1 -4
  39. package/lib/cjs/entry/dependenciesAny/dependenciesAvogadro.generated.js +1 -4
  40. package/lib/cjs/entry/dependenciesAny/dependenciesBellNumbers.generated.js +1 -7
  41. package/lib/cjs/entry/dependenciesAny/dependenciesBigNumberClass.generated.js +1 -2
  42. package/lib/cjs/entry/dependenciesAny/dependenciesBignumber.generated.js +1 -4
  43. package/lib/cjs/entry/dependenciesAny/dependenciesBin.generated.js +1 -4
  44. package/lib/cjs/entry/dependenciesAny/dependenciesBitAnd.generated.js +1 -5
  45. package/lib/cjs/entry/dependenciesAny/dependenciesBitNot.generated.js +1 -3
  46. package/lib/cjs/entry/dependenciesAny/dependenciesBitOr.generated.js +1 -6
  47. package/lib/cjs/entry/dependenciesAny/dependenciesBitXor.generated.js +1 -5
  48. package/lib/cjs/entry/dependenciesAny/dependenciesBlockNode.generated.js +1 -4
  49. package/lib/cjs/entry/dependenciesAny/dependenciesBohrMagneton.generated.js +1 -4
  50. package/lib/cjs/entry/dependenciesAny/dependenciesBohrRadius.generated.js +1 -4
  51. package/lib/cjs/entry/dependenciesAny/dependenciesBoltzmann.generated.js +1 -4
  52. package/lib/cjs/entry/dependenciesAny/dependenciesBoolean.generated.js +1 -3
  53. package/lib/cjs/entry/dependenciesAny/dependenciesCatalan.generated.js +1 -9
  54. package/lib/cjs/entry/dependenciesAny/dependenciesCbrt.generated.js +1 -9
  55. package/lib/cjs/entry/dependenciesAny/dependenciesCeil.generated.js +1 -8
  56. package/lib/cjs/entry/dependenciesAny/dependenciesChain.generated.js +1 -4
  57. package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +1 -3
  58. package/lib/cjs/entry/dependenciesAny/dependenciesClassicalElectronRadius.generated.js +1 -4
  59. package/lib/cjs/entry/dependenciesAny/dependenciesClone.generated.js +1 -3
  60. package/lib/cjs/entry/dependenciesAny/dependenciesColumn.generated.js +1 -6
  61. package/lib/cjs/entry/dependenciesAny/dependenciesColumnTransform.generated.js +1 -6
  62. package/lib/cjs/entry/dependenciesAny/dependenciesCombinations.generated.js +1 -3
  63. package/lib/cjs/entry/dependenciesAny/dependenciesCombinationsWithRep.generated.js +1 -3
  64. package/lib/cjs/entry/dependenciesAny/dependenciesCompare.generated.js +1 -8
  65. package/lib/cjs/entry/dependenciesAny/dependenciesCompareNatural.generated.js +1 -4
  66. package/lib/cjs/entry/dependenciesAny/dependenciesCompareText.generated.js +1 -4
  67. package/lib/cjs/entry/dependenciesAny/dependenciesCompile.generated.js +1 -4
  68. package/lib/cjs/entry/dependenciesAny/dependenciesComplex.generated.js +1 -4
  69. package/lib/cjs/entry/dependenciesAny/dependenciesComplexClass.generated.js +1 -2
  70. package/lib/cjs/entry/dependenciesAny/dependenciesComposition.generated.js +1 -9
  71. package/lib/cjs/entry/dependenciesAny/dependenciesConcat.generated.js +1 -5
  72. package/lib/cjs/entry/dependenciesAny/dependenciesConcatTransform.generated.js +1 -5
  73. package/lib/cjs/entry/dependenciesAny/dependenciesConditionalNode.generated.js +1 -3
  74. package/lib/cjs/entry/dependenciesAny/dependenciesConductanceQuantum.generated.js +1 -4
  75. package/lib/cjs/entry/dependenciesAny/dependenciesConj.generated.js +1 -3
  76. package/lib/cjs/entry/dependenciesAny/dependenciesConstantNode.generated.js +1 -3
  77. package/lib/cjs/entry/dependenciesAny/dependenciesCos.generated.js +1 -3
  78. package/lib/cjs/entry/dependenciesAny/dependenciesCosh.generated.js +1 -3
  79. package/lib/cjs/entry/dependenciesAny/dependenciesCot.generated.js +1 -4
  80. package/lib/cjs/entry/dependenciesAny/dependenciesCoth.generated.js +1 -4
  81. package/lib/cjs/entry/dependenciesAny/dependenciesCoulomb.generated.js +1 -4
  82. package/lib/cjs/entry/dependenciesAny/dependenciesCount.generated.js +1 -5
  83. package/lib/cjs/entry/dependenciesAny/dependenciesCreateUnit.generated.js +1 -4
  84. package/lib/cjs/entry/dependenciesAny/dependenciesCross.generated.js +1 -6
  85. package/lib/cjs/entry/dependenciesAny/dependenciesCsc.generated.js +1 -4
  86. package/lib/cjs/entry/dependenciesAny/dependenciesCsch.generated.js +1 -4
  87. package/lib/cjs/entry/dependenciesAny/dependenciesCtranspose.generated.js +1 -5
  88. package/lib/cjs/entry/dependenciesAny/dependenciesCube.generated.js +1 -3
  89. package/lib/cjs/entry/dependenciesAny/dependenciesCumSum.generated.js +1 -5
  90. package/lib/cjs/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +1 -5
  91. package/lib/cjs/entry/dependenciesAny/dependenciesDeepEqual.generated.js +1 -4
  92. package/lib/cjs/entry/dependenciesAny/dependenciesDenseMatrixClass.generated.js +1 -3
  93. package/lib/cjs/entry/dependenciesAny/dependenciesDerivative.generated.js +1 -13
  94. package/lib/cjs/entry/dependenciesAny/dependenciesDet.generated.js +1 -9
  95. package/lib/cjs/entry/dependenciesAny/dependenciesDeuteronMass.generated.js +1 -4
  96. package/lib/cjs/entry/dependenciesAny/dependenciesDiag.generated.js +1 -6
  97. package/lib/cjs/entry/dependenciesAny/dependenciesDiff.generated.js +1 -6
  98. package/lib/cjs/entry/dependenciesAny/dependenciesDiffTransform.generated.js +1 -7
  99. package/lib/cjs/entry/dependenciesAny/dependenciesDistance.generated.js +1 -10
  100. package/lib/cjs/entry/dependenciesAny/dependenciesDivide.generated.js +1 -8
  101. package/lib/cjs/entry/dependenciesAny/dependenciesDivideScalar.generated.js +1 -4
  102. package/lib/cjs/entry/dependenciesAny/dependenciesDot.generated.js +1 -7
  103. package/lib/cjs/entry/dependenciesAny/dependenciesDotDivide.generated.js +1 -7
  104. package/lib/cjs/entry/dependenciesAny/dependenciesDotMultiply.generated.js +1 -6
  105. package/lib/cjs/entry/dependenciesAny/dependenciesDotPow.generated.js +1 -7
  106. package/lib/cjs/entry/dependenciesAny/dependenciesE.generated.js +1 -3
  107. package/lib/cjs/entry/dependenciesAny/dependenciesEfimovFactor.generated.js +1 -3
  108. package/lib/cjs/entry/dependenciesAny/dependenciesEigs.generated.js +1 -32
  109. package/lib/cjs/entry/dependenciesAny/dependenciesElectricConstant.generated.js +1 -4
  110. package/lib/cjs/entry/dependenciesAny/dependenciesElectronMass.generated.js +1 -4
  111. package/lib/cjs/entry/dependenciesAny/dependenciesElementaryCharge.generated.js +1 -4
  112. package/lib/cjs/entry/dependenciesAny/dependenciesEqual.generated.js +1 -6
  113. package/lib/cjs/entry/dependenciesAny/dependenciesEqualScalar.generated.js +1 -3
  114. package/lib/cjs/entry/dependenciesAny/dependenciesEqualText.generated.js +1 -5
  115. package/lib/cjs/entry/dependenciesAny/dependenciesErf.generated.js +1 -3
  116. package/lib/cjs/entry/dependenciesAny/dependenciesEvaluate.generated.js +1 -4
  117. package/lib/cjs/entry/dependenciesAny/dependenciesExp.generated.js +1 -3
  118. package/lib/cjs/entry/dependenciesAny/dependenciesExpm.generated.js +1 -8
  119. package/lib/cjs/entry/dependenciesAny/dependenciesExpm1.generated.js +1 -4
  120. package/lib/cjs/entry/dependenciesAny/dependenciesFactorial.generated.js +1 -4
  121. package/lib/cjs/entry/dependenciesAny/dependenciesFalse.generated.js +1 -2
  122. package/lib/cjs/entry/dependenciesAny/dependenciesFaraday.generated.js +1 -4
  123. package/lib/cjs/entry/dependenciesAny/dependenciesFermiCoupling.generated.js +1 -4
  124. package/lib/cjs/entry/dependenciesAny/dependenciesFft.generated.js +1 -10
  125. package/lib/cjs/entry/dependenciesAny/dependenciesFibonacciHeapClass.generated.js +1 -4
  126. package/lib/cjs/entry/dependenciesAny/dependenciesFilter.generated.js +1 -3
  127. package/lib/cjs/entry/dependenciesAny/dependenciesFilterTransform.generated.js +1 -3
  128. package/lib/cjs/entry/dependenciesAny/dependenciesFineStructure.generated.js +1 -3
  129. package/lib/cjs/entry/dependenciesAny/dependenciesFirstRadiation.generated.js +1 -4
  130. package/lib/cjs/entry/dependenciesAny/dependenciesFix.generated.js +1 -10
  131. package/lib/cjs/entry/dependenciesAny/dependenciesFlatten.generated.js +1 -4
  132. package/lib/cjs/entry/dependenciesAny/dependenciesFloor.generated.js +1 -8
  133. package/lib/cjs/entry/dependenciesAny/dependenciesForEach.generated.js +1 -3
  134. package/lib/cjs/entry/dependenciesAny/dependenciesForEachTransform.generated.js +1 -3
  135. package/lib/cjs/entry/dependenciesAny/dependenciesFormat.generated.js +1 -3
  136. package/lib/cjs/entry/dependenciesAny/dependenciesFraction.generated.js +1 -4
  137. package/lib/cjs/entry/dependenciesAny/dependenciesFractionClass.generated.js +1 -2
  138. package/lib/cjs/entry/dependenciesAny/dependenciesFunctionAssignmentNode.generated.js +1 -4
  139. package/lib/cjs/entry/dependenciesAny/dependenciesFunctionNode.generated.js +1 -4
  140. package/lib/cjs/entry/dependenciesAny/dependenciesGamma.generated.js +1 -7
  141. package/lib/cjs/entry/dependenciesAny/dependenciesGasConstant.generated.js +1 -4
  142. package/lib/cjs/entry/dependenciesAny/dependenciesGcd.generated.js +1 -7
  143. package/lib/cjs/entry/dependenciesAny/dependenciesGetMatrixDataType.generated.js +1 -3
  144. package/lib/cjs/entry/dependenciesAny/dependenciesGravitationConstant.generated.js +1 -4
  145. package/lib/cjs/entry/dependenciesAny/dependenciesGravity.generated.js +1 -4
  146. package/lib/cjs/entry/dependenciesAny/dependenciesHartreeEnergy.generated.js +1 -4
  147. package/lib/cjs/entry/dependenciesAny/dependenciesHasNumericValue.generated.js +1 -4
  148. package/lib/cjs/entry/dependenciesAny/dependenciesHelp.generated.js +1 -4
  149. package/lib/cjs/entry/dependenciesAny/dependenciesHelpClass.generated.js +1 -3
  150. package/lib/cjs/entry/dependenciesAny/dependenciesHex.generated.js +1 -4
  151. package/lib/cjs/entry/dependenciesAny/dependenciesHypot.generated.js +1 -10
  152. package/lib/cjs/entry/dependenciesAny/dependenciesI.generated.js +1 -3
  153. package/lib/cjs/entry/dependenciesAny/dependenciesIdentity.generated.js +1 -7
  154. package/lib/cjs/entry/dependenciesAny/dependenciesIfft.generated.js +1 -6
  155. package/lib/cjs/entry/dependenciesAny/dependenciesIm.generated.js +1 -3
  156. package/lib/cjs/entry/dependenciesAny/dependenciesImmutableDenseMatrixClass.generated.js +1 -4
  157. package/lib/cjs/entry/dependenciesAny/dependenciesIndex.generated.js +1 -4
  158. package/lib/cjs/entry/dependenciesAny/dependenciesIndexClass.generated.js +1 -3
  159. package/lib/cjs/entry/dependenciesAny/dependenciesIndexNode.generated.js +1 -4
  160. package/lib/cjs/entry/dependenciesAny/dependenciesIndexTransform.generated.js +1 -3
  161. package/lib/cjs/entry/dependenciesAny/dependenciesInfinity.generated.js +1 -3
  162. package/lib/cjs/entry/dependenciesAny/dependenciesIntersect.generated.js +1 -16
  163. package/lib/cjs/entry/dependenciesAny/dependenciesInv.generated.js +1 -11
  164. package/lib/cjs/entry/dependenciesAny/dependenciesInverseConductanceQuantum.generated.js +1 -4
  165. package/lib/cjs/entry/dependenciesAny/dependenciesInvmod.generated.js +1 -10
  166. package/lib/cjs/entry/dependenciesAny/dependenciesIsInteger.generated.js +1 -3
  167. package/lib/cjs/entry/dependenciesAny/dependenciesIsNaN.generated.js +1 -3
  168. package/lib/cjs/entry/dependenciesAny/dependenciesIsNegative.generated.js +1 -3
  169. package/lib/cjs/entry/dependenciesAny/dependenciesIsNumeric.generated.js +1 -3
  170. package/lib/cjs/entry/dependenciesAny/dependenciesIsPositive.generated.js +1 -3
  171. package/lib/cjs/entry/dependenciesAny/dependenciesIsPrime.generated.js +1 -3
  172. package/lib/cjs/entry/dependenciesAny/dependenciesIsZero.generated.js +1 -3
  173. package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +1 -11
  174. package/lib/cjs/entry/dependenciesAny/dependenciesKlitzing.generated.js +1 -4
  175. package/lib/cjs/entry/dependenciesAny/dependenciesKron.generated.js +1 -5
  176. package/lib/cjs/entry/dependenciesAny/dependenciesLN10.generated.js +1 -3
  177. package/lib/cjs/entry/dependenciesAny/dependenciesLN2.generated.js +1 -3
  178. package/lib/cjs/entry/dependenciesAny/dependenciesLOG10E.generated.js +1 -3
  179. package/lib/cjs/entry/dependenciesAny/dependenciesLOG2E.generated.js +1 -3
  180. package/lib/cjs/entry/dependenciesAny/dependenciesLarger.generated.js +1 -5
  181. package/lib/cjs/entry/dependenciesAny/dependenciesLargerEq.generated.js +1 -5
  182. package/lib/cjs/entry/dependenciesAny/dependenciesLcm.generated.js +1 -5
  183. package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +1 -4
  184. package/lib/cjs/entry/dependenciesAny/dependenciesLeftShift.generated.js +1 -7
  185. package/lib/cjs/entry/dependenciesAny/dependenciesLgamma.generated.js +1 -4
  186. package/lib/cjs/entry/dependenciesAny/dependenciesLog.generated.js +1 -5
  187. package/lib/cjs/entry/dependenciesAny/dependenciesLog10.generated.js +1 -4
  188. package/lib/cjs/entry/dependenciesAny/dependenciesLog1p.generated.js +1 -6
  189. package/lib/cjs/entry/dependenciesAny/dependenciesLog2.generated.js +1 -4
  190. package/lib/cjs/entry/dependenciesAny/dependenciesLoschmidt.generated.js +1 -4
  191. package/lib/cjs/entry/dependenciesAny/dependenciesLsolve.generated.js +1 -9
  192. package/lib/cjs/entry/dependenciesAny/dependenciesLsolveAll.generated.js +1 -9
  193. package/lib/cjs/entry/dependenciesAny/dependenciesLup.generated.js +1 -15
  194. package/lib/cjs/entry/dependenciesAny/dependenciesLusolve.generated.js +1 -9
  195. package/lib/cjs/entry/dependenciesAny/dependenciesMad.generated.js +1 -7
  196. package/lib/cjs/entry/dependenciesAny/dependenciesMagneticConstant.generated.js +1 -4
  197. package/lib/cjs/entry/dependenciesAny/dependenciesMagneticFluxQuantum.generated.js +1 -4
  198. package/lib/cjs/entry/dependenciesAny/dependenciesMap.generated.js +1 -3
  199. package/lib/cjs/entry/dependenciesAny/dependenciesMapTransform.generated.js +1 -3
  200. package/lib/cjs/entry/dependenciesAny/dependenciesMatrix.generated.js +1 -6
  201. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixClass.generated.js +1 -2
  202. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +1 -6
  203. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +1 -5
  204. package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +1 -6
  205. package/lib/cjs/entry/dependenciesAny/dependenciesMax.generated.js +1 -5
  206. package/lib/cjs/entry/dependenciesAny/dependenciesMaxTransform.generated.js +1 -5
  207. package/lib/cjs/entry/dependenciesAny/dependenciesMean.generated.js +1 -5
  208. package/lib/cjs/entry/dependenciesAny/dependenciesMeanTransform.generated.js +1 -5
  209. package/lib/cjs/entry/dependenciesAny/dependenciesMedian.generated.js +1 -7
  210. package/lib/cjs/entry/dependenciesAny/dependenciesMin.generated.js +1 -5
  211. package/lib/cjs/entry/dependenciesAny/dependenciesMinTransform.generated.js +1 -5
  212. package/lib/cjs/entry/dependenciesAny/dependenciesMod.generated.js +1 -6
  213. package/lib/cjs/entry/dependenciesAny/dependenciesMode.generated.js +1 -5
  214. package/lib/cjs/entry/dependenciesAny/dependenciesMolarMass.generated.js +1 -4
  215. package/lib/cjs/entry/dependenciesAny/dependenciesMolarMassC12.generated.js +1 -4
  216. package/lib/cjs/entry/dependenciesAny/dependenciesMolarPlanckConstant.generated.js +1 -4
  217. package/lib/cjs/entry/dependenciesAny/dependenciesMolarVolume.generated.js +1 -4
  218. package/lib/cjs/entry/dependenciesAny/dependenciesMultinomial.generated.js +1 -9
  219. package/lib/cjs/entry/dependenciesAny/dependenciesMultiply.generated.js +1 -8
  220. package/lib/cjs/entry/dependenciesAny/dependenciesMultiplyScalar.generated.js +1 -3
  221. package/lib/cjs/entry/dependenciesAny/dependenciesNaN.generated.js +1 -3
  222. package/lib/cjs/entry/dependenciesAny/dependenciesNeutronMass.generated.js +1 -4
  223. package/lib/cjs/entry/dependenciesAny/dependenciesNode.generated.js +1 -2
  224. package/lib/cjs/entry/dependenciesAny/dependenciesNorm.generated.js +1 -15
  225. package/lib/cjs/entry/dependenciesAny/dependenciesNot.generated.js +1 -3
  226. package/lib/cjs/entry/dependenciesAny/dependenciesNthRoot.generated.js +1 -6
  227. package/lib/cjs/entry/dependenciesAny/dependenciesNthRoots.generated.js +1 -5
  228. package/lib/cjs/entry/dependenciesAny/dependenciesNuclearMagneton.generated.js +1 -4
  229. package/lib/cjs/entry/dependenciesAny/dependenciesNull.generated.js +1 -2
  230. package/lib/cjs/entry/dependenciesAny/dependenciesNumber.generated.js +1 -3
  231. package/lib/cjs/entry/dependenciesAny/dependenciesNumeric.generated.js +1 -5
  232. package/lib/cjs/entry/dependenciesAny/dependenciesObjectNode.generated.js +1 -3
  233. package/lib/cjs/entry/dependenciesAny/dependenciesOct.generated.js +1 -4
  234. package/lib/cjs/entry/dependenciesAny/dependenciesOnes.generated.js +1 -5
  235. package/lib/cjs/entry/dependenciesAny/dependenciesOperatorNode.generated.js +1 -3
  236. package/lib/cjs/entry/dependenciesAny/dependenciesOr.generated.js +1 -6
  237. package/lib/cjs/entry/dependenciesAny/dependenciesParenthesisNode.generated.js +1 -3
  238. package/lib/cjs/entry/dependenciesAny/dependenciesParse.generated.js +1 -19
  239. package/lib/cjs/entry/dependenciesAny/dependenciesParser.generated.js +1 -4
  240. package/lib/cjs/entry/dependenciesAny/dependenciesParserClass.generated.js +1 -3
  241. package/lib/cjs/entry/dependenciesAny/dependenciesPartitionSelect.generated.js +1 -6
  242. package/lib/cjs/entry/dependenciesAny/dependenciesPermutations.generated.js +1 -4
  243. package/lib/cjs/entry/dependenciesAny/dependenciesPhi.generated.js +1 -3
  244. package/lib/cjs/entry/dependenciesAny/dependenciesPi.generated.js +1 -3
  245. package/lib/cjs/entry/dependenciesAny/dependenciesPickRandom.generated.js +1 -3
  246. package/lib/cjs/entry/dependenciesAny/dependenciesPinv.generated.js +1 -14
  247. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckCharge.generated.js +1 -4
  248. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckConstant.generated.js +1 -4
  249. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckLength.generated.js +1 -4
  250. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckMass.generated.js +1 -4
  251. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTemperature.generated.js +1 -4
  252. package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTime.generated.js +1 -4
  253. package/lib/cjs/entry/dependenciesAny/dependenciesPow.generated.js +1 -10
  254. package/lib/cjs/entry/dependenciesAny/dependenciesPrint.generated.js +1 -3
  255. package/lib/cjs/entry/dependenciesAny/dependenciesProd.generated.js +1 -5
  256. package/lib/cjs/entry/dependenciesAny/dependenciesProtonMass.generated.js +1 -4
  257. package/lib/cjs/entry/dependenciesAny/dependenciesQr.generated.js +1 -17
  258. package/lib/cjs/entry/dependenciesAny/dependenciesQuantileSeq.generated.js +1 -7
  259. package/lib/cjs/entry/dependenciesAny/dependenciesQuantumOfCirculation.generated.js +1 -4
  260. package/lib/cjs/entry/dependenciesAny/dependenciesRandom.generated.js +1 -3
  261. package/lib/cjs/entry/dependenciesAny/dependenciesRandomInt.generated.js +1 -3
  262. package/lib/cjs/entry/dependenciesAny/dependenciesRange.generated.js +1 -9
  263. package/lib/cjs/entry/dependenciesAny/dependenciesRangeClass.generated.js +1 -2
  264. package/lib/cjs/entry/dependenciesAny/dependenciesRangeNode.generated.js +1 -3
  265. package/lib/cjs/entry/dependenciesAny/dependenciesRangeTransform.generated.js +1 -9
  266. package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +1 -26
  267. package/lib/cjs/entry/dependenciesAny/dependenciesRe.generated.js +1 -3
  268. package/lib/cjs/entry/dependenciesAny/dependenciesReducedPlanckConstant.generated.js +1 -4
  269. package/lib/cjs/entry/dependenciesAny/dependenciesRelationalNode.generated.js +1 -3
  270. package/lib/cjs/entry/dependenciesAny/dependenciesReplacer.generated.js +1 -2
  271. package/lib/cjs/entry/dependenciesAny/dependenciesReshape.generated.js +1 -5
  272. package/lib/cjs/entry/dependenciesAny/dependenciesResize.generated.js +1 -3
  273. package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +1 -8
  274. package/lib/cjs/entry/dependenciesAny/dependenciesResultSet.generated.js +1 -2
  275. package/lib/cjs/entry/dependenciesAny/dependenciesReviver.generated.js +1 -2
  276. package/lib/cjs/entry/dependenciesAny/dependenciesRightArithShift.generated.js +1 -7
  277. package/lib/cjs/entry/dependenciesAny/dependenciesRightLogShift.generated.js +1 -7
  278. package/lib/cjs/entry/dependenciesAny/dependenciesRotate.generated.js +1 -5
  279. package/lib/cjs/entry/dependenciesAny/dependenciesRotationMatrix.generated.js +1 -13
  280. package/lib/cjs/entry/dependenciesAny/dependenciesRound.generated.js +1 -8
  281. package/lib/cjs/entry/dependenciesAny/dependenciesRow.generated.js +1 -6
  282. package/lib/cjs/entry/dependenciesAny/dependenciesRowTransform.generated.js +1 -6
  283. package/lib/cjs/entry/dependenciesAny/dependenciesRydberg.generated.js +1 -4
  284. package/lib/cjs/entry/dependenciesAny/dependenciesSQRT1_2.generated.js +2 -3
  285. package/lib/cjs/entry/dependenciesAny/dependenciesSQRT2.generated.js +1 -3
  286. package/lib/cjs/entry/dependenciesAny/dependenciesSackurTetrode.generated.js +1 -3
  287. package/lib/cjs/entry/dependenciesAny/dependenciesSec.generated.js +1 -4
  288. package/lib/cjs/entry/dependenciesAny/dependenciesSech.generated.js +1 -4
  289. package/lib/cjs/entry/dependenciesAny/dependenciesSecondRadiation.generated.js +1 -4
  290. package/lib/cjs/entry/dependenciesAny/dependenciesSetCartesian.generated.js +1 -8
  291. package/lib/cjs/entry/dependenciesAny/dependenciesSetDifference.generated.js +1 -8
  292. package/lib/cjs/entry/dependenciesAny/dependenciesSetDistinct.generated.js +1 -8
  293. package/lib/cjs/entry/dependenciesAny/dependenciesSetIntersect.generated.js +1 -8
  294. package/lib/cjs/entry/dependenciesAny/dependenciesSetIsSubset.generated.js +1 -7
  295. package/lib/cjs/entry/dependenciesAny/dependenciesSetMultiplicity.generated.js +1 -7
  296. package/lib/cjs/entry/dependenciesAny/dependenciesSetPowerset.generated.js +1 -7
  297. package/lib/cjs/entry/dependenciesAny/dependenciesSetSize.generated.js +1 -4
  298. package/lib/cjs/entry/dependenciesAny/dependenciesSetSymDifference.generated.js +1 -8
  299. package/lib/cjs/entry/dependenciesAny/dependenciesSetUnion.generated.js +1 -9
  300. package/lib/cjs/entry/dependenciesAny/dependenciesSign.generated.js +1 -6
  301. package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +1 -26
  302. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +1 -15
  303. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +1 -20
  304. package/lib/cjs/entry/dependenciesAny/dependenciesSin.generated.js +1 -3
  305. package/lib/cjs/entry/dependenciesAny/dependenciesSinh.generated.js +1 -3
  306. package/lib/cjs/entry/dependenciesAny/dependenciesSize.generated.js +1 -4
  307. package/lib/cjs/entry/dependenciesAny/dependenciesSlu.generated.js +1 -12
  308. package/lib/cjs/entry/dependenciesAny/dependenciesSmaller.generated.js +1 -5
  309. package/lib/cjs/entry/dependenciesAny/dependenciesSmallerEq.generated.js +1 -5
  310. package/lib/cjs/entry/dependenciesAny/dependenciesSort.generated.js +1 -6
  311. package/lib/cjs/entry/dependenciesAny/dependenciesSpaClass.generated.js +1 -5
  312. package/lib/cjs/entry/dependenciesAny/dependenciesSparse.generated.js +1 -4
  313. package/lib/cjs/entry/dependenciesAny/dependenciesSparseMatrixClass.generated.js +1 -5
  314. package/lib/cjs/entry/dependenciesAny/dependenciesSpeedOfLight.generated.js +1 -4
  315. package/lib/cjs/entry/dependenciesAny/dependenciesSplitUnit.generated.js +1 -3
  316. package/lib/cjs/entry/dependenciesAny/dependenciesSqrt.generated.js +1 -4
  317. package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +1 -13
  318. package/lib/cjs/entry/dependenciesAny/dependenciesSquare.generated.js +1 -3
  319. package/lib/cjs/entry/dependenciesAny/dependenciesSqueeze.generated.js +1 -4
  320. package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +1 -6
  321. package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +1 -6
  322. package/lib/cjs/entry/dependenciesAny/dependenciesStefanBoltzmann.generated.js +1 -4
  323. package/lib/cjs/entry/dependenciesAny/dependenciesStirlingS2.generated.js +1 -15
  324. package/lib/cjs/entry/dependenciesAny/dependenciesString.generated.js +1 -3
  325. package/lib/cjs/entry/dependenciesAny/dependenciesSubset.generated.js +1 -4
  326. package/lib/cjs/entry/dependenciesAny/dependenciesSubsetTransform.generated.js +1 -4
  327. package/lib/cjs/entry/dependenciesAny/dependenciesSubtract.generated.js +1 -8
  328. package/lib/cjs/entry/dependenciesAny/dependenciesSum.generated.js +1 -5
  329. package/lib/cjs/entry/dependenciesAny/dependenciesSumTransform.generated.js +1 -5
  330. package/lib/cjs/entry/dependenciesAny/dependenciesSymbolNode.generated.js +1 -4
  331. package/lib/cjs/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +1 -6
  332. package/lib/cjs/entry/dependenciesAny/dependenciesTan.generated.js +1 -3
  333. package/lib/cjs/entry/dependenciesAny/dependenciesTanh.generated.js +1 -3
  334. package/lib/cjs/entry/dependenciesAny/dependenciesTau.generated.js +1 -3
  335. package/lib/cjs/entry/dependenciesAny/dependenciesThomsonCrossSection.generated.js +1 -4
  336. package/lib/cjs/entry/dependenciesAny/dependenciesTo.generated.js +1 -4
  337. package/lib/cjs/entry/dependenciesAny/dependenciesTrace.generated.js +1 -5
  338. package/lib/cjs/entry/dependenciesAny/dependenciesTranspose.generated.js +1 -4
  339. package/lib/cjs/entry/dependenciesAny/dependenciesTrue.generated.js +1 -2
  340. package/lib/cjs/entry/dependenciesAny/dependenciesTypeOf.generated.js +1 -3
  341. package/lib/cjs/entry/dependenciesAny/dependenciesTyped.generated.js +1 -6
  342. package/lib/cjs/entry/dependenciesAny/dependenciesUnaryMinus.generated.js +1 -3
  343. package/lib/cjs/entry/dependenciesAny/dependenciesUnaryPlus.generated.js +1 -4
  344. package/lib/cjs/entry/dependenciesAny/dependenciesUnequal.generated.js +1 -6
  345. package/lib/cjs/entry/dependenciesAny/dependenciesUnitClass.generated.js +1 -17
  346. package/lib/cjs/entry/dependenciesAny/dependenciesUnitFunction.generated.js +1 -4
  347. package/lib/cjs/entry/dependenciesAny/dependenciesUppercaseE.generated.js +1 -3
  348. package/lib/cjs/entry/dependenciesAny/dependenciesUppercasePi.generated.js +1 -3
  349. package/lib/cjs/entry/dependenciesAny/dependenciesUsolve.generated.js +1 -9
  350. package/lib/cjs/entry/dependenciesAny/dependenciesUsolveAll.generated.js +1 -9
  351. package/lib/cjs/entry/dependenciesAny/dependenciesVacuumImpedance.generated.js +1 -4
  352. package/lib/cjs/entry/dependenciesAny/dependenciesVariance.generated.js +1 -9
  353. package/lib/cjs/entry/dependenciesAny/dependenciesVarianceTransform.generated.js +1 -9
  354. package/lib/cjs/entry/dependenciesAny/dependenciesVersion.generated.js +1 -2
  355. package/lib/cjs/entry/dependenciesAny/dependenciesWeakMixingAngle.generated.js +1 -3
  356. package/lib/cjs/entry/dependenciesAny/dependenciesWienDisplacement.generated.js +1 -4
  357. package/lib/cjs/entry/dependenciesAny/dependenciesXgcd.generated.js +1 -5
  358. package/lib/cjs/entry/dependenciesAny/dependenciesXor.generated.js +1 -5
  359. package/lib/cjs/entry/dependenciesAny/dependenciesZeros.generated.js +1 -5
  360. package/lib/cjs/entry/dependenciesAny.generated.js +0 -346
  361. package/lib/cjs/entry/dependenciesNumber/dependenciesAbs.generated.js +1 -3
  362. package/lib/cjs/entry/dependenciesNumber/dependenciesAccessorNode.generated.js +1 -4
  363. package/lib/cjs/entry/dependenciesNumber/dependenciesAcos.generated.js +1 -3
  364. package/lib/cjs/entry/dependenciesNumber/dependenciesAcosh.generated.js +1 -3
  365. package/lib/cjs/entry/dependenciesNumber/dependenciesAcot.generated.js +1 -3
  366. package/lib/cjs/entry/dependenciesNumber/dependenciesAcoth.generated.js +1 -3
  367. package/lib/cjs/entry/dependenciesNumber/dependenciesAcsc.generated.js +1 -3
  368. package/lib/cjs/entry/dependenciesNumber/dependenciesAcsch.generated.js +1 -3
  369. package/lib/cjs/entry/dependenciesNumber/dependenciesAdd.generated.js +1 -3
  370. package/lib/cjs/entry/dependenciesNumber/dependenciesAddScalar.generated.js +1 -3
  371. package/lib/cjs/entry/dependenciesNumber/dependenciesAnd.generated.js +1 -3
  372. package/lib/cjs/entry/dependenciesNumber/dependenciesApply.generated.js +1 -4
  373. package/lib/cjs/entry/dependenciesNumber/dependenciesApplyTransform.generated.js +1 -4
  374. package/lib/cjs/entry/dependenciesNumber/dependenciesArrayNode.generated.js +1 -3
  375. package/lib/cjs/entry/dependenciesNumber/dependenciesAsec.generated.js +1 -3
  376. package/lib/cjs/entry/dependenciesNumber/dependenciesAsech.generated.js +1 -3
  377. package/lib/cjs/entry/dependenciesNumber/dependenciesAsin.generated.js +1 -3
  378. package/lib/cjs/entry/dependenciesNumber/dependenciesAsinh.generated.js +1 -3
  379. package/lib/cjs/entry/dependenciesNumber/dependenciesAssignmentNode.generated.js +1 -5
  380. package/lib/cjs/entry/dependenciesNumber/dependenciesAtan.generated.js +1 -3
  381. package/lib/cjs/entry/dependenciesNumber/dependenciesAtan2.generated.js +1 -3
  382. package/lib/cjs/entry/dependenciesNumber/dependenciesAtanh.generated.js +1 -3
  383. package/lib/cjs/entry/dependenciesNumber/dependenciesBellNumbers.generated.js +1 -7
  384. package/lib/cjs/entry/dependenciesNumber/dependenciesBitAnd.generated.js +1 -3
  385. package/lib/cjs/entry/dependenciesNumber/dependenciesBitNot.generated.js +1 -3
  386. package/lib/cjs/entry/dependenciesNumber/dependenciesBitOr.generated.js +1 -3
  387. package/lib/cjs/entry/dependenciesNumber/dependenciesBitXor.generated.js +1 -3
  388. package/lib/cjs/entry/dependenciesNumber/dependenciesBlockNode.generated.js +1 -4
  389. package/lib/cjs/entry/dependenciesNumber/dependenciesBoolean.generated.js +1 -3
  390. package/lib/cjs/entry/dependenciesNumber/dependenciesCatalan.generated.js +1 -9
  391. package/lib/cjs/entry/dependenciesNumber/dependenciesCbrt.generated.js +1 -3
  392. package/lib/cjs/entry/dependenciesNumber/dependenciesCeil.generated.js +1 -4
  393. package/lib/cjs/entry/dependenciesNumber/dependenciesChain.generated.js +1 -4
  394. package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +1 -3
  395. package/lib/cjs/entry/dependenciesNumber/dependenciesClone.generated.js +1 -3
  396. package/lib/cjs/entry/dependenciesNumber/dependenciesCombinations.generated.js +1 -3
  397. package/lib/cjs/entry/dependenciesNumber/dependenciesCombinationsWithRep.generated.js +1 -3
  398. package/lib/cjs/entry/dependenciesNumber/dependenciesCompare.generated.js +1 -3
  399. package/lib/cjs/entry/dependenciesNumber/dependenciesCompareNatural.generated.js +1 -4
  400. package/lib/cjs/entry/dependenciesNumber/dependenciesCompareText.generated.js +1 -3
  401. package/lib/cjs/entry/dependenciesNumber/dependenciesCompile.generated.js +1 -4
  402. package/lib/cjs/entry/dependenciesNumber/dependenciesComposition.generated.js +1 -9
  403. package/lib/cjs/entry/dependenciesNumber/dependenciesConditionalNode.generated.js +1 -3
  404. package/lib/cjs/entry/dependenciesNumber/dependenciesConstantNode.generated.js +1 -3
  405. package/lib/cjs/entry/dependenciesNumber/dependenciesCos.generated.js +1 -3
  406. package/lib/cjs/entry/dependenciesNumber/dependenciesCosh.generated.js +1 -3
  407. package/lib/cjs/entry/dependenciesNumber/dependenciesCot.generated.js +1 -3
  408. package/lib/cjs/entry/dependenciesNumber/dependenciesCoth.generated.js +1 -3
  409. package/lib/cjs/entry/dependenciesNumber/dependenciesCsc.generated.js +1 -3
  410. package/lib/cjs/entry/dependenciesNumber/dependenciesCsch.generated.js +1 -3
  411. package/lib/cjs/entry/dependenciesNumber/dependenciesCube.generated.js +1 -3
  412. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSum.generated.js +1 -5
  413. package/lib/cjs/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +1 -5
  414. package/lib/cjs/entry/dependenciesNumber/dependenciesDeepEqual.generated.js +1 -4
  415. package/lib/cjs/entry/dependenciesNumber/dependenciesDerivative.generated.js +1 -13
  416. package/lib/cjs/entry/dependenciesNumber/dependenciesDivide.generated.js +1 -3
  417. package/lib/cjs/entry/dependenciesNumber/dependenciesDivideScalar.generated.js +1 -3
  418. package/lib/cjs/entry/dependenciesNumber/dependenciesE.generated.js +1 -2
  419. package/lib/cjs/entry/dependenciesNumber/dependenciesEqual.generated.js +1 -4
  420. package/lib/cjs/entry/dependenciesNumber/dependenciesEqualScalar.generated.js +1 -3
  421. package/lib/cjs/entry/dependenciesNumber/dependenciesEqualText.generated.js +1 -5
  422. package/lib/cjs/entry/dependenciesNumber/dependenciesErf.generated.js +1 -3
  423. package/lib/cjs/entry/dependenciesNumber/dependenciesEvaluate.generated.js +1 -4
  424. package/lib/cjs/entry/dependenciesNumber/dependenciesExp.generated.js +1 -3
  425. package/lib/cjs/entry/dependenciesNumber/dependenciesExpm1.generated.js +1 -3
  426. package/lib/cjs/entry/dependenciesNumber/dependenciesFactorial.generated.js +1 -4
  427. package/lib/cjs/entry/dependenciesNumber/dependenciesFalse.generated.js +1 -2
  428. package/lib/cjs/entry/dependenciesNumber/dependenciesFilter.generated.js +1 -3
  429. package/lib/cjs/entry/dependenciesNumber/dependenciesFilterTransform.generated.js +1 -3
  430. package/lib/cjs/entry/dependenciesNumber/dependenciesFix.generated.js +1 -5
  431. package/lib/cjs/entry/dependenciesNumber/dependenciesFloor.generated.js +1 -4
  432. package/lib/cjs/entry/dependenciesNumber/dependenciesForEach.generated.js +1 -3
  433. package/lib/cjs/entry/dependenciesNumber/dependenciesForEachTransform.generated.js +1 -3
  434. package/lib/cjs/entry/dependenciesNumber/dependenciesFormat.generated.js +1 -3
  435. package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionAssignmentNode.generated.js +1 -4
  436. package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionNode.generated.js +1 -4
  437. package/lib/cjs/entry/dependenciesNumber/dependenciesGamma.generated.js +1 -3
  438. package/lib/cjs/entry/dependenciesNumber/dependenciesGcd.generated.js +1 -3
  439. package/lib/cjs/entry/dependenciesNumber/dependenciesHasNumericValue.generated.js +1 -4
  440. package/lib/cjs/entry/dependenciesNumber/dependenciesHelp.generated.js +1 -4
  441. package/lib/cjs/entry/dependenciesNumber/dependenciesHelpClass.generated.js +1 -3
  442. package/lib/cjs/entry/dependenciesNumber/dependenciesHypot.generated.js +1 -10
  443. package/lib/cjs/entry/dependenciesNumber/dependenciesIndex.generated.js +1 -2
  444. package/lib/cjs/entry/dependenciesNumber/dependenciesIndexNode.generated.js +1 -4
  445. package/lib/cjs/entry/dependenciesNumber/dependenciesInfinity.generated.js +1 -2
  446. package/lib/cjs/entry/dependenciesNumber/dependenciesIsInteger.generated.js +1 -3
  447. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNaN.generated.js +1 -3
  448. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNegative.generated.js +1 -3
  449. package/lib/cjs/entry/dependenciesNumber/dependenciesIsNumeric.generated.js +1 -3
  450. package/lib/cjs/entry/dependenciesNumber/dependenciesIsPositive.generated.js +1 -3
  451. package/lib/cjs/entry/dependenciesNumber/dependenciesIsPrime.generated.js +1 -3
  452. package/lib/cjs/entry/dependenciesNumber/dependenciesIsZero.generated.js +1 -3
  453. package/lib/cjs/entry/dependenciesNumber/dependenciesLN10.generated.js +1 -2
  454. package/lib/cjs/entry/dependenciesNumber/dependenciesLN2.generated.js +1 -2
  455. package/lib/cjs/entry/dependenciesNumber/dependenciesLOG10E.generated.js +1 -2
  456. package/lib/cjs/entry/dependenciesNumber/dependenciesLOG2E.generated.js +1 -2
  457. package/lib/cjs/entry/dependenciesNumber/dependenciesLarger.generated.js +1 -3
  458. package/lib/cjs/entry/dependenciesNumber/dependenciesLargerEq.generated.js +1 -3
  459. package/lib/cjs/entry/dependenciesNumber/dependenciesLcm.generated.js +1 -3
  460. package/lib/cjs/entry/dependenciesNumber/dependenciesLeftShift.generated.js +1 -3
  461. package/lib/cjs/entry/dependenciesNumber/dependenciesLgamma.generated.js +1 -3
  462. package/lib/cjs/entry/dependenciesNumber/dependenciesLog.generated.js +1 -3
  463. package/lib/cjs/entry/dependenciesNumber/dependenciesLog10.generated.js +1 -3
  464. package/lib/cjs/entry/dependenciesNumber/dependenciesLog1p.generated.js +1 -3
  465. package/lib/cjs/entry/dependenciesNumber/dependenciesLog2.generated.js +1 -3
  466. package/lib/cjs/entry/dependenciesNumber/dependenciesMad.generated.js +1 -7
  467. package/lib/cjs/entry/dependenciesNumber/dependenciesMap.generated.js +1 -3
  468. package/lib/cjs/entry/dependenciesNumber/dependenciesMapTransform.generated.js +1 -3
  469. package/lib/cjs/entry/dependenciesNumber/dependenciesMatrix.generated.js +1 -2
  470. package/lib/cjs/entry/dependenciesNumber/dependenciesMax.generated.js +1 -5
  471. package/lib/cjs/entry/dependenciesNumber/dependenciesMaxTransform.generated.js +1 -5
  472. package/lib/cjs/entry/dependenciesNumber/dependenciesMean.generated.js +1 -5
  473. package/lib/cjs/entry/dependenciesNumber/dependenciesMeanTransform.generated.js +1 -5
  474. package/lib/cjs/entry/dependenciesNumber/dependenciesMedian.generated.js +1 -7
  475. package/lib/cjs/entry/dependenciesNumber/dependenciesMin.generated.js +1 -5
  476. package/lib/cjs/entry/dependenciesNumber/dependenciesMinTransform.generated.js +1 -5
  477. package/lib/cjs/entry/dependenciesNumber/dependenciesMod.generated.js +1 -3
  478. package/lib/cjs/entry/dependenciesNumber/dependenciesMode.generated.js +1 -5
  479. package/lib/cjs/entry/dependenciesNumber/dependenciesMultinomial.generated.js +1 -9
  480. package/lib/cjs/entry/dependenciesNumber/dependenciesMultiply.generated.js +1 -3
  481. package/lib/cjs/entry/dependenciesNumber/dependenciesMultiplyScalar.generated.js +1 -3
  482. package/lib/cjs/entry/dependenciesNumber/dependenciesNaN.generated.js +1 -2
  483. package/lib/cjs/entry/dependenciesNumber/dependenciesNode.generated.js +1 -2
  484. package/lib/cjs/entry/dependenciesNumber/dependenciesNorm.generated.js +1 -3
  485. package/lib/cjs/entry/dependenciesNumber/dependenciesNot.generated.js +1 -3
  486. package/lib/cjs/entry/dependenciesNumber/dependenciesNthRoot.generated.js +1 -3
  487. package/lib/cjs/entry/dependenciesNumber/dependenciesNull.generated.js +1 -2
  488. package/lib/cjs/entry/dependenciesNumber/dependenciesNumber.generated.js +1 -3
  489. package/lib/cjs/entry/dependenciesNumber/dependenciesNumeric.generated.js +1 -3
  490. package/lib/cjs/entry/dependenciesNumber/dependenciesObjectNode.generated.js +1 -3
  491. package/lib/cjs/entry/dependenciesNumber/dependenciesOperatorNode.generated.js +1 -3
  492. package/lib/cjs/entry/dependenciesNumber/dependenciesOr.generated.js +1 -3
  493. package/lib/cjs/entry/dependenciesNumber/dependenciesParenthesisNode.generated.js +1 -3
  494. package/lib/cjs/entry/dependenciesNumber/dependenciesParse.generated.js +1 -19
  495. package/lib/cjs/entry/dependenciesNumber/dependenciesParser.generated.js +1 -4
  496. package/lib/cjs/entry/dependenciesNumber/dependenciesParserClass.generated.js +1 -3
  497. package/lib/cjs/entry/dependenciesNumber/dependenciesPartitionSelect.generated.js +1 -6
  498. package/lib/cjs/entry/dependenciesNumber/dependenciesPermutations.generated.js +1 -4
  499. package/lib/cjs/entry/dependenciesNumber/dependenciesPhi.generated.js +1 -2
  500. package/lib/cjs/entry/dependenciesNumber/dependenciesPi.generated.js +1 -2
  501. package/lib/cjs/entry/dependenciesNumber/dependenciesPickRandom.generated.js +1 -3
  502. package/lib/cjs/entry/dependenciesNumber/dependenciesPow.generated.js +1 -3
  503. package/lib/cjs/entry/dependenciesNumber/dependenciesPrint.generated.js +1 -3
  504. package/lib/cjs/entry/dependenciesNumber/dependenciesProd.generated.js +1 -5
  505. package/lib/cjs/entry/dependenciesNumber/dependenciesQuantileSeq.generated.js +1 -7
  506. package/lib/cjs/entry/dependenciesNumber/dependenciesRandom.generated.js +1 -3
  507. package/lib/cjs/entry/dependenciesNumber/dependenciesRandomInt.generated.js +1 -3
  508. package/lib/cjs/entry/dependenciesNumber/dependenciesRange.generated.js +1 -8
  509. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeClass.generated.js +1 -2
  510. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeNode.generated.js +1 -3
  511. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +1 -8
  512. package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +1 -24
  513. package/lib/cjs/entry/dependenciesNumber/dependenciesRelationalNode.generated.js +1 -3
  514. package/lib/cjs/entry/dependenciesNumber/dependenciesReplacer.generated.js +1 -2
  515. package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +1 -8
  516. package/lib/cjs/entry/dependenciesNumber/dependenciesResultSet.generated.js +1 -2
  517. package/lib/cjs/entry/dependenciesNumber/dependenciesReviver.generated.js +1 -2
  518. package/lib/cjs/entry/dependenciesNumber/dependenciesRightArithShift.generated.js +1 -3
  519. package/lib/cjs/entry/dependenciesNumber/dependenciesRightLogShift.generated.js +1 -3
  520. package/lib/cjs/entry/dependenciesNumber/dependenciesRound.generated.js +1 -3
  521. package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT1_2.generated.js +1 -2
  522. package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT2.generated.js +1 -2
  523. package/lib/cjs/entry/dependenciesNumber/dependenciesSec.generated.js +1 -3
  524. package/lib/cjs/entry/dependenciesNumber/dependenciesSech.generated.js +1 -3
  525. package/lib/cjs/entry/dependenciesNumber/dependenciesSign.generated.js +1 -3
  526. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +1 -24
  527. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +1 -13
  528. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +1 -20
  529. package/lib/cjs/entry/dependenciesNumber/dependenciesSin.generated.js +1 -3
  530. package/lib/cjs/entry/dependenciesNumber/dependenciesSinh.generated.js +1 -3
  531. package/lib/cjs/entry/dependenciesNumber/dependenciesSize.generated.js +1 -4
  532. package/lib/cjs/entry/dependenciesNumber/dependenciesSmaller.generated.js +1 -3
  533. package/lib/cjs/entry/dependenciesNumber/dependenciesSmallerEq.generated.js +1 -3
  534. package/lib/cjs/entry/dependenciesNumber/dependenciesSqrt.generated.js +1 -3
  535. package/lib/cjs/entry/dependenciesNumber/dependenciesSquare.generated.js +1 -3
  536. package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +1 -6
  537. package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +1 -6
  538. package/lib/cjs/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +1 -14
  539. package/lib/cjs/entry/dependenciesNumber/dependenciesString.generated.js +1 -3
  540. package/lib/cjs/entry/dependenciesNumber/dependenciesSubset.generated.js +1 -2
  541. package/lib/cjs/entry/dependenciesNumber/dependenciesSubsetTransform.generated.js +1 -2
  542. package/lib/cjs/entry/dependenciesNumber/dependenciesSubtract.generated.js +1 -3
  543. package/lib/cjs/entry/dependenciesNumber/dependenciesSum.generated.js +1 -5
  544. package/lib/cjs/entry/dependenciesNumber/dependenciesSumTransform.generated.js +1 -5
  545. package/lib/cjs/entry/dependenciesNumber/dependenciesSymbolNode.generated.js +1 -3
  546. package/lib/cjs/entry/dependenciesNumber/dependenciesTan.generated.js +1 -3
  547. package/lib/cjs/entry/dependenciesNumber/dependenciesTanh.generated.js +1 -3
  548. package/lib/cjs/entry/dependenciesNumber/dependenciesTau.generated.js +1 -2
  549. package/lib/cjs/entry/dependenciesNumber/dependenciesTrue.generated.js +1 -2
  550. package/lib/cjs/entry/dependenciesNumber/dependenciesTypeOf.generated.js +1 -3
  551. package/lib/cjs/entry/dependenciesNumber/dependenciesTyped.generated.js +1 -2
  552. package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryMinus.generated.js +1 -3
  553. package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryPlus.generated.js +1 -3
  554. package/lib/cjs/entry/dependenciesNumber/dependenciesUnequal.generated.js +1 -4
  555. package/lib/cjs/entry/dependenciesNumber/dependenciesUppercaseE.generated.js +1 -3
  556. package/lib/cjs/entry/dependenciesNumber/dependenciesUppercasePi.generated.js +1 -3
  557. package/lib/cjs/entry/dependenciesNumber/dependenciesVariance.generated.js +1 -9
  558. package/lib/cjs/entry/dependenciesNumber/dependenciesVarianceTransform.generated.js +1 -9
  559. package/lib/cjs/entry/dependenciesNumber/dependenciesVersion.generated.js +1 -2
  560. package/lib/cjs/entry/dependenciesNumber/dependenciesXgcd.generated.js +1 -3
  561. package/lib/cjs/entry/dependenciesNumber/dependenciesXor.generated.js +1 -3
  562. package/lib/cjs/entry/dependenciesNumber.generated.js +0 -202
  563. package/lib/cjs/entry/impureFunctionsAny.generated.js +1 -9
  564. package/lib/cjs/entry/impureFunctionsNumber.generated.js +1 -9
  565. package/lib/cjs/entry/mainAny.js +0 -16
  566. package/lib/cjs/entry/mainNumber.js +0 -16
  567. package/lib/cjs/entry/pureFunctionsAny.generated.js +1 -15
  568. package/lib/cjs/entry/pureFunctionsNumber.generated.js +1 -15
  569. package/lib/cjs/entry/typeChecks.js +0 -1
  570. package/lib/cjs/error/ArgumentsError.js +0 -3
  571. package/lib/cjs/error/DimensionError.js +0 -3
  572. package/lib/cjs/error/IndexError.js +0 -6
  573. package/lib/cjs/expression/Help.js +5 -28
  574. package/lib/cjs/expression/Parser.js +8 -21
  575. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +1 -235
  576. package/lib/cjs/expression/function/compile.js +1 -5
  577. package/lib/cjs/expression/function/evaluate.js +1 -6
  578. package/lib/cjs/expression/function/help.js +3 -12
  579. package/lib/cjs/expression/function/parser.js +1 -4
  580. package/lib/cjs/expression/node/AccessorNode.js +15 -45
  581. package/lib/cjs/expression/node/ArrayNode.js +10 -33
  582. package/lib/cjs/expression/node/AssignmentNode.js +28 -68
  583. package/lib/cjs/expression/node/BlockNode.js +11 -37
  584. package/lib/cjs/expression/node/ConditionalNode.js +14 -56
  585. package/lib/cjs/expression/node/ConstantNode.js +10 -41
  586. package/lib/cjs/expression/node/FunctionAssignmentNode.js +13 -54
  587. package/lib/cjs/expression/node/FunctionNode.js +32 -103
  588. package/lib/cjs/expression/node/IndexNode.js +15 -44
  589. package/lib/cjs/expression/node/Node.js +23 -57
  590. package/lib/cjs/expression/node/ObjectNode.js +10 -48
  591. package/lib/cjs/expression/node/OperatorNode.js +35 -142
  592. package/lib/cjs/expression/node/ParenthesisNode.js +11 -33
  593. package/lib/cjs/expression/node/RangeNode.js +15 -66
  594. package/lib/cjs/expression/node/RelationalNode.js +8 -44
  595. package/lib/cjs/expression/node/SymbolNode.js +16 -43
  596. package/lib/cjs/expression/node/utils/access.js +0 -7
  597. package/lib/cjs/expression/node/utils/assign.js +1 -8
  598. package/lib/cjs/expression/operators.js +22 -54
  599. package/lib/cjs/expression/parse.js +162 -341
  600. package/lib/cjs/expression/transform/apply.transform.js +4 -10
  601. package/lib/cjs/expression/transform/column.transform.js +6 -12
  602. package/lib/cjs/expression/transform/concat.transform.js +3 -10
  603. package/lib/cjs/expression/transform/cumsum.transform.js +2 -9
  604. package/lib/cjs/expression/transform/diff.transform.js +5 -11
  605. package/lib/cjs/expression/transform/filter.transform.js +3 -14
  606. package/lib/cjs/expression/transform/forEach.transform.js +2 -14
  607. package/lib/cjs/expression/transform/index.transform.js +4 -9
  608. package/lib/cjs/expression/transform/map.transform.js +3 -16
  609. package/lib/cjs/expression/transform/max.transform.js +4 -10
  610. package/lib/cjs/expression/transform/mean.transform.js +3 -9
  611. package/lib/cjs/expression/transform/min.transform.js +4 -10
  612. package/lib/cjs/expression/transform/range.transform.js +8 -13
  613. package/lib/cjs/expression/transform/row.transform.js +6 -12
  614. package/lib/cjs/expression/transform/std.transform.js +4 -10
  615. package/lib/cjs/expression/transform/subset.transform.js +2 -6
  616. package/lib/cjs/expression/transform/sum.transform.js +3 -9
  617. package/lib/cjs/expression/transform/utils/compileInlineExpression.js +2 -7
  618. package/lib/cjs/expression/transform/utils/errorTransform.js +0 -3
  619. package/lib/cjs/expression/transform/utils/lastDimToZeroBase.js +0 -4
  620. package/lib/cjs/expression/transform/variance.transform.js +7 -13
  621. package/lib/cjs/factoriesAny.js +0 -278
  622. package/lib/cjs/factoriesNumber.js +20 -123
  623. package/lib/cjs/function/algebra/decomposition/lup.js +136 -173
  624. package/lib/cjs/function/algebra/decomposition/qr.js +36 -54
  625. package/lib/cjs/function/algebra/decomposition/slu.js +18 -22
  626. package/lib/cjs/function/algebra/derivative.js +47 -119
  627. package/lib/cjs/function/algebra/leafCount.js +2 -6
  628. package/lib/cjs/function/algebra/rationalize.js +152 -170
  629. package/lib/cjs/function/algebra/resolve.js +8 -19
  630. package/lib/cjs/function/algebra/simplify/util.js +14 -74
  631. package/lib/cjs/function/algebra/simplify.js +126 -213
  632. package/lib/cjs/function/algebra/simplifyConstant.js +45 -131
  633. package/lib/cjs/function/algebra/simplifyCore.js +29 -81
  634. package/lib/cjs/function/algebra/solver/lsolve.js +28 -35
  635. package/lib/cjs/function/algebra/solver/lsolveAll.js +30 -36
  636. package/lib/cjs/function/algebra/solver/lusolve.js +15 -25
  637. package/lib/cjs/function/algebra/solver/usolve.js +32 -40
  638. package/lib/cjs/function/algebra/solver/usolveAll.js +34 -36
  639. package/lib/cjs/function/algebra/solver/utils/solveValidation.js +4 -32
  640. package/lib/cjs/function/algebra/sparse/csAmd.js +249 -301
  641. package/lib/cjs/function/algebra/sparse/csChol.js +72 -88
  642. package/lib/cjs/function/algebra/sparse/csCounts.js +37 -55
  643. package/lib/cjs/function/algebra/sparse/csCumsum.js +8 -11
  644. package/lib/cjs/function/algebra/sparse/csDfs.js +34 -42
  645. package/lib/cjs/function/algebra/sparse/csEreach.js +24 -31
  646. package/lib/cjs/function/algebra/sparse/csEtree.js +23 -28
  647. package/lib/cjs/function/algebra/sparse/csFkeep.js +20 -25
  648. package/lib/cjs/function/algebra/sparse/csFlip.js +0 -1
  649. package/lib/cjs/function/algebra/sparse/csIpvec.js +2 -4
  650. package/lib/cjs/function/algebra/sparse/csLeaf.js +12 -13
  651. package/lib/cjs/function/algebra/sparse/csLu.js +71 -92
  652. package/lib/cjs/function/algebra/sparse/csMark.js +0 -2
  653. package/lib/cjs/function/algebra/sparse/csMarked.js +0 -1
  654. package/lib/cjs/function/algebra/sparse/csPermute.js +20 -25
  655. package/lib/cjs/function/algebra/sparse/csPost.js +14 -24
  656. package/lib/cjs/function/algebra/sparse/csReach.js +14 -20
  657. package/lib/cjs/function/algebra/sparse/csSpsolve.js +32 -40
  658. package/lib/cjs/function/algebra/sparse/csSqr.js +62 -86
  659. package/lib/cjs/function/algebra/sparse/csSymperm.js +33 -44
  660. package/lib/cjs/function/algebra/sparse/csTdfs.js +12 -15
  661. package/lib/cjs/function/algebra/sparse/csUnflip.js +0 -2
  662. package/lib/cjs/function/algebra/symbolicEqual.js +3 -8
  663. package/lib/cjs/function/arithmetic/abs.js +0 -5
  664. package/lib/cjs/function/arithmetic/add.js +6 -14
  665. package/lib/cjs/function/arithmetic/addScalar.js +0 -6
  666. package/lib/cjs/function/arithmetic/cbrt.js +15 -26
  667. package/lib/cjs/function/arithmetic/ceil.js +11 -29
  668. package/lib/cjs/function/arithmetic/cube.js +2 -4
  669. package/lib/cjs/function/arithmetic/divide.js +7 -11
  670. package/lib/cjs/function/arithmetic/divideScalar.js +1 -4
  671. package/lib/cjs/function/arithmetic/dotDivide.js +5 -13
  672. package/lib/cjs/function/arithmetic/dotMultiply.js +4 -10
  673. package/lib/cjs/function/arithmetic/dotPow.js +5 -14
  674. package/lib/cjs/function/arithmetic/exp.js +0 -4
  675. package/lib/cjs/function/arithmetic/expm1.js +1 -5
  676. package/lib/cjs/function/arithmetic/fix.js +9 -17
  677. package/lib/cjs/function/arithmetic/floor.js +11 -29
  678. package/lib/cjs/function/arithmetic/gcd.js +8 -19
  679. package/lib/cjs/function/arithmetic/hypot.js +8 -17
  680. package/lib/cjs/function/arithmetic/invmod.js +11 -19
  681. package/lib/cjs/function/arithmetic/lcm.js +7 -20
  682. package/lib/cjs/function/arithmetic/log.js +3 -7
  683. package/lib/cjs/function/arithmetic/log10.js +2 -7
  684. package/lib/cjs/function/arithmetic/log1p.js +5 -11
  685. package/lib/cjs/function/arithmetic/log2.js +3 -8
  686. package/lib/cjs/function/arithmetic/mod.js +6 -17
  687. package/lib/cjs/function/arithmetic/multiply.js +312 -335
  688. package/lib/cjs/function/arithmetic/multiplyScalar.js +0 -4
  689. package/lib/cjs/function/arithmetic/norm.js +41 -69
  690. package/lib/cjs/function/arithmetic/nthRoot.js +9 -25
  691. package/lib/cjs/function/arithmetic/nthRoots.js +7 -15
  692. package/lib/cjs/function/arithmetic/pow.js +21 -40
  693. package/lib/cjs/function/arithmetic/round.js +6 -22
  694. package/lib/cjs/function/arithmetic/sign.js +3 -9
  695. package/lib/cjs/function/arithmetic/sqrt.js +3 -6
  696. package/lib/cjs/function/arithmetic/square.js +0 -4
  697. package/lib/cjs/function/arithmetic/subtract.js +7 -17
  698. package/lib/cjs/function/arithmetic/unaryMinus.js +2 -6
  699. package/lib/cjs/function/arithmetic/unaryPlus.js +5 -7
  700. package/lib/cjs/function/arithmetic/xgcd.js +12 -18
  701. package/lib/cjs/function/bitwise/bitAnd.js +3 -11
  702. package/lib/cjs/function/bitwise/bitNot.js +0 -6
  703. package/lib/cjs/function/bitwise/bitOr.js +4 -12
  704. package/lib/cjs/function/bitwise/bitXor.js +3 -11
  705. package/lib/cjs/function/bitwise/leftShift.js +5 -21
  706. package/lib/cjs/function/bitwise/rightArithShift.js +5 -21
  707. package/lib/cjs/function/bitwise/rightLogShift.js +6 -19
  708. package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +1 -3
  709. package/lib/cjs/function/combinatorics/bellNumbers.js +6 -11
  710. package/lib/cjs/function/combinatorics/catalan.js +6 -10
  711. package/lib/cjs/function/combinatorics/composition.js +6 -10
  712. package/lib/cjs/function/combinatorics/stirlingS2.js +12 -23
  713. package/lib/cjs/function/complex/arg.js +1 -4
  714. package/lib/cjs/function/complex/conj.js +0 -4
  715. package/lib/cjs/function/complex/im.js +0 -4
  716. package/lib/cjs/function/complex/re.js +0 -4
  717. package/lib/cjs/function/geometry/distance.js +7 -55
  718. package/lib/cjs/function/geometry/intersect.js +19 -54
  719. package/lib/cjs/function/logical/and.js +5 -17
  720. package/lib/cjs/function/logical/not.js +0 -5
  721. package/lib/cjs/function/logical/or.js +4 -11
  722. package/lib/cjs/function/logical/xor.js +3 -10
  723. package/lib/cjs/function/matrix/apply.js +3 -23
  724. package/lib/cjs/function/matrix/column.js +4 -10
  725. package/lib/cjs/function/matrix/concat.js +9 -26
  726. package/lib/cjs/function/matrix/count.js +2 -5
  727. package/lib/cjs/function/matrix/cross.js +4 -11
  728. package/lib/cjs/function/matrix/ctranspose.js +2 -5
  729. package/lib/cjs/function/matrix/det.js +7 -26
  730. package/lib/cjs/function/matrix/diag.js +21 -35
  731. package/lib/cjs/function/matrix/diff.js +7 -24
  732. package/lib/cjs/function/matrix/dot.js +22 -46
  733. package/lib/cjs/function/matrix/eigs/complexEigs.js +156 -209
  734. package/lib/cjs/function/matrix/eigs/realSymetric.js +62 -106
  735. package/lib/cjs/function/matrix/eigs.js +40 -72
  736. package/lib/cjs/function/matrix/expm.js +26 -42
  737. package/lib/cjs/function/matrix/fft.js +12 -26
  738. package/lib/cjs/function/matrix/filter.js +1 -7
  739. package/lib/cjs/function/matrix/flatten.js +6 -12
  740. package/lib/cjs/function/matrix/forEach.js +1 -9
  741. package/lib/cjs/function/matrix/getMatrixDataType.js +0 -5
  742. package/lib/cjs/function/matrix/identity.js +14 -30
  743. package/lib/cjs/function/matrix/ifft.js +3 -8
  744. package/lib/cjs/function/matrix/inv.js +20 -44
  745. package/lib/cjs/function/matrix/kron.js +3 -10
  746. package/lib/cjs/function/matrix/map.js +1 -11
  747. package/lib/cjs/function/matrix/matrixFromColumns.js +12 -22
  748. package/lib/cjs/function/matrix/matrixFromFunction.js +2 -8
  749. package/lib/cjs/function/matrix/matrixFromRows.js +6 -18
  750. package/lib/cjs/function/matrix/ones.js +8 -22
  751. package/lib/cjs/function/matrix/partitionSelect.js +15 -26
  752. package/lib/cjs/function/matrix/pinv.js +18 -50
  753. package/lib/cjs/function/matrix/range.js +15 -41
  754. package/lib/cjs/function/matrix/reshape.js +1 -5
  755. package/lib/cjs/function/matrix/resize.js +6 -27
  756. package/lib/cjs/function/matrix/rotate.js +2 -14
  757. package/lib/cjs/function/matrix/rotationMatrix.js +14 -33
  758. package/lib/cjs/function/matrix/row.js +4 -10
  759. package/lib/cjs/function/matrix/size.js +2 -7
  760. package/lib/cjs/function/matrix/sort.js +7 -20
  761. package/lib/cjs/function/matrix/sqrtm.js +12 -25
  762. package/lib/cjs/function/matrix/squeeze.js +3 -8
  763. package/lib/cjs/function/matrix/subset.js +16 -39
  764. package/lib/cjs/function/matrix/trace.js +22 -36
  765. package/lib/cjs/function/matrix/transpose.js +43 -58
  766. package/lib/cjs/function/matrix/zeros.js +10 -23
  767. package/lib/cjs/function/probability/combinations.js +3 -12
  768. package/lib/cjs/function/probability/combinationsWithRep.js +1 -17
  769. package/lib/cjs/function/probability/factorial.js +1 -7
  770. package/lib/cjs/function/probability/gamma.js +23 -34
  771. package/lib/cjs/function/probability/kldivergence.js +10 -22
  772. package/lib/cjs/function/probability/lgamma.js +13 -17
  773. package/lib/cjs/function/probability/multinomial.js +6 -11
  774. package/lib/cjs/function/probability/permutations.js +6 -19
  775. package/lib/cjs/function/probability/pickRandom.js +7 -27
  776. package/lib/cjs/function/probability/random.js +9 -20
  777. package/lib/cjs/function/probability/randomInt.js +3 -12
  778. package/lib/cjs/function/probability/util/randomMatrix.js +0 -3
  779. package/lib/cjs/function/probability/util/seededRNG.js +6 -9
  780. package/lib/cjs/function/relational/compare.js +8 -17
  781. package/lib/cjs/function/relational/compareNatural.js +28 -59
  782. package/lib/cjs/function/relational/compareText.js +2 -6
  783. package/lib/cjs/function/relational/compareUnits.js +0 -3
  784. package/lib/cjs/function/relational/deepEqual.js +2 -8
  785. package/lib/cjs/function/relational/equal.js +5 -15
  786. package/lib/cjs/function/relational/equalScalar.js +3 -9
  787. package/lib/cjs/function/relational/equalText.js +2 -5
  788. package/lib/cjs/function/relational/larger.js +5 -14
  789. package/lib/cjs/function/relational/largerEq.js +5 -14
  790. package/lib/cjs/function/relational/smaller.js +5 -14
  791. package/lib/cjs/function/relational/smallerEq.js +5 -14
  792. package/lib/cjs/function/relational/unequal.js +6 -17
  793. package/lib/cjs/function/set/setCartesian.js +9 -17
  794. package/lib/cjs/function/set/setDifference.js +9 -19
  795. package/lib/cjs/function/set/setDistinct.js +9 -17
  796. package/lib/cjs/function/set/setIntersect.js +9 -17
  797. package/lib/cjs/function/set/setIsSubset.js +4 -13
  798. package/lib/cjs/function/set/setMultiplicity.js +4 -11
  799. package/lib/cjs/function/set/setPowerset.js +10 -20
  800. package/lib/cjs/function/set/setSize.js +1 -7
  801. package/lib/cjs/function/set/setSymDifference.js +5 -10
  802. package/lib/cjs/function/set/setUnion.js +6 -11
  803. package/lib/cjs/function/special/erf.js +12 -27
  804. package/lib/cjs/function/statistics/cumsum.js +4 -27
  805. package/lib/cjs/function/statistics/mad.js +4 -12
  806. package/lib/cjs/function/statistics/max.js +7 -16
  807. package/lib/cjs/function/statistics/mean.js +4 -14
  808. package/lib/cjs/function/statistics/median.js +14 -21
  809. package/lib/cjs/function/statistics/min.js +7 -16
  810. package/lib/cjs/function/statistics/mode.js +3 -15
  811. package/lib/cjs/function/statistics/prod.js +9 -13
  812. package/lib/cjs/function/statistics/quantileSeq.js +19 -65
  813. package/lib/cjs/function/statistics/std.js +3 -10
  814. package/lib/cjs/function/statistics/sum.js +6 -14
  815. package/lib/cjs/function/statistics/utils/improveErrorMessage.js +0 -5
  816. package/lib/cjs/function/statistics/variance.js +11 -24
  817. package/lib/cjs/function/string/bin.js +2 -4
  818. package/lib/cjs/function/string/format.js +0 -4
  819. package/lib/cjs/function/string/hex.js +2 -4
  820. package/lib/cjs/function/string/oct.js +2 -3
  821. package/lib/cjs/function/string/print.js +1 -10
  822. package/lib/cjs/function/trigonometry/acos.js +2 -5
  823. package/lib/cjs/function/trigonometry/acosh.js +2 -8
  824. package/lib/cjs/function/trigonometry/acot.js +1 -5
  825. package/lib/cjs/function/trigonometry/acoth.js +3 -8
  826. package/lib/cjs/function/trigonometry/acsc.js +3 -8
  827. package/lib/cjs/function/trigonometry/acsch.js +1 -5
  828. package/lib/cjs/function/trigonometry/asec.js +3 -8
  829. package/lib/cjs/function/trigonometry/asech.js +3 -10
  830. package/lib/cjs/function/trigonometry/asin.js +2 -5
  831. package/lib/cjs/function/trigonometry/asinh.js +0 -4
  832. package/lib/cjs/function/trigonometry/atan.js +0 -3
  833. package/lib/cjs/function/trigonometry/atan2.js +6 -13
  834. package/lib/cjs/function/trigonometry/atanh.js +2 -7
  835. package/lib/cjs/function/trigonometry/cos.js +1 -4
  836. package/lib/cjs/function/trigonometry/cosh.js +0 -4
  837. package/lib/cjs/function/trigonometry/cot.js +2 -6
  838. package/lib/cjs/function/trigonometry/coth.js +1 -5
  839. package/lib/cjs/function/trigonometry/csc.js +2 -6
  840. package/lib/cjs/function/trigonometry/csch.js +1 -5
  841. package/lib/cjs/function/trigonometry/sec.js +2 -6
  842. package/lib/cjs/function/trigonometry/sech.js +1 -5
  843. package/lib/cjs/function/trigonometry/sin.js +1 -4
  844. package/lib/cjs/function/trigonometry/sinh.js +0 -4
  845. package/lib/cjs/function/trigonometry/tan.js +1 -4
  846. package/lib/cjs/function/trigonometry/tanh.js +0 -4
  847. package/lib/cjs/function/trigonometry/trigUnit.js +0 -3
  848. package/lib/cjs/function/unit/to.js +2 -5
  849. package/lib/cjs/function/utils/clone.js +0 -4
  850. package/lib/cjs/function/utils/hasNumericValue.js +1 -4
  851. package/lib/cjs/function/utils/isInteger.js +1 -5
  852. package/lib/cjs/function/utils/isNaN.js +0 -5
  853. package/lib/cjs/function/utils/isNegative.js +1 -5
  854. package/lib/cjs/function/utils/isNumeric.js +0 -4
  855. package/lib/cjs/function/utils/isPositive.js +0 -5
  856. package/lib/cjs/function/utils/isPrime.js +4 -25
  857. package/lib/cjs/function/utils/isZero.js +0 -5
  858. package/lib/cjs/function/utils/numeric.js +5 -13
  859. package/lib/cjs/function/utils/typeOf.js +0 -4
  860. package/lib/cjs/header.js +2 -2
  861. package/lib/cjs/index.js +0 -2
  862. package/lib/cjs/json/replacer.js +0 -3
  863. package/lib/cjs/json/reviver.js +0 -5
  864. package/lib/cjs/number.js +0 -2
  865. package/lib/cjs/plain/bignumber/arithmetic.js +0 -10
  866. package/lib/cjs/plain/bignumber/index.js +0 -7
  867. package/lib/cjs/plain/number/arithmetic.js +24 -85
  868. package/lib/cjs/plain/number/bitwise.js +0 -23
  869. package/lib/cjs/plain/number/combinations.js +4 -14
  870. package/lib/cjs/plain/number/constants.js +0 -1
  871. package/lib/cjs/plain/number/index.js +0 -18
  872. package/lib/cjs/plain/number/logical.js +0 -8
  873. package/lib/cjs/plain/number/probability.js +11 -22
  874. package/lib/cjs/plain/number/trigonometry.js +0 -52
  875. package/lib/cjs/plain/number/utils.js +0 -12
  876. package/lib/cjs/type/bignumber/BigNumber.js +4 -13
  877. package/lib/cjs/type/bignumber/function/bignumber.js +1 -10
  878. package/lib/cjs/type/boolean.js +2 -9
  879. package/lib/cjs/type/chain/Chain.js +18 -43
  880. package/lib/cjs/type/chain/function/chain.js +1 -4
  881. package/lib/cjs/type/complex/Complex.js +8 -35
  882. package/lib/cjs/type/complex/function/complex.js +2 -7
  883. package/lib/cjs/type/fraction/Fraction.js +2 -8
  884. package/lib/cjs/type/fraction/function/fraction.js +2 -6
  885. package/lib/cjs/type/matrix/DenseMatrix.js +144 -246
  886. package/lib/cjs/type/matrix/FibonacciHeap.js +119 -159
  887. package/lib/cjs/type/matrix/ImmutableDenseMatrix.js +20 -43
  888. package/lib/cjs/type/matrix/Matrix.js +18 -38
  889. package/lib/cjs/type/matrix/MatrixIndex.js +24 -65
  890. package/lib/cjs/type/matrix/Range.js +14 -50
  891. package/lib/cjs/type/matrix/Spa.js +34 -54
  892. package/lib/cjs/type/matrix/SparseMatrix.js +414 -531
  893. package/lib/cjs/type/matrix/function/index.js +1 -5
  894. package/lib/cjs/type/matrix/function/matrix.js +4 -9
  895. package/lib/cjs/type/matrix/function/sparse.js +1 -4
  896. package/lib/cjs/type/matrix/utils/matAlgo01xDSid.js +36 -36
  897. package/lib/cjs/type/matrix/utils/matAlgo02xDS0.js +43 -43
  898. package/lib/cjs/type/matrix/utils/matAlgo03xDSf.js +40 -40
  899. package/lib/cjs/type/matrix/utils/matAlgo04xSidSid.js +71 -71
  900. package/lib/cjs/type/matrix/utils/matAlgo05xSfSf.js +73 -74
  901. package/lib/cjs/type/matrix/utils/matAlgo06xS0S0.js +61 -61
  902. package/lib/cjs/type/matrix/utils/matAlgo07xSSf.js +47 -49
  903. package/lib/cjs/type/matrix/utils/matAlgo08xS0Sid.js +67 -67
  904. package/lib/cjs/type/matrix/utils/matAlgo09xS0Sf.js +57 -56
  905. package/lib/cjs/type/matrix/utils/matAlgo10xSids.js +33 -33
  906. package/lib/cjs/type/matrix/utils/matAlgo11xS0s.js +39 -38
  907. package/lib/cjs/type/matrix/utils/matAlgo12xSfs.js +33 -33
  908. package/lib/cjs/type/matrix/utils/matAlgo13xDD.js +26 -28
  909. package/lib/cjs/type/matrix/utils/matAlgo14xDs.js +18 -19
  910. package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +10 -32
  911. package/lib/cjs/type/number.js +7 -26
  912. package/lib/cjs/type/resultset/ResultSet.js +5 -13
  913. package/lib/cjs/type/string.js +0 -5
  914. package/lib/cjs/type/unit/Unit.js +205 -388
  915. package/lib/cjs/type/unit/function/createUnit.js +1 -4
  916. package/lib/cjs/type/unit/function/splitUnit.js +0 -3
  917. package/lib/cjs/type/unit/function/unit.js +5 -6
  918. package/lib/cjs/type/unit/physicalConstants.js +22 -19
  919. package/lib/cjs/utils/array.js +62 -137
  920. package/lib/cjs/utils/bignumber/bitwise.js +13 -96
  921. package/lib/cjs/utils/bignumber/constants.js +4 -7
  922. package/lib/cjs/utils/bignumber/formatter.js +20 -46
  923. package/lib/cjs/utils/bignumber/nearlyEqual.js +8 -10
  924. package/lib/cjs/utils/collection.js +24 -43
  925. package/lib/cjs/utils/complex.js +0 -2
  926. package/lib/cjs/utils/customs.js +18 -42
  927. package/lib/cjs/utils/emitter.js +2 -4
  928. package/lib/cjs/utils/factory.js +11 -28
  929. package/lib/cjs/utils/function.js +4 -21
  930. package/lib/cjs/utils/is.js +3 -50
  931. package/lib/cjs/utils/latex.js +6 -14
  932. package/lib/cjs/utils/log.js +0 -6
  933. package/lib/cjs/utils/lruQueue.js +0 -9
  934. package/lib/cjs/utils/map.js +12 -44
  935. package/lib/cjs/utils/noop.js +0 -5
  936. package/lib/cjs/utils/number.js +71 -151
  937. package/lib/cjs/utils/object.js +25 -85
  938. package/lib/cjs/utils/product.js +0 -4
  939. package/lib/cjs/utils/scope.js +0 -4
  940. package/lib/cjs/utils/snapshot.js +13 -47
  941. package/lib/cjs/utils/string.js +9 -40
  942. package/lib/cjs/utils/switch.js +0 -5
  943. package/lib/cjs/version.js +2 -2
  944. package/lib/esm/constants.js +9 -5
  945. package/lib/esm/core/create.js +24 -26
  946. package/lib/esm/core/function/config.js +12 -10
  947. package/lib/esm/core/function/import.js +21 -57
  948. package/lib/esm/core/function/typed.js +23 -41
  949. package/lib/esm/entry/configReadonly.js +2 -3
  950. package/lib/esm/entry/dependenciesAny.generated.js +0 -1
  951. package/lib/esm/entry/dependenciesNumber.generated.js +0 -1
  952. package/lib/esm/entry/impureFunctionsAny.generated.js +2 -8
  953. package/lib/esm/entry/impureFunctionsNumber.generated.js +2 -8
  954. package/lib/esm/entry/mainAny.js +10 -5
  955. package/lib/esm/entry/mainNumber.js +10 -5
  956. package/lib/esm/entry/pureFunctionsAny.generated.js +2 -1
  957. package/lib/esm/entry/pureFunctionsNumber.generated.js +2 -1
  958. package/lib/esm/error/ArgumentsError.js +0 -1
  959. package/lib/esm/error/DimensionError.js +0 -1
  960. package/lib/esm/error/IndexError.js +0 -4
  961. package/lib/esm/expression/Help.js +5 -23
  962. package/lib/esm/expression/Parser.js +8 -18
  963. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +1 -0
  964. package/lib/esm/expression/function/compile.js +0 -1
  965. package/lib/esm/expression/function/evaluate.js +0 -1
  966. package/lib/esm/expression/function/help.js +1 -5
  967. package/lib/esm/expression/function/parser.js +0 -1
  968. package/lib/esm/expression/node/AccessorNode.js +14 -40
  969. package/lib/esm/expression/node/ArrayNode.js +11 -29
  970. package/lib/esm/expression/node/AssignmentNode.js +25 -58
  971. package/lib/esm/expression/node/BlockNode.js +11 -33
  972. package/lib/esm/expression/node/ConditionalNode.js +15 -53
  973. package/lib/esm/expression/node/ConstantNode.js +11 -37
  974. package/lib/esm/expression/node/FunctionAssignmentNode.js +13 -46
  975. package/lib/esm/expression/node/FunctionNode.js +30 -93
  976. package/lib/esm/expression/node/IndexNode.js +15 -38
  977. package/lib/esm/expression/node/Node.js +23 -67
  978. package/lib/esm/expression/node/ObjectNode.js +11 -41
  979. package/lib/esm/expression/node/OperatorNode.js +36 -138
  980. package/lib/esm/expression/node/ParenthesisNode.js +12 -32
  981. package/lib/esm/expression/node/RangeNode.js +16 -62
  982. package/lib/esm/expression/node/RelationalNode.js +9 -37
  983. package/lib/esm/expression/node/SymbolNode.js +16 -39
  984. package/lib/esm/expression/node/utils/access.js +0 -2
  985. package/lib/esm/expression/node/utils/assign.js +0 -2
  986. package/lib/esm/expression/operators.js +21 -41
  987. package/lib/esm/expression/parse.js +145 -323
  988. package/lib/esm/expression/transform/apply.transform.js +3 -4
  989. package/lib/esm/expression/transform/column.transform.js +3 -4
  990. package/lib/esm/expression/transform/concat.transform.js +1 -3
  991. package/lib/esm/expression/transform/cumsum.transform.js +1 -3
  992. package/lib/esm/expression/transform/diff.transform.js +1 -2
  993. package/lib/esm/expression/transform/filter.transform.js +3 -7
  994. package/lib/esm/expression/transform/forEach.transform.js +2 -8
  995. package/lib/esm/expression/transform/index.transform.js +4 -6
  996. package/lib/esm/expression/transform/map.transform.js +3 -9
  997. package/lib/esm/expression/transform/max.transform.js +1 -2
  998. package/lib/esm/expression/transform/mean.transform.js +1 -2
  999. package/lib/esm/expression/transform/min.transform.js +1 -2
  1000. package/lib/esm/expression/transform/range.transform.js +1 -3
  1001. package/lib/esm/expression/transform/row.transform.js +3 -4
  1002. package/lib/esm/expression/transform/std.transform.js +1 -2
  1003. package/lib/esm/expression/transform/subset.transform.js +1 -1
  1004. package/lib/esm/expression/transform/sum.transform.js +1 -2
  1005. package/lib/esm/expression/transform/utils/compileInlineExpression.js +3 -5
  1006. package/lib/esm/expression/transform/utils/errorTransform.js +1 -2
  1007. package/lib/esm/expression/transform/utils/lastDimToZeroBase.js +1 -3
  1008. package/lib/esm/expression/transform/variance.transform.js +1 -2
  1009. package/lib/esm/factoriesAny.js +2 -1
  1010. package/lib/esm/factoriesNumber.js +58 -33
  1011. package/lib/esm/function/algebra/decomposition/lup.js +124 -158
  1012. package/lib/esm/function/algebra/decomposition/qr.js +22 -36
  1013. package/lib/esm/function/algebra/decomposition/slu.js +9 -8
  1014. package/lib/esm/function/algebra/derivative.js +36 -105
  1015. package/lib/esm/function/algebra/leafCount.js +1 -3
  1016. package/lib/esm/function/algebra/rationalize.js +127 -142
  1017. package/lib/esm/function/algebra/resolve.js +3 -10
  1018. package/lib/esm/function/algebra/simplify/util.js +12 -67
  1019. package/lib/esm/function/algebra/simplify.js +86 -162
  1020. package/lib/esm/function/algebra/simplifyConstant.js +22 -94
  1021. package/lib/esm/function/algebra/simplifyCore.js +6 -52
  1022. package/lib/esm/function/algebra/solver/lsolve.js +22 -26
  1023. package/lib/esm/function/algebra/solver/lsolveAll.js +24 -25
  1024. package/lib/esm/function/algebra/solver/lusolve.js +9 -14
  1025. package/lib/esm/function/algebra/solver/usolve.js +26 -31
  1026. package/lib/esm/function/algebra/solver/usolveAll.js +28 -25
  1027. package/lib/esm/function/algebra/solver/utils/solveValidation.js +4 -28
  1028. package/lib/esm/function/algebra/sparse/csAmd.js +247 -294
  1029. package/lib/esm/function/algebra/sparse/csChol.js +63 -75
  1030. package/lib/esm/function/algebra/sparse/csCounts.js +37 -52
  1031. package/lib/esm/function/algebra/sparse/csCumsum.js +8 -10
  1032. package/lib/esm/function/algebra/sparse/csDfs.js +35 -39
  1033. package/lib/esm/function/algebra/sparse/csEreach.js +25 -29
  1034. package/lib/esm/function/algebra/sparse/csEtree.js +23 -27
  1035. package/lib/esm/function/algebra/sparse/csFkeep.js +20 -24
  1036. package/lib/esm/function/algebra/sparse/csIpvec.js +2 -3
  1037. package/lib/esm/function/algebra/sparse/csLeaf.js +12 -12
  1038. package/lib/esm/function/algebra/sparse/csLu.js +65 -83
  1039. package/lib/esm/function/algebra/sparse/csMark.js +1 -1
  1040. package/lib/esm/function/algebra/sparse/csPermute.js +20 -24
  1041. package/lib/esm/function/algebra/sparse/csPost.js +15 -23
  1042. package/lib/esm/function/algebra/sparse/csReach.js +15 -17
  1043. package/lib/esm/function/algebra/sparse/csSpsolve.js +30 -35
  1044. package/lib/esm/function/algebra/sparse/csSqr.js +60 -77
  1045. package/lib/esm/function/algebra/sparse/csSymperm.js +32 -40
  1046. package/lib/esm/function/algebra/sparse/csTdfs.js +12 -14
  1047. package/lib/esm/function/algebra/sparse/csUnflip.js +1 -1
  1048. package/lib/esm/function/algebra/symbolicEqual.js +0 -2
  1049. package/lib/esm/function/arithmetic/abs.js +0 -1
  1050. package/lib/esm/function/arithmetic/add.js +1 -3
  1051. package/lib/esm/function/arithmetic/addScalar.js +0 -3
  1052. package/lib/esm/function/arithmetic/cbrt.js +8 -15
  1053. package/lib/esm/function/arithmetic/ceil.js +0 -3
  1054. package/lib/esm/function/arithmetic/cube.js +2 -1
  1055. package/lib/esm/function/arithmetic/divide.js +2 -1
  1056. package/lib/esm/function/arithmetic/divideScalar.js +0 -1
  1057. package/lib/esm/function/arithmetic/dotDivide.js +1 -1
  1058. package/lib/esm/function/arithmetic/dotMultiply.js +1 -1
  1059. package/lib/esm/function/arithmetic/dotPow.js +1 -3
  1060. package/lib/esm/function/arithmetic/exp.js +0 -1
  1061. package/lib/esm/function/arithmetic/expm1.js +0 -1
  1062. package/lib/esm/function/arithmetic/fix.js +0 -3
  1063. package/lib/esm/function/arithmetic/floor.js +0 -3
  1064. package/lib/esm/function/arithmetic/gcd.js +4 -8
  1065. package/lib/esm/function/arithmetic/hypot.js +1 -6
  1066. package/lib/esm/function/arithmetic/invmod.js +0 -2
  1067. package/lib/esm/function/arithmetic/lcm.js +5 -11
  1068. package/lib/esm/function/arithmetic/log.js +0 -1
  1069. package/lib/esm/function/arithmetic/log10.js +0 -1
  1070. package/lib/esm/function/arithmetic/log1p.js +1 -3
  1071. package/lib/esm/function/arithmetic/log2.js +1 -2
  1072. package/lib/esm/function/arithmetic/mod.js +3 -5
  1073. package/lib/esm/function/arithmetic/multiply.js +307 -324
  1074. package/lib/esm/function/arithmetic/multiplyScalar.js +0 -1
  1075. package/lib/esm/function/arithmetic/norm.js +29 -55
  1076. package/lib/esm/function/arithmetic/nthRoot.js +6 -14
  1077. package/lib/esm/function/arithmetic/nthRoots.js +4 -10
  1078. package/lib/esm/function/arithmetic/pow.js +13 -27
  1079. package/lib/esm/function/arithmetic/round.js +1 -10
  1080. package/lib/esm/function/arithmetic/sign.js +0 -2
  1081. package/lib/esm/function/arithmetic/sqrt.js +1 -2
  1082. package/lib/esm/function/arithmetic/square.js +0 -1
  1083. package/lib/esm/function/arithmetic/subtract.js +2 -4
  1084. package/lib/esm/function/arithmetic/unaryMinus.js +2 -2
  1085. package/lib/esm/function/arithmetic/unaryPlus.js +3 -1
  1086. package/lib/esm/function/arithmetic/xgcd.js +9 -12
  1087. package/lib/esm/function/bitwise/bitAnd.js +1 -1
  1088. package/lib/esm/function/bitwise/bitNot.js +0 -1
  1089. package/lib/esm/function/bitwise/bitOr.js +1 -1
  1090. package/lib/esm/function/bitwise/bitXor.js +1 -1
  1091. package/lib/esm/function/bitwise/leftShift.js +1 -5
  1092. package/lib/esm/function/bitwise/rightArithShift.js +1 -5
  1093. package/lib/esm/function/bitwise/rightLogShift.js +2 -4
  1094. package/lib/esm/function/combinatorics/bellNumbers.js +2 -5
  1095. package/lib/esm/function/combinatorics/catalan.js +0 -2
  1096. package/lib/esm/function/combinatorics/composition.js +0 -2
  1097. package/lib/esm/function/combinatorics/stirlingS2.js +0 -8
  1098. package/lib/esm/function/complex/arg.js +1 -1
  1099. package/lib/esm/function/complex/conj.js +0 -1
  1100. package/lib/esm/function/complex/im.js +0 -1
  1101. package/lib/esm/function/complex/re.js +0 -1
  1102. package/lib/esm/function/geometry/distance.js +0 -45
  1103. package/lib/esm/function/geometry/intersect.js +5 -38
  1104. package/lib/esm/function/logical/and.js +1 -5
  1105. package/lib/esm/function/logical/not.js +0 -1
  1106. package/lib/esm/function/logical/or.js +1 -1
  1107. package/lib/esm/function/logical/xor.js +1 -1
  1108. package/lib/esm/function/matrix/apply.js +2 -16
  1109. package/lib/esm/function/matrix/column.js +1 -3
  1110. package/lib/esm/function/matrix/concat.js +7 -16
  1111. package/lib/esm/function/matrix/count.js +0 -1
  1112. package/lib/esm/function/matrix/cross.js +1 -5
  1113. package/lib/esm/function/matrix/ctranspose.js +0 -1
  1114. package/lib/esm/function/matrix/det.js +1 -15
  1115. package/lib/esm/function/matrix/diag.js +18 -27
  1116. package/lib/esm/function/matrix/diff.js +4 -17
  1117. package/lib/esm/function/matrix/dot.js +18 -39
  1118. package/lib/esm/function/matrix/eigs/complexEigs.js +131 -169
  1119. package/lib/esm/function/matrix/eigs/realSymetric.js +51 -93
  1120. package/lib/esm/function/matrix/eigs.js +6 -30
  1121. package/lib/esm/function/matrix/expm.js +21 -33
  1122. package/lib/esm/function/matrix/fft.js +5 -14
  1123. package/lib/esm/function/matrix/filter.js +1 -2
  1124. package/lib/esm/function/matrix/flatten.js +5 -7
  1125. package/lib/esm/function/matrix/forEach.js +1 -4
  1126. package/lib/esm/function/matrix/getMatrixDataType.js +0 -1
  1127. package/lib/esm/function/matrix/identity.js +9 -20
  1128. package/lib/esm/function/matrix/ifft.js +0 -1
  1129. package/lib/esm/function/matrix/inv.js +12 -31
  1130. package/lib/esm/function/matrix/kron.js +1 -5
  1131. package/lib/esm/function/matrix/map.js +1 -7
  1132. package/lib/esm/function/matrix/matrixFromColumns.js +8 -12
  1133. package/lib/esm/function/matrix/matrixFromFunction.js +0 -4
  1134. package/lib/esm/function/matrix/matrixFromRows.js +2 -8
  1135. package/lib/esm/function/matrix/ones.js +5 -14
  1136. package/lib/esm/function/matrix/partitionSelect.js +12 -19
  1137. package/lib/esm/function/matrix/pinv.js +5 -31
  1138. package/lib/esm/function/matrix/range.js +8 -31
  1139. package/lib/esm/function/matrix/reshape.js +0 -1
  1140. package/lib/esm/function/matrix/resize.js +5 -17
  1141. package/lib/esm/function/matrix/rotate.js +0 -9
  1142. package/lib/esm/function/matrix/rotationMatrix.js +3 -19
  1143. package/lib/esm/function/matrix/row.js +1 -3
  1144. package/lib/esm/function/matrix/size.js +0 -1
  1145. package/lib/esm/function/matrix/sort.js +4 -14
  1146. package/lib/esm/function/matrix/sqrtm.js +2 -10
  1147. package/lib/esm/function/matrix/squeeze.js +2 -3
  1148. package/lib/esm/function/matrix/subset.js +15 -30
  1149. package/lib/esm/function/matrix/trace.js +20 -30
  1150. package/lib/esm/function/matrix/transpose.js +42 -53
  1151. package/lib/esm/function/matrix/zeros.js +8 -15
  1152. package/lib/esm/function/probability/combinations.js +3 -8
  1153. package/lib/esm/function/probability/combinationsWithRep.js +1 -12
  1154. package/lib/esm/function/probability/factorial.js +0 -3
  1155. package/lib/esm/function/probability/gamma.js +18 -26
  1156. package/lib/esm/function/probability/kldivergence.js +2 -12
  1157. package/lib/esm/function/probability/lgamma.js +12 -12
  1158. package/lib/esm/function/probability/multinomial.js +0 -2
  1159. package/lib/esm/function/probability/permutations.js +5 -13
  1160. package/lib/esm/function/probability/pickRandom.js +2 -17
  1161. package/lib/esm/function/probability/random.js +4 -10
  1162. package/lib/esm/function/probability/randomInt.js +1 -5
  1163. package/lib/esm/function/probability/util/randomMatrix.js +0 -2
  1164. package/lib/esm/function/probability/util/seededRNG.js +6 -5
  1165. package/lib/esm/function/relational/compare.js +1 -1
  1166. package/lib/esm/function/relational/compareNatural.js +27 -52
  1167. package/lib/esm/function/relational/compareText.js +1 -1
  1168. package/lib/esm/function/relational/compareUnits.js +0 -1
  1169. package/lib/esm/function/relational/deepEqual.js +1 -5
  1170. package/lib/esm/function/relational/equal.js +1 -5
  1171. package/lib/esm/function/relational/equalScalar.js +1 -1
  1172. package/lib/esm/function/relational/equalText.js +0 -1
  1173. package/lib/esm/function/relational/larger.js +1 -1
  1174. package/lib/esm/function/relational/largerEq.js +1 -1
  1175. package/lib/esm/function/relational/smaller.js +1 -1
  1176. package/lib/esm/function/relational/smallerEq.js +1 -1
  1177. package/lib/esm/function/relational/unequal.js +1 -6
  1178. package/lib/esm/function/set/setCartesian.js +4 -9
  1179. package/lib/esm/function/set/setDifference.js +4 -11
  1180. package/lib/esm/function/set/setDistinct.js +4 -9
  1181. package/lib/esm/function/set/setIntersect.js +4 -9
  1182. package/lib/esm/function/set/setIsSubset.js +0 -6
  1183. package/lib/esm/function/set/setMultiplicity.js +0 -4
  1184. package/lib/esm/function/set/setPowerset.js +6 -13
  1185. package/lib/esm/function/set/setSize.js +0 -3
  1186. package/lib/esm/function/set/setSymDifference.js +0 -2
  1187. package/lib/esm/function/set/setUnion.js +0 -2
  1188. package/lib/esm/function/special/erf.js +12 -23
  1189. package/lib/esm/function/statistics/cumsum.js +2 -18
  1190. package/lib/esm/function/statistics/mad.js +0 -4
  1191. package/lib/esm/function/statistics/max.js +4 -9
  1192. package/lib/esm/function/statistics/mean.js +2 -7
  1193. package/lib/esm/function/statistics/median.js +10 -12
  1194. package/lib/esm/function/statistics/min.js +4 -9
  1195. package/lib/esm/function/statistics/mode.js +1 -10
  1196. package/lib/esm/function/statistics/prod.js +6 -6
  1197. package/lib/esm/function/statistics/quantileSeq.js +15 -56
  1198. package/lib/esm/function/statistics/std.js +0 -4
  1199. package/lib/esm/function/statistics/sum.js +3 -7
  1200. package/lib/esm/function/statistics/utils/improveErrorMessage.js +1 -4
  1201. package/lib/esm/function/statistics/variance.js +5 -13
  1202. package/lib/esm/function/string/bin.js +1 -1
  1203. package/lib/esm/function/string/format.js +0 -1
  1204. package/lib/esm/function/string/hex.js +1 -1
  1205. package/lib/esm/function/string/oct.js +1 -0
  1206. package/lib/esm/function/string/print.js +1 -5
  1207. package/lib/esm/function/trigonometry/acos.js +0 -1
  1208. package/lib/esm/function/trigonometry/acosh.js +0 -3
  1209. package/lib/esm/function/trigonometry/acot.js +0 -1
  1210. package/lib/esm/function/trigonometry/acoth.js +0 -2
  1211. package/lib/esm/function/trigonometry/acsc.js +0 -2
  1212. package/lib/esm/function/trigonometry/acsch.js +0 -1
  1213. package/lib/esm/function/trigonometry/asec.js +0 -2
  1214. package/lib/esm/function/trigonometry/asech.js +0 -4
  1215. package/lib/esm/function/trigonometry/asin.js +0 -1
  1216. package/lib/esm/function/trigonometry/asinh.js +0 -1
  1217. package/lib/esm/function/trigonometry/atan.js +0 -1
  1218. package/lib/esm/function/trigonometry/atan2.js +2 -1
  1219. package/lib/esm/function/trigonometry/atanh.js +0 -2
  1220. package/lib/esm/function/trigonometry/cos.js +1 -1
  1221. package/lib/esm/function/trigonometry/cosh.js +0 -1
  1222. package/lib/esm/function/trigonometry/cot.js +1 -1
  1223. package/lib/esm/function/trigonometry/coth.js +0 -1
  1224. package/lib/esm/function/trigonometry/csc.js +1 -1
  1225. package/lib/esm/function/trigonometry/csch.js +0 -1
  1226. package/lib/esm/function/trigonometry/sec.js +1 -1
  1227. package/lib/esm/function/trigonometry/sech.js +0 -1
  1228. package/lib/esm/function/trigonometry/sin.js +1 -1
  1229. package/lib/esm/function/trigonometry/sinh.js +0 -1
  1230. package/lib/esm/function/trigonometry/tan.js +1 -1
  1231. package/lib/esm/function/trigonometry/tanh.js +0 -1
  1232. package/lib/esm/function/trigonometry/trigUnit.js +0 -1
  1233. package/lib/esm/function/unit/to.js +1 -1
  1234. package/lib/esm/function/utils/clone.js +0 -1
  1235. package/lib/esm/function/utils/hasNumericValue.js +0 -1
  1236. package/lib/esm/function/utils/isInteger.js +1 -1
  1237. package/lib/esm/function/utils/isNaN.js +0 -1
  1238. package/lib/esm/function/utils/isNegative.js +1 -1
  1239. package/lib/esm/function/utils/isNumeric.js +0 -1
  1240. package/lib/esm/function/utils/isPositive.js +0 -1
  1241. package/lib/esm/function/utils/isPrime.js +4 -22
  1242. package/lib/esm/function/utils/isZero.js +0 -1
  1243. package/lib/esm/function/utils/numeric.js +3 -7
  1244. package/lib/esm/function/utils/typeOf.js +0 -1
  1245. package/lib/esm/json/replacer.js +0 -1
  1246. package/lib/esm/json/reviver.js +0 -3
  1247. package/lib/esm/plain/bignumber/index.js +2 -1
  1248. package/lib/esm/plain/number/arithmetic.js +25 -45
  1249. package/lib/esm/plain/number/bitwise.js +0 -7
  1250. package/lib/esm/plain/number/combinations.js +4 -10
  1251. package/lib/esm/plain/number/probability.js +12 -16
  1252. package/lib/esm/type/bignumber/BigNumber.js +3 -6
  1253. package/lib/esm/type/bignumber/function/bignumber.js +0 -6
  1254. package/lib/esm/type/boolean.js +2 -6
  1255. package/lib/esm/type/chain/Chain.js +16 -36
  1256. package/lib/esm/type/chain/function/chain.js +0 -1
  1257. package/lib/esm/type/complex/Complex.js +8 -28
  1258. package/lib/esm/type/complex/function/complex.js +1 -3
  1259. package/lib/esm/type/fraction/Fraction.js +2 -4
  1260. package/lib/esm/type/fraction/function/fraction.js +1 -2
  1261. package/lib/esm/type/matrix/DenseMatrix.js +143 -224
  1262. package/lib/esm/type/matrix/FibonacciHeap.js +118 -156
  1263. package/lib/esm/type/matrix/ImmutableDenseMatrix.js +19 -38
  1264. package/lib/esm/type/matrix/Matrix.js +18 -36
  1265. package/lib/esm/type/matrix/MatrixIndex.js +24 -60
  1266. package/lib/esm/type/matrix/Range.js +14 -46
  1267. package/lib/esm/type/matrix/Spa.js +32 -50
  1268. package/lib/esm/type/matrix/SparseMatrix.js +412 -513
  1269. package/lib/esm/type/matrix/function/index.js +0 -1
  1270. package/lib/esm/type/matrix/function/matrix.js +1 -4
  1271. package/lib/esm/type/matrix/function/sparse.js +0 -1
  1272. package/lib/esm/type/matrix/utils/matAlgo01xDSid.js +36 -33
  1273. package/lib/esm/type/matrix/utils/matAlgo02xDS0.js +42 -39
  1274. package/lib/esm/type/matrix/utils/matAlgo03xDSf.js +40 -37
  1275. package/lib/esm/type/matrix/utils/matAlgo04xSidSid.js +70 -67
  1276. package/lib/esm/type/matrix/utils/matAlgo05xSfSf.js +72 -70
  1277. package/lib/esm/type/matrix/utils/matAlgo06xS0S0.js +60 -56
  1278. package/lib/esm/type/matrix/utils/matAlgo07xSSf.js +46 -45
  1279. package/lib/esm/type/matrix/utils/matAlgo08xS0Sid.js +66 -63
  1280. package/lib/esm/type/matrix/utils/matAlgo09xS0Sf.js +56 -52
  1281. package/lib/esm/type/matrix/utils/matAlgo10xSids.js +32 -30
  1282. package/lib/esm/type/matrix/utils/matAlgo11xS0s.js +38 -35
  1283. package/lib/esm/type/matrix/utils/matAlgo12xSfs.js +32 -30
  1284. package/lib/esm/type/matrix/utils/matAlgo13xDD.js +26 -25
  1285. package/lib/esm/type/matrix/utils/matAlgo14xDs.js +18 -16
  1286. package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +9 -26
  1287. package/lib/esm/type/number.js +7 -23
  1288. package/lib/esm/type/resultset/ResultSet.js +5 -11
  1289. package/lib/esm/type/string.js +0 -1
  1290. package/lib/esm/type/unit/Unit.js +189 -362
  1291. package/lib/esm/type/unit/function/createUnit.js +0 -1
  1292. package/lib/esm/type/unit/function/splitUnit.js +0 -1
  1293. package/lib/esm/type/unit/function/unit.js +4 -2
  1294. package/lib/esm/type/unit/physicalConstants.js +22 -15
  1295. package/lib/esm/utils/array.js +63 -113
  1296. package/lib/esm/utils/bignumber/bitwise.js +13 -89
  1297. package/lib/esm/utils/bignumber/constants.js +5 -5
  1298. package/lib/esm/utils/bignumber/formatter.js +21 -42
  1299. package/lib/esm/utils/bignumber/nearlyEqual.js +8 -9
  1300. package/lib/esm/utils/collection.js +25 -35
  1301. package/lib/esm/utils/complex.js +1 -1
  1302. package/lib/esm/utils/customs.js +19 -39
  1303. package/lib/esm/utils/emitter.js +3 -2
  1304. package/lib/esm/utils/factory.js +12 -20
  1305. package/lib/esm/utils/function.js +4 -13
  1306. package/lib/esm/utils/is.js +3 -7
  1307. package/lib/esm/utils/latex.js +6 -8
  1308. package/lib/esm/utils/log.js +0 -2
  1309. package/lib/esm/utils/lruQueue.js +0 -8
  1310. package/lib/esm/utils/map.js +6 -21
  1311. package/lib/esm/utils/number.js +72 -115
  1312. package/lib/esm/utils/object.js +26 -66
  1313. package/lib/esm/utils/product.js +0 -3
  1314. package/lib/esm/utils/scope.js +1 -3
  1315. package/lib/esm/utils/snapshot.js +10 -32
  1316. package/lib/esm/utils/string.js +10 -32
  1317. package/lib/esm/utils/switch.js +0 -4
  1318. package/lib/esm/version.js +2 -1
  1319. package/package.json +16 -15
  1320. package/types/index.d.ts +30 -35
  1321. package/types/index.ts +72 -7
  1322. package/types/tsconfig.json +1 -0
@@ -14,7 +14,6 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
14
14
  equalScalar,
15
15
  Matrix
16
16
  } = _ref;
17
-
18
17
  /**
19
18
  * Sparse Matrix implementation. This type implements
20
19
  * a [Compressed Column Storage](https://en.wikipedia.org/wiki/Sparse_matrix#Compressed_sparse_column_(CSC_or_CCS))
@@ -25,11 +24,9 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
25
24
  if (!(this instanceof SparseMatrix)) {
26
25
  throw new SyntaxError('Constructor must be called with the new operator');
27
26
  }
28
-
29
27
  if (datatype && !isString(datatype)) {
30
28
  throw new Error('Invalid datatype: ' + datatype);
31
29
  }
32
-
33
30
  if (isMatrix(data)) {
34
31
  // create from matrix
35
32
  _createFromMatrix(this, data, datatype);
@@ -55,7 +52,6 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
55
52
  this._datatype = datatype;
56
53
  }
57
54
  }
58
-
59
55
  function _createFromMatrix(matrix, source, datatype) {
60
56
  // check matrix type
61
57
  if (source.type === 'SparseMatrix') {
@@ -70,58 +66,53 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
70
66
  _createFromArray(matrix, source.valueOf(), datatype || source._datatype);
71
67
  }
72
68
  }
73
-
74
69
  function _createFromArray(matrix, data, datatype) {
75
70
  // initialize fields
76
71
  matrix._values = [];
77
72
  matrix._index = [];
78
73
  matrix._ptr = [];
79
- matrix._datatype = datatype; // discover rows & columns, do not use math.size() to avoid looping array twice
80
-
74
+ matrix._datatype = datatype;
75
+ // discover rows & columns, do not use math.size() to avoid looping array twice
81
76
  var rows = data.length;
82
- var columns = 0; // equal signature to use
83
-
84
- var eq = equalScalar; // zero value
77
+ var columns = 0;
85
78
 
79
+ // equal signature to use
80
+ var eq = equalScalar;
81
+ // zero value
86
82
  var zero = 0;
87
-
88
83
  if (isString(datatype)) {
89
84
  // find signature that matches (datatype, datatype)
90
- eq = typed.find(equalScalar, [datatype, datatype]) || equalScalar; // convert 0 to the same datatype
91
-
85
+ eq = typed.find(equalScalar, [datatype, datatype]) || equalScalar;
86
+ // convert 0 to the same datatype
92
87
  zero = typed.convert(0, datatype);
93
- } // check we have rows (empty array)
94
-
88
+ }
95
89
 
90
+ // check we have rows (empty array)
96
91
  if (rows > 0) {
97
92
  // column index
98
93
  var j = 0;
99
-
100
94
  do {
101
95
  // store pointer to values index
102
- matrix._ptr.push(matrix._index.length); // loop rows
103
-
104
-
96
+ matrix._ptr.push(matrix._index.length);
97
+ // loop rows
105
98
  for (var i = 0; i < rows; i++) {
106
99
  // current row
107
- var row = data[i]; // check row is an array
108
-
100
+ var row = data[i];
101
+ // check row is an array
109
102
  if (isArray(row)) {
110
103
  // update columns if needed (only on first column)
111
104
  if (j === 0 && columns < row.length) {
112
105
  columns = row.length;
113
- } // check row has column
114
-
115
-
106
+ }
107
+ // check row has column
116
108
  if (j < row.length) {
117
109
  // value
118
- var v = row[j]; // check value != 0
119
-
110
+ var v = row[j];
111
+ // check value != 0
120
112
  if (!eq(v, zero)) {
121
113
  // store value
122
- matrix._values.push(v); // index
123
-
124
-
114
+ matrix._values.push(v);
115
+ // index
125
116
  matrix._index.push(i);
126
117
  }
127
118
  }
@@ -129,50 +120,44 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
129
120
  // update columns if needed (only on first column)
130
121
  if (j === 0 && columns < 1) {
131
122
  columns = 1;
132
- } // check value != 0 (row is a scalar)
133
-
134
-
123
+ }
124
+ // check value != 0 (row is a scalar)
135
125
  if (!eq(row, zero)) {
136
126
  // store value
137
- matrix._values.push(row); // index
138
-
139
-
127
+ matrix._values.push(row);
128
+ // index
140
129
  matrix._index.push(i);
141
130
  }
142
131
  }
143
- } // increment index
144
-
145
-
132
+ }
133
+ // increment index
146
134
  j++;
147
135
  } while (j < columns);
148
- } // store number of values in ptr
149
-
150
-
151
- matrix._ptr.push(matrix._index.length); // size
152
-
153
-
136
+ }
137
+ // store number of values in ptr
138
+ matrix._ptr.push(matrix._index.length);
139
+ // size
154
140
  matrix._size = [rows, columns];
155
141
  }
156
-
157
142
  SparseMatrix.prototype = new Matrix();
143
+
158
144
  /**
159
145
  * Create a new SparseMatrix
160
146
  */
161
-
162
147
  SparseMatrix.prototype.createSparseMatrix = function (data, datatype) {
163
148
  return new SparseMatrix(data, datatype);
164
149
  };
150
+
165
151
  /**
166
152
  * Attach type information
167
153
  */
168
-
169
-
170
154
  Object.defineProperty(SparseMatrix, 'name', {
171
155
  value: 'SparseMatrix'
172
156
  });
173
157
  SparseMatrix.prototype.constructor = SparseMatrix;
174
158
  SparseMatrix.prototype.type = 'SparseMatrix';
175
159
  SparseMatrix.prototype.isSparseMatrix = true;
160
+
176
161
  /**
177
162
  * Get the matrix type
178
163
  *
@@ -182,10 +167,10 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
182
167
  * @memberOf SparseMatrix
183
168
  * @return {string} type information; if multiple types are found from the Matrix, it will return "mixed"
184
169
  */
185
-
186
170
  SparseMatrix.prototype.getDataType = function () {
187
171
  return getArrayDataType(this._values, typeOf);
188
172
  };
173
+
189
174
  /**
190
175
  * Get the storage format used by the matrix.
191
176
  *
@@ -195,11 +180,10 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
195
180
  * @memberof SparseMatrix
196
181
  * @return {string} The storage format.
197
182
  */
198
-
199
-
200
183
  SparseMatrix.prototype.storage = function () {
201
184
  return 'sparse';
202
185
  };
186
+
203
187
  /**
204
188
  * Get the datatype of the data stored in the matrix.
205
189
  *
@@ -209,22 +193,20 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
209
193
  * @memberof SparseMatrix
210
194
  * @return {string} The datatype.
211
195
  */
212
-
213
-
214
196
  SparseMatrix.prototype.datatype = function () {
215
197
  return this._datatype;
216
198
  };
199
+
217
200
  /**
218
201
  * Create a new SparseMatrix
219
202
  * @memberof SparseMatrix
220
203
  * @param {Array} data
221
204
  * @param {string} [datatype]
222
205
  */
223
-
224
-
225
206
  SparseMatrix.prototype.create = function (data, datatype) {
226
207
  return new SparseMatrix(data, datatype);
227
208
  };
209
+
228
210
  /**
229
211
  * Get the matrix density.
230
212
  *
@@ -234,15 +216,14 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
234
216
  * @memberof SparseMatrix
235
217
  * @return {number} The matrix density.
236
218
  */
237
-
238
-
239
219
  SparseMatrix.prototype.density = function () {
240
220
  // rows & columns
241
221
  var rows = this._size[0];
242
- var columns = this._size[1]; // calculate density
243
-
222
+ var columns = this._size[1];
223
+ // calculate density
244
224
  return rows !== 0 && columns !== 0 ? this._index.length / (rows * columns) : 0;
245
225
  };
226
+
246
227
  /**
247
228
  * Get a subset of the matrix, or replace a subset of the matrix.
248
229
  *
@@ -257,103 +238,101 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
257
238
  * the matrix is resized. If not provided,
258
239
  * new matrix elements will be filled with zeros.
259
240
  */
260
-
261
-
262
241
  SparseMatrix.prototype.subset = function (index, replacement, defaultValue) {
263
242
  // check it is a pattern matrix
264
243
  if (!this._values) {
265
244
  throw new Error('Cannot invoke subset on a Pattern only matrix');
266
- } // check arguments
267
-
245
+ }
268
246
 
247
+ // check arguments
269
248
  switch (arguments.length) {
270
249
  case 1:
271
250
  return _getsubset(this, index);
272
- // intentional fall through
273
251
 
252
+ // intentional fall through
274
253
  case 2:
275
254
  case 3:
276
255
  return _setsubset(this, index, replacement, defaultValue);
277
-
278
256
  default:
279
257
  throw new SyntaxError('Wrong number of arguments');
280
258
  }
281
259
  };
282
-
283
260
  function _getsubset(matrix, idx) {
284
261
  // check idx
285
262
  if (!isIndex(idx)) {
286
263
  throw new TypeError('Invalid index');
287
264
  }
288
-
289
265
  var isScalar = idx.isScalar();
290
-
291
266
  if (isScalar) {
292
267
  // return a scalar
293
268
  return matrix.get(idx.min());
294
- } // validate dimensions
295
-
296
-
269
+ }
270
+ // validate dimensions
297
271
  var size = idx.size();
298
-
299
272
  if (size.length !== matrix._size.length) {
300
273
  throw new DimensionError(size.length, matrix._size.length);
301
- } // vars
302
-
274
+ }
303
275
 
304
- var i, ii, k, kk; // validate if any of the ranges in the index is out of range
276
+ // vars
277
+ var i, ii, k, kk;
305
278
 
279
+ // validate if any of the ranges in the index is out of range
306
280
  var min = idx.min();
307
281
  var max = idx.max();
308
-
309
282
  for (i = 0, ii = matrix._size.length; i < ii; i++) {
310
283
  validateIndex(min[i], matrix._size[i]);
311
284
  validateIndex(max[i], matrix._size[i]);
312
- } // matrix arrays
313
-
285
+ }
314
286
 
287
+ // matrix arrays
315
288
  var mvalues = matrix._values;
316
289
  var mindex = matrix._index;
317
- var mptr = matrix._ptr; // rows & columns dimensions for result matrix
290
+ var mptr = matrix._ptr;
318
291
 
292
+ // rows & columns dimensions for result matrix
319
293
  var rows = idx.dimension(0);
320
- var columns = idx.dimension(1); // workspace & permutation vector
294
+ var columns = idx.dimension(1);
321
295
 
296
+ // workspace & permutation vector
322
297
  var w = [];
323
- var pv = []; // loop rows in resulting matrix
298
+ var pv = [];
324
299
 
300
+ // loop rows in resulting matrix
325
301
  rows.forEach(function (i, r) {
326
302
  // update permutation vector
327
- pv[i] = r[0]; // mark i in workspace
328
-
303
+ pv[i] = r[0];
304
+ // mark i in workspace
329
305
  w[i] = true;
330
- }); // result matrix arrays
306
+ });
331
307
 
308
+ // result matrix arrays
332
309
  var values = mvalues ? [] : undefined;
333
310
  var index = [];
334
- var ptr = []; // loop columns in result matrix
311
+ var ptr = [];
335
312
 
313
+ // loop columns in result matrix
336
314
  columns.forEach(function (j) {
337
315
  // update ptr
338
- ptr.push(index.length); // loop values in column j
339
-
316
+ ptr.push(index.length);
317
+ // loop values in column j
340
318
  for (k = mptr[j], kk = mptr[j + 1]; k < kk; k++) {
341
319
  // row
342
- i = mindex[k]; // check row is in result matrix
343
-
320
+ i = mindex[k];
321
+ // check row is in result matrix
344
322
  if (w[i] === true) {
345
323
  // push index
346
- index.push(pv[i]); // check we need to process values
347
-
324
+ index.push(pv[i]);
325
+ // check we need to process values
348
326
  if (values) {
349
327
  values.push(mvalues[k]);
350
328
  }
351
329
  }
352
330
  }
353
- }); // update ptr
354
-
355
- ptr.push(index.length); // return matrix
331
+ });
332
+ // update ptr
333
+ ptr.push(index.length);
356
334
 
335
+ // return matrix
357
336
  return new SparseMatrix({
358
337
  values,
359
338
  index,
@@ -362,69 +341,64 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
362
341
  datatype: matrix._datatype
363
342
  });
364
343
  }
365
-
366
344
  function _setsubset(matrix, index, submatrix, defaultValue) {
367
345
  // check index
368
346
  if (!index || index.isIndex !== true) {
369
347
  throw new TypeError('Invalid index');
370
- } // get index size and check whether the index contains a single value
371
-
348
+ }
372
349
 
350
+ // get index size and check whether the index contains a single value
373
351
  var iSize = index.size();
374
- var isScalar = index.isScalar(); // calculate the size of the submatrix, and convert it into an Array if needed
352
+ var isScalar = index.isScalar();
375
353
 
354
+ // calculate the size of the submatrix, and convert it into an Array if needed
376
355
  var sSize;
377
-
378
356
  if (isMatrix(submatrix)) {
379
357
  // submatrix size
380
- sSize = submatrix.size(); // use array representation
381
-
358
+ sSize = submatrix.size();
359
+ // use array representation
382
360
  submatrix = submatrix.toArray();
383
361
  } else {
384
362
  // get submatrix size (array, scalar)
385
363
  sSize = arraySize(submatrix);
386
- } // check index is a scalar
387
-
364
+ }
388
365
 
366
+ // check index is a scalar
389
367
  if (isScalar) {
390
368
  // verify submatrix is a scalar
391
369
  if (sSize.length !== 0) {
392
370
  throw new TypeError('Scalar expected');
393
- } // set value
394
-
395
-
371
+ }
372
+ // set value
396
373
  matrix.set(index.min(), submatrix, defaultValue);
397
374
  } else {
398
375
  // validate dimensions, index size must be one or two dimensions
399
376
  if (iSize.length !== 1 && iSize.length !== 2) {
400
377
  throw new DimensionError(iSize.length, matrix._size.length, '<');
401
- } // check submatrix and index have the same dimensions
402
-
378
+ }
403
379
 
380
+ // check submatrix and index have the same dimensions
404
381
  if (sSize.length < iSize.length) {
405
382
  // calculate number of missing outer dimensions
406
383
  var i = 0;
407
384
  var outer = 0;
408
-
409
385
  while (iSize[i] === 1 && sSize[i] === 1) {
410
386
  i++;
411
387
  }
412
-
413
388
  while (iSize[i] === 1) {
414
389
  outer++;
415
390
  i++;
416
- } // unsqueeze both outer and inner dimensions
417
-
418
-
391
+ }
392
+ // unsqueeze both outer and inner dimensions
419
393
  submatrix = unsqueeze(submatrix, iSize.length, outer, sSize);
420
- } // check whether the size of the submatrix matches the index size
421
-
394
+ }
422
395
 
396
+ // check whether the size of the submatrix matches the index size
423
397
  if (!deepStrictEqual(iSize, sSize)) {
424
398
  throw new DimensionError(iSize, sSize, '>');
425
- } // insert the sub matrix
426
-
399
+ }
427
400
 
401
+ // insert the sub matrix
428
402
  if (iSize.length === 1) {
429
403
  // if the replacement index only has 1 dimension, go trough each one and set its value
430
404
  var range = index.dimension(0);
@@ -445,47 +419,45 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
445
419
  });
446
420
  }
447
421
  }
448
-
449
422
  return matrix;
450
423
  }
424
+
451
425
  /**
452
426
  * Get a single element from the matrix.
453
427
  * @memberof SparseMatrix
454
428
  * @param {number[]} index Zero-based index
455
429
  * @return {*} value
456
430
  */
457
-
458
-
459
431
  SparseMatrix.prototype.get = function (index) {
460
432
  if (!isArray(index)) {
461
433
  throw new TypeError('Array expected');
462
434
  }
463
-
464
435
  if (index.length !== this._size.length) {
465
436
  throw new DimensionError(index.length, this._size.length);
466
- } // check it is a pattern matrix
467
-
437
+ }
468
438
 
439
+ // check it is a pattern matrix
469
440
  if (!this._values) {
470
441
  throw new Error('Cannot invoke get on a Pattern only matrix');
471
- } // row and column
472
-
442
+ }
473
443
 
444
+ // row and column
474
445
  var i = index[0];
475
- var j = index[1]; // check i, j are valid
446
+ var j = index[1];
476
447
 
448
+ // check i, j are valid
477
449
  validateIndex(i, this._size[0]);
478
- validateIndex(j, this._size[1]); // find value index
479
-
480
- var k = _getValueIndex(i, this._ptr[j], this._ptr[j + 1], this._index); // check k is prior to next column k and it is in the correct row
481
-
450
+ validateIndex(j, this._size[1]);
482
451
 
452
+ // find value index
453
+ var k = _getValueIndex(i, this._ptr[j], this._ptr[j + 1], this._index);
454
+ // check k is prior to next column k and it is in the correct row
483
455
  if (k < this._ptr[j + 1] && this._index[k] === i) {
484
456
  return this._values[k];
485
457
  }
486
-
487
458
  return 0;
488
459
  };
460
+
489
461
  /**
490
462
  * Replace a single element in the matrix.
491
463
  * @memberof SparseMatrix
@@ -496,57 +468,54 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
496
468
  * new matrix elements will be set to zero.
497
469
  * @return {SparseMatrix} self
498
470
  */
499
-
500
-
501
471
  SparseMatrix.prototype.set = function (index, v, defaultValue) {
502
472
  if (!isArray(index)) {
503
473
  throw new TypeError('Array expected');
504
474
  }
505
-
506
475
  if (index.length !== this._size.length) {
507
476
  throw new DimensionError(index.length, this._size.length);
508
- } // check it is a pattern matrix
509
-
477
+ }
510
478
 
479
+ // check it is a pattern matrix
511
480
  if (!this._values) {
512
481
  throw new Error('Cannot invoke set on a Pattern only matrix');
513
- } // row and column
514
-
482
+ }
515
483
 
484
+ // row and column
516
485
  var i = index[0];
517
- var j = index[1]; // rows & columns
486
+ var j = index[1];
518
487
 
488
+ // rows & columns
519
489
  var rows = this._size[0];
520
- var columns = this._size[1]; // equal signature to use
521
-
522
- var eq = equalScalar; // zero value
490
+ var columns = this._size[1];
523
491
 
492
+ // equal signature to use
493
+ var eq = equalScalar;
494
+ // zero value
524
495
  var zero = 0;
525
-
526
496
  if (isString(this._datatype)) {
527
497
  // find signature that matches (datatype, datatype)
528
- eq = typed.find(equalScalar, [this._datatype, this._datatype]) || equalScalar; // convert 0 to the same datatype
529
-
498
+ eq = typed.find(equalScalar, [this._datatype, this._datatype]) || equalScalar;
499
+ // convert 0 to the same datatype
530
500
  zero = typed.convert(0, this._datatype);
531
- } // check we need to resize matrix
532
-
501
+ }
533
502
 
503
+ // check we need to resize matrix
534
504
  if (i > rows - 1 || j > columns - 1) {
535
505
  // resize matrix
536
- _resize(this, Math.max(i + 1, rows), Math.max(j + 1, columns), defaultValue); // update rows & columns
537
-
538
-
506
+ _resize(this, Math.max(i + 1, rows), Math.max(j + 1, columns), defaultValue);
507
+ // update rows & columns
539
508
  rows = this._size[0];
540
509
  columns = this._size[1];
541
- } // check i, j are valid
542
-
510
+ }
543
511
 
512
+ // check i, j are valid
544
513
  validateIndex(i, rows);
545
- validateIndex(j, columns); // find value index
546
-
547
- var k = _getValueIndex(i, this._ptr[j], this._ptr[j + 1], this._index); // check k is prior to next column k and it is in the correct row
548
-
514
+ validateIndex(j, columns);
549
515
 
516
+ // find value index
517
+ var k = _getValueIndex(i, this._ptr[j], this._ptr[j + 1], this._index);
518
+ // check k is prior to next column k and it is in the correct row
550
519
  if (k < this._ptr[j + 1] && this._index[k] === i) {
551
520
  // check value != 0
552
521
  if (!eq(v, zero)) {
@@ -560,48 +529,43 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
560
529
  // insert value @ (i, j)
561
530
  _insert(k, i, j, v, this._values, this._index, this._ptr);
562
531
  }
563
-
564
532
  return this;
565
533
  };
566
-
567
534
  function _getValueIndex(i, top, bottom, index) {
568
535
  // check row is on the bottom side
569
536
  if (bottom - top === 0) {
570
537
  return bottom;
571
- } // loop rows [top, bottom[
572
-
573
-
538
+ }
539
+ // loop rows [top, bottom[
574
540
  for (var r = top; r < bottom; r++) {
575
541
  // check we found value index
576
542
  if (index[r] === i) {
577
543
  return r;
578
544
  }
579
- } // we did not find row
580
-
581
-
545
+ }
546
+ // we did not find row
582
547
  return top;
583
548
  }
584
-
585
549
  function _remove(k, j, values, index, ptr) {
586
550
  // remove value @ k
587
551
  values.splice(k, 1);
588
- index.splice(k, 1); // update pointers
589
-
552
+ index.splice(k, 1);
553
+ // update pointers
590
554
  for (var x = j + 1; x < ptr.length; x++) {
591
555
  ptr[x]--;
592
556
  }
593
557
  }
594
-
595
558
  function _insert(k, i, j, v, values, index, ptr) {
596
559
  // insert value
597
- values.splice(k, 0, v); // update row for k
598
-
599
- index.splice(k, 0, i); // update column pointers
600
-
560
+ values.splice(k, 0, v);
561
+ // update row for k
562
+ index.splice(k, 0, i);
563
+ // update column pointers
601
564
  for (var x = j + 1; x < ptr.length; x++) {
602
565
  ptr[x]++;
603
566
  }
604
567
  }
568
+
605
569
  /**
606
570
  * Resize the matrix to the given size. Returns a copy of the matrix when
607
571
  * `copy=true`, otherwise return the matrix itself (resize in place).
@@ -617,159 +581,148 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
617
581
  *
618
582
  * @return {Matrix} The resized matrix
619
583
  */
620
-
621
-
622
584
  SparseMatrix.prototype.resize = function (size, defaultValue, copy) {
623
585
  // validate arguments
624
586
  if (!isCollection(size)) {
625
587
  throw new TypeError('Array or Matrix expected');
626
- } // SparseMatrix input is always 2d, flatten this into 1d if it's indeed a vector
627
-
588
+ }
628
589
 
590
+ // SparseMatrix input is always 2d, flatten this into 1d if it's indeed a vector
629
591
  var sizeArray = size.valueOf().map(value => {
630
592
  return Array.isArray(value) && value.length === 1 ? value[0] : value;
631
593
  });
632
-
633
594
  if (sizeArray.length !== 2) {
634
595
  throw new Error('Only two dimensions matrix are supported');
635
- } // check sizes
636
-
596
+ }
637
597
 
598
+ // check sizes
638
599
  sizeArray.forEach(function (value) {
639
600
  if (!isNumber(value) || !isInteger(value) || value < 0) {
640
601
  throw new TypeError('Invalid size, must contain positive integers ' + '(size: ' + format(sizeArray) + ')');
641
602
  }
642
- }); // matrix to resize
643
-
644
- var m = copy ? this.clone() : this; // resize matrix
603
+ });
645
604
 
605
+ // matrix to resize
606
+ var m = copy ? this.clone() : this;
607
+ // resize matrix
646
608
  return _resize(m, sizeArray[0], sizeArray[1], defaultValue);
647
609
  };
648
-
649
610
  function _resize(matrix, rows, columns, defaultValue) {
650
611
  // value to insert at the time of growing matrix
651
- var value = defaultValue || 0; // equal signature to use
652
-
653
- var eq = equalScalar; // zero value
612
+ var value = defaultValue || 0;
654
613
 
614
+ // equal signature to use
615
+ var eq = equalScalar;
616
+ // zero value
655
617
  var zero = 0;
656
-
657
618
  if (isString(matrix._datatype)) {
658
619
  // find signature that matches (datatype, datatype)
659
- eq = typed.find(equalScalar, [matrix._datatype, matrix._datatype]) || equalScalar; // convert 0 to the same datatype
660
-
661
- zero = typed.convert(0, matrix._datatype); // convert value to the same datatype
662
-
620
+ eq = typed.find(equalScalar, [matrix._datatype, matrix._datatype]) || equalScalar;
621
+ // convert 0 to the same datatype
622
+ zero = typed.convert(0, matrix._datatype);
623
+ // convert value to the same datatype
663
624
  value = typed.convert(value, matrix._datatype);
664
- } // should we insert the value?
665
-
625
+ }
666
626
 
667
- var ins = !eq(value, zero); // old columns and rows
627
+ // should we insert the value?
628
+ var ins = !eq(value, zero);
668
629
 
630
+ // old columns and rows
669
631
  var r = matrix._size[0];
670
632
  var c = matrix._size[1];
671
- var i, j, k; // check we need to increase columns
633
+ var i, j, k;
672
634
 
635
+ // check we need to increase columns
673
636
  if (columns > c) {
674
637
  // loop new columns
675
638
  for (j = c; j < columns; j++) {
676
639
  // update matrix._ptr for current column
677
- matrix._ptr[j] = matrix._values.length; // check we need to insert matrix._values
678
-
640
+ matrix._ptr[j] = matrix._values.length;
641
+ // check we need to insert matrix._values
679
642
  if (ins) {
680
643
  // loop rows
681
644
  for (i = 0; i < r; i++) {
682
645
  // add new matrix._values
683
- matrix._values.push(value); // update matrix._index
684
-
685
-
646
+ matrix._values.push(value);
647
+ // update matrix._index
686
648
  matrix._index.push(i);
687
649
  }
688
650
  }
689
- } // store number of matrix._values in matrix._ptr
690
-
691
-
651
+ }
652
+ // store number of matrix._values in matrix._ptr
692
653
  matrix._ptr[columns] = matrix._values.length;
693
654
  } else if (columns < c) {
694
655
  // truncate matrix._ptr
695
- matrix._ptr.splice(columns + 1, c - columns); // truncate matrix._values and matrix._index
696
-
697
-
656
+ matrix._ptr.splice(columns + 1, c - columns);
657
+ // truncate matrix._values and matrix._index
698
658
  matrix._values.splice(matrix._ptr[columns], matrix._values.length);
699
-
700
659
  matrix._index.splice(matrix._ptr[columns], matrix._index.length);
701
- } // update columns
702
-
703
-
704
- c = columns; // check we need to increase rows
660
+ }
661
+ // update columns
662
+ c = columns;
705
663
 
664
+ // check we need to increase rows
706
665
  if (rows > r) {
707
666
  // check we have to insert values
708
667
  if (ins) {
709
668
  // inserts
710
- var n = 0; // loop columns
711
-
669
+ var n = 0;
670
+ // loop columns
712
671
  for (j = 0; j < c; j++) {
713
672
  // update matrix._ptr for current column
714
- matrix._ptr[j] = matrix._ptr[j] + n; // where to insert matrix._values
715
-
716
- k = matrix._ptr[j + 1] + n; // pointer
717
-
718
- var p = 0; // loop new rows, initialize pointer
719
-
673
+ matrix._ptr[j] = matrix._ptr[j] + n;
674
+ // where to insert matrix._values
675
+ k = matrix._ptr[j + 1] + n;
676
+ // pointer
677
+ var p = 0;
678
+ // loop new rows, initialize pointer
720
679
  for (i = r; i < rows; i++, p++) {
721
680
  // add value
722
- matrix._values.splice(k + p, 0, value); // update matrix._index
723
-
724
-
725
- matrix._index.splice(k + p, 0, i); // increment inserts
726
-
727
-
681
+ matrix._values.splice(k + p, 0, value);
682
+ // update matrix._index
683
+ matrix._index.splice(k + p, 0, i);
684
+ // increment inserts
728
685
  n++;
729
686
  }
730
- } // store number of matrix._values in matrix._ptr
731
-
732
-
687
+ }
688
+ // store number of matrix._values in matrix._ptr
733
689
  matrix._ptr[c] = matrix._values.length;
734
690
  }
735
691
  } else if (rows < r) {
736
692
  // deletes
737
- var d = 0; // loop columns
738
-
693
+ var d = 0;
694
+ // loop columns
739
695
  for (j = 0; j < c; j++) {
740
696
  // update matrix._ptr for current column
741
- matrix._ptr[j] = matrix._ptr[j] - d; // where matrix._values start for next column
742
-
697
+ matrix._ptr[j] = matrix._ptr[j] - d;
698
+ // where matrix._values start for next column
743
699
  var k0 = matrix._ptr[j];
744
- var k1 = matrix._ptr[j + 1] - d; // loop matrix._index
745
-
700
+ var k1 = matrix._ptr[j + 1] - d;
701
+ // loop matrix._index
746
702
  for (k = k0; k < k1; k++) {
747
703
  // row
748
- i = matrix._index[k]; // check we need to delete value and matrix._index
749
-
704
+ i = matrix._index[k];
705
+ // check we need to delete value and matrix._index
750
706
  if (i > rows - 1) {
751
707
  // remove value
752
- matrix._values.splice(k, 1); // remove item from matrix._index
753
-
754
-
755
- matrix._index.splice(k, 1); // increase deletes
756
-
757
-
708
+ matrix._values.splice(k, 1);
709
+ // remove item from matrix._index
710
+ matrix._index.splice(k, 1);
711
+ // increase deletes
758
712
  d++;
759
713
  }
760
714
  }
761
- } // update matrix._ptr for current column
762
-
763
-
715
+ }
716
+ // update matrix._ptr for current column
764
717
  matrix._ptr[j] = matrix._values.length;
765
- } // update matrix._size
766
-
767
-
718
+ }
719
+ // update matrix._size
768
720
  matrix._size[0] = rows;
769
- matrix._size[1] = columns; // return matrix
770
-
721
+ matrix._size[1] = columns;
722
+ // return matrix
771
723
  return matrix;
772
724
  }
725
+
773
726
  /**
774
727
  * Reshape the matrix to the given size. Returns a copy of the matrix when
775
728
  * `copy=true`, otherwise return the matrix itself (reshape in place).
@@ -786,19 +739,16 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
786
739
  *
787
740
  * @return {Matrix} The reshaped matrix
788
741
  */
789
-
790
-
791
742
  SparseMatrix.prototype.reshape = function (sizes, copy) {
792
743
  // validate arguments
793
744
  if (!isArray(sizes)) {
794
745
  throw new TypeError('Array expected');
795
746
  }
796
-
797
747
  if (sizes.length !== 2) {
798
748
  throw new Error('Sparse matrices can only be reshaped in two dimensions');
799
- } // check sizes
800
-
749
+ }
801
750
 
751
+ // check sizes
802
752
  sizes.forEach(function (value) {
803
753
  if (!isNumber(value) || !isInteger(value) || value <= -2 || value === 0) {
804
754
  throw new TypeError('Invalid size, must contain positive integers or -1 ' + '(size: ' + format(sizes) + ')');
@@ -806,79 +756,79 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
806
756
  });
807
757
  var currentLength = this._size[0] * this._size[1];
808
758
  sizes = processSizesWildcard(sizes, currentLength);
809
- var newLength = sizes[0] * sizes[1]; // m * n must not change
759
+ var newLength = sizes[0] * sizes[1];
810
760
 
761
+ // m * n must not change
811
762
  if (currentLength !== newLength) {
812
763
  throw new Error('Reshaping sparse matrix will result in the wrong number of elements');
813
- } // matrix to reshape
814
-
764
+ }
815
765
 
816
- var m = copy ? this.clone() : this; // return unchanged if the same shape
766
+ // matrix to reshape
767
+ var m = copy ? this.clone() : this;
817
768
 
769
+ // return unchanged if the same shape
818
770
  if (this._size[0] === sizes[0] && this._size[1] === sizes[1]) {
819
771
  return m;
820
- } // Convert to COO format (generate a column index)
821
-
772
+ }
822
773
 
774
+ // Convert to COO format (generate a column index)
823
775
  var colIndex = [];
824
-
825
776
  for (var i = 0; i < m._ptr.length; i++) {
826
777
  for (var j = 0; j < m._ptr[i + 1] - m._ptr[i]; j++) {
827
778
  colIndex.push(i);
828
779
  }
829
- } // Clone the values array
830
-
831
-
832
- var values = m._values.slice(); // Clone the row index array
833
-
780
+ }
834
781
 
835
- var rowIndex = m._index.slice(); // Transform the (row, column) indices
782
+ // Clone the values array
783
+ var values = m._values.slice();
836
784
 
785
+ // Clone the row index array
786
+ var rowIndex = m._index.slice();
837
787
 
788
+ // Transform the (row, column) indices
838
789
  for (var _i = 0; _i < m._index.length; _i++) {
839
790
  var r1 = rowIndex[_i];
840
791
  var c1 = colIndex[_i];
841
792
  var flat = r1 * m._size[1] + c1;
842
793
  colIndex[_i] = flat % sizes[1];
843
794
  rowIndex[_i] = Math.floor(flat / sizes[1]);
844
- } // Now reshaping is supposed to preserve the row-major order, BUT these sparse matrices are stored
795
+ }
796
+
797
+ // Now reshaping is supposed to preserve the row-major order, BUT these sparse matrices are stored
845
798
  // in column-major order, so we have to reorder the value array now. One option is to use a multisort,
846
799
  // sorting several arrays based on some other array.
847
- // OR, we could easily just:
848
- // 1. Remove all values from the matrix
849
800
 
801
+ // OR, we could easily just:
850
802
 
803
+ // 1. Remove all values from the matrix
851
804
  m._values.length = 0;
852
805
  m._index.length = 0;
853
806
  m._ptr.length = sizes[1] + 1;
854
807
  m._size = sizes.slice();
855
-
856
808
  for (var _i2 = 0; _i2 < m._ptr.length; _i2++) {
857
809
  m._ptr[_i2] = 0;
858
- } // 2. Re-insert all elements in the proper order (simplified code from SparseMatrix.prototype.set)
859
- // This step is probably the most time-consuming
860
-
810
+ }
861
811
 
812
+ // 2. Re-insert all elements in the proper order (simplified code from SparseMatrix.prototype.set)
813
+ // This step is probably the most time-consuming
862
814
  for (var h = 0; h < values.length; h++) {
863
815
  var _i3 = rowIndex[h];
864
816
  var _j = colIndex[h];
865
817
  var v = values[h];
866
-
867
818
  var k = _getValueIndex(_i3, m._ptr[_j], m._ptr[_j + 1], m._index);
868
-
869
819
  _insert(k, _i3, _j, v, m._values, m._index, m._ptr);
870
- } // The value indices are inserted out of order, but apparently that's... still OK?
820
+ }
871
821
 
822
+ // The value indices are inserted out of order, but apparently that's... still OK?
872
823
 
873
824
  return m;
874
825
  };
826
+
875
827
  /**
876
828
  * Create a clone of the matrix
877
829
  * @memberof SparseMatrix
878
830
  * @return {SparseMatrix} clone
879
831
  */
880
-
881
-
882
832
  SparseMatrix.prototype.clone = function () {
883
833
  var m = new SparseMatrix({
884
834
  values: this._values ? clone(this._values) : undefined,
@@ -889,16 +839,16 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
889
839
  });
890
840
  return m;
891
841
  };
842
+
892
843
  /**
893
844
  * Retrieve the size of the matrix.
894
845
  * @memberof SparseMatrix
895
846
  * @returns {number[]} size
896
847
  */
897
-
898
-
899
848
  SparseMatrix.prototype.size = function () {
900
849
  return this._size.slice(0); // copy the Array
901
850
  };
851
+
902
852
  /**
903
853
  * Create a new matrix with the results of the callback function executed on
904
854
  * each entry of the matrix.
@@ -910,82 +860,74 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
910
860
  *
911
861
  * @return {SparseMatrix} matrix
912
862
  */
913
-
914
-
915
863
  SparseMatrix.prototype.map = function (callback, skipZeros) {
916
864
  // check it is a pattern matrix
917
865
  if (!this._values) {
918
866
  throw new Error('Cannot invoke map on a Pattern only matrix');
919
- } // matrix instance
920
-
921
-
922
- var me = this; // rows and columns
923
-
867
+ }
868
+ // matrix instance
869
+ var me = this;
870
+ // rows and columns
924
871
  var rows = this._size[0];
925
- var columns = this._size[1]; // invoke callback
926
-
872
+ var columns = this._size[1];
873
+ // invoke callback
927
874
  var args = maxArgumentCount(callback);
928
-
929
875
  var invoke = function invoke(v, i, j) {
930
876
  // invoke callback
931
877
  if (args === 1) return callback(v);
932
878
  if (args === 2) return callback(v, [i, j]);
933
879
  return callback(v, [i, j], me);
934
- }; // invoke _map
935
-
936
-
880
+ };
881
+ // invoke _map
937
882
  return _map(this, 0, rows - 1, 0, columns - 1, invoke, skipZeros);
938
883
  };
884
+
939
885
  /**
940
886
  * Create a new matrix with the results of the callback function executed on the interval
941
887
  * [minRow..maxRow, minColumn..maxColumn].
942
888
  */
943
-
944
-
945
889
  function _map(matrix, minRow, maxRow, minColumn, maxColumn, callback, skipZeros) {
946
890
  // result arrays
947
891
  var values = [];
948
892
  var index = [];
949
- var ptr = []; // equal signature to use
950
-
951
- var eq = equalScalar; // zero value
893
+ var ptr = [];
952
894
 
895
+ // equal signature to use
896
+ var eq = equalScalar;
897
+ // zero value
953
898
  var zero = 0;
954
-
955
899
  if (isString(matrix._datatype)) {
956
900
  // find signature that matches (datatype, datatype)
957
- eq = typed.find(equalScalar, [matrix._datatype, matrix._datatype]) || equalScalar; // convert 0 to the same datatype
958
-
901
+ eq = typed.find(equalScalar, [matrix._datatype, matrix._datatype]) || equalScalar;
902
+ // convert 0 to the same datatype
959
903
  zero = typed.convert(0, matrix._datatype);
960
- } // invoke callback
961
-
904
+ }
962
905
 
906
+ // invoke callback
963
907
  var invoke = function invoke(v, x, y) {
964
908
  // invoke callback
965
- v = callback(v, x, y); // check value != 0
966
-
909
+ v = callback(v, x, y);
910
+ // check value != 0
967
911
  if (!eq(v, zero)) {
968
912
  // store value
969
- values.push(v); // index
970
-
913
+ values.push(v);
914
+ // index
971
915
  index.push(x);
972
916
  }
973
- }; // loop columns
974
-
975
-
917
+ };
918
+ // loop columns
976
919
  for (var j = minColumn; j <= maxColumn; j++) {
977
920
  // store pointer to values index
978
- ptr.push(values.length); // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
979
-
921
+ ptr.push(values.length);
922
+ // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
980
923
  var k0 = matrix._ptr[j];
981
924
  var k1 = matrix._ptr[j + 1];
982
-
983
925
  if (skipZeros) {
984
926
  // loop k within [k0, k1[
985
927
  for (var k = k0; k < k1; k++) {
986
928
  // row index
987
- var i = matrix._index[k]; // check i is in range
988
-
929
+ var i = matrix._index[k];
930
+ // check i is in range
989
931
  if (i >= minRow && i <= maxRow) {
990
932
  // value @ k
991
933
  invoke(matrix._values[k], i - minRow, j - minColumn);
@@ -994,24 +936,23 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
994
936
  } else {
995
937
  // create a cache holding all defined values
996
938
  var _values = {};
997
-
998
939
  for (var _k = k0; _k < k1; _k++) {
999
940
  var _i4 = matrix._index[_k];
1000
941
  _values[_i4] = matrix._values[_k];
1001
- } // loop over all rows (indexes can be unordered so we can't use that),
1002
- // and either read the value or zero
1003
-
942
+ }
1004
943
 
944
+ // loop over all rows (indexes can be unordered so we can't use that),
945
+ // and either read the value or zero
1005
946
  for (var _i5 = minRow; _i5 <= maxRow; _i5++) {
1006
947
  var value = _i5 in _values ? _values[_i5] : 0;
1007
948
  invoke(value, _i5 - minRow, j - minColumn);
1008
949
  }
1009
950
  }
1010
- } // store number of values in ptr
1011
-
1012
-
1013
- ptr.push(values.length); // return sparse matrix
951
+ }
1014
952
 
953
+ // store number of values in ptr
954
+ ptr.push(values.length);
955
+ // return sparse matrix
1015
956
  return new SparseMatrix({
1016
957
  values,
1017
958
  index,
@@ -1019,6 +960,7 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1019
960
  size: [maxRow - minRow + 1, maxColumn - minColumn + 1]
1020
961
  });
1021
962
  }
963
+
1022
964
  /**
1023
965
  * Execute a callback function on each entry of the matrix.
1024
966
  * @memberof SparseMatrix
@@ -1029,44 +971,40 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1029
971
  * If false, the indices are guaranteed to be in order,
1030
972
  * if true, the indices can be unordered.
1031
973
  */
1032
-
1033
-
1034
974
  SparseMatrix.prototype.forEach = function (callback, skipZeros) {
1035
975
  // check it is a pattern matrix
1036
976
  if (!this._values) {
1037
977
  throw new Error('Cannot invoke forEach on a Pattern only matrix');
1038
- } // matrix instance
1039
-
1040
-
1041
- var me = this; // rows and columns
1042
-
978
+ }
979
+ // matrix instance
980
+ var me = this;
981
+ // rows and columns
1043
982
  var rows = this._size[0];
1044
- var columns = this._size[1]; // loop columns
1045
-
983
+ var columns = this._size[1];
984
+ // loop columns
1046
985
  for (var j = 0; j < columns; j++) {
1047
986
  // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
1048
987
  var k0 = this._ptr[j];
1049
988
  var k1 = this._ptr[j + 1];
1050
-
1051
989
  if (skipZeros) {
1052
990
  // loop k within [k0, k1[
1053
991
  for (var k = k0; k < k1; k++) {
1054
992
  // row index
1055
- var i = this._index[k]; // value @ k
993
+ var i = this._index[k];
1056
994
 
995
+ // value @ k
1057
996
  callback(this._values[k], [i, j], me);
1058
997
  }
1059
998
  } else {
1060
999
  // create a cache holding all defined values
1061
1000
  var values = {};
1062
-
1063
1001
  for (var _k2 = k0; _k2 < k1; _k2++) {
1064
1002
  var _i6 = this._index[_k2];
1065
1003
  values[_i6] = this._values[_k2];
1066
- } // loop over all rows (indexes can be unordered so we can't use that),
1067
- // and either read the value or zero
1068
-
1004
+ }
1069
1005
 
1006
+ // loop over all rows (indexes can be unordered so we can't use that),
1007
+ // and either read the value or zero
1070
1008
  for (var _i7 = 0; _i7 < rows; _i7++) {
1071
1009
  var value = _i7 in values ? values[_i7] : 0;
1072
1010
  callback(value, [_i7, j], me);
@@ -1074,23 +1012,19 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1074
1012
  }
1075
1013
  }
1076
1014
  };
1015
+
1077
1016
  /**
1078
1017
  * Iterate over the matrix elements, skipping zeros
1079
1018
  * @return {Iterable<{ value, index: number[] }>}
1080
1019
  */
1081
-
1082
-
1083
1020
  SparseMatrix.prototype[Symbol.iterator] = function* () {
1084
1021
  if (!this._values) {
1085
1022
  throw new Error('Cannot iterate a Pattern only matrix');
1086
1023
  }
1087
-
1088
1024
  var columns = this._size[1];
1089
-
1090
1025
  for (var j = 0; j < columns; j++) {
1091
1026
  var k0 = this._ptr[j];
1092
1027
  var k1 = this._ptr[j + 1];
1093
-
1094
1028
  for (var k = k0; k < k1; k++) {
1095
1029
  // row index
1096
1030
  var i = this._index[k];
@@ -1101,60 +1035,56 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1101
1035
  }
1102
1036
  }
1103
1037
  };
1038
+
1104
1039
  /**
1105
1040
  * Create an Array with a copy of the data of the SparseMatrix
1106
1041
  * @memberof SparseMatrix
1107
1042
  * @returns {Array} array
1108
1043
  */
1109
-
1110
-
1111
1044
  SparseMatrix.prototype.toArray = function () {
1112
1045
  return _toArray(this._values, this._index, this._ptr, this._size, true);
1113
1046
  };
1047
+
1114
1048
  /**
1115
1049
  * Get the primitive value of the SparseMatrix: a two dimensions array
1116
1050
  * @memberof SparseMatrix
1117
1051
  * @returns {Array} array
1118
1052
  */
1119
-
1120
-
1121
1053
  SparseMatrix.prototype.valueOf = function () {
1122
1054
  return _toArray(this._values, this._index, this._ptr, this._size, false);
1123
1055
  };
1124
-
1125
1056
  function _toArray(values, index, ptr, size, copy) {
1126
1057
  // rows and columns
1127
1058
  var rows = size[0];
1128
- var columns = size[1]; // result
1129
-
1130
- var a = []; // vars
1131
-
1132
- var i, j; // initialize array
1133
-
1059
+ var columns = size[1];
1060
+ // result
1061
+ var a = [];
1062
+ // vars
1063
+ var i, j;
1064
+ // initialize array
1134
1065
  for (i = 0; i < rows; i++) {
1135
1066
  a[i] = [];
1136
-
1137
1067
  for (j = 0; j < columns; j++) {
1138
1068
  a[i][j] = 0;
1139
1069
  }
1140
- } // loop columns
1141
-
1070
+ }
1142
1071
 
1072
+ // loop columns
1143
1073
  for (j = 0; j < columns; j++) {
1144
1074
  // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
1145
1075
  var k0 = ptr[j];
1146
- var k1 = ptr[j + 1]; // loop k within [k0, k1[
1147
-
1076
+ var k1 = ptr[j + 1];
1077
+ // loop k within [k0, k1[
1148
1078
  for (var k = k0; k < k1; k++) {
1149
1079
  // row index
1150
- i = index[k]; // set value (use one for pattern matrix)
1151
-
1080
+ i = index[k];
1081
+ // set value (use one for pattern matrix)
1152
1082
  a[i][j] = values ? copy ? clone(values[k]) : values[k] : 1;
1153
1083
  }
1154
1084
  }
1155
-
1156
1085
  return a;
1157
1086
  }
1087
+
1158
1088
  /**
1159
1089
  * Get a string representation of the matrix, with optional formatting options.
1160
1090
  * @memberof SparseMatrix
@@ -1164,49 +1094,44 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1164
1094
  * options.
1165
1095
  * @returns {string} str
1166
1096
  */
1167
-
1168
-
1169
1097
  SparseMatrix.prototype.format = function (options) {
1170
1098
  // rows and columns
1171
1099
  var rows = this._size[0];
1172
- var columns = this._size[1]; // density
1173
-
1174
- var density = this.density(); // rows & columns
1175
-
1176
- var str = 'Sparse Matrix [' + format(rows, options) + ' x ' + format(columns, options) + '] density: ' + format(density, options) + '\n'; // loop columns
1177
-
1100
+ var columns = this._size[1];
1101
+ // density
1102
+ var density = this.density();
1103
+ // rows & columns
1104
+ var str = 'Sparse Matrix [' + format(rows, options) + ' x ' + format(columns, options) + '] density: ' + format(density, options) + '\n';
1105
+ // loop columns
1178
1106
  for (var j = 0; j < columns; j++) {
1179
1107
  // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
1180
1108
  var k0 = this._ptr[j];
1181
- var k1 = this._ptr[j + 1]; // loop k within [k0, k1[
1182
-
1109
+ var k1 = this._ptr[j + 1];
1110
+ // loop k within [k0, k1[
1183
1111
  for (var k = k0; k < k1; k++) {
1184
1112
  // row index
1185
- var i = this._index[k]; // append value
1186
-
1113
+ var i = this._index[k];
1114
+ // append value
1187
1115
  str += '\n (' + format(i, options) + ', ' + format(j, options) + ') ==> ' + (this._values ? format(this._values[k], options) : 'X');
1188
1116
  }
1189
1117
  }
1190
-
1191
1118
  return str;
1192
1119
  };
1120
+
1193
1121
  /**
1194
1122
  * Get a string representation of the matrix
1195
1123
  * @memberof SparseMatrix
1196
1124
  * @returns {string} str
1197
1125
  */
1198
-
1199
-
1200
1126
  SparseMatrix.prototype.toString = function () {
1201
1127
  return format(this.toArray());
1202
1128
  };
1129
+
1203
1130
  /**
1204
1131
  * Get a JSON representation of the matrix
1205
1132
  * @memberof SparseMatrix
1206
1133
  * @returns {Object}
1207
1134
  */
1208
-
1209
-
1210
1135
  SparseMatrix.prototype.toJSON = function () {
1211
1136
  return {
1212
1137
  mathjs: 'SparseMatrix',
@@ -1217,6 +1142,7 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1217
1142
  datatype: this._datatype
1218
1143
  };
1219
1144
  };
1145
+
1220
1146
  /**
1221
1147
  * Get the kth Matrix diagonal.
1222
1148
  *
@@ -1225,17 +1151,14 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1225
1151
  *
1226
1152
  * @returns {Matrix} The matrix vector with the diagonal values.
1227
1153
  */
1228
-
1229
-
1230
1154
  SparseMatrix.prototype.diagonal = function (k) {
1231
1155
  // validate k if any
1232
1156
  if (k) {
1233
1157
  // convert BigNumber to a number
1234
1158
  if (isBigNumber(k)) {
1235
1159
  k = k.toNumber();
1236
- } // is must be an integer
1237
-
1238
-
1160
+ }
1161
+ // is must be an integer
1239
1162
  if (!isNumber(k) || !isInteger(k)) {
1240
1163
  throw new TypeError('The parameter k must be an integer number');
1241
1164
  }
@@ -1243,44 +1166,45 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1243
1166
  // default value
1244
1167
  k = 0;
1245
1168
  }
1246
-
1247
1169
  var kSuper = k > 0 ? k : 0;
1248
- var kSub = k < 0 ? -k : 0; // rows & columns
1170
+ var kSub = k < 0 ? -k : 0;
1249
1171
 
1172
+ // rows & columns
1250
1173
  var rows = this._size[0];
1251
- var columns = this._size[1]; // number diagonal values
1174
+ var columns = this._size[1];
1252
1175
 
1253
- var n = Math.min(rows - kSub, columns - kSuper); // diagonal arrays
1176
+ // number diagonal values
1177
+ var n = Math.min(rows - kSub, columns - kSuper);
1254
1178
 
1179
+ // diagonal arrays
1255
1180
  var values = [];
1256
1181
  var index = [];
1257
- var ptr = []; // initial ptr value
1258
-
1259
- ptr[0] = 0; // loop columns
1260
-
1182
+ var ptr = [];
1183
+ // initial ptr value
1184
+ ptr[0] = 0;
1185
+ // loop columns
1261
1186
  for (var j = kSuper; j < columns && values.length < n; j++) {
1262
1187
  // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
1263
1188
  var k0 = this._ptr[j];
1264
- var k1 = this._ptr[j + 1]; // loop x within [k0, k1[
1265
-
1189
+ var k1 = this._ptr[j + 1];
1190
+ // loop x within [k0, k1[
1266
1191
  for (var x = k0; x < k1; x++) {
1267
1192
  // row index
1268
- var i = this._index[x]; // check row
1269
-
1193
+ var i = this._index[x];
1194
+ // check row
1270
1195
  if (i === j - kSuper + kSub) {
1271
1196
  // value on this column
1272
- values.push(this._values[x]); // store row
1273
-
1274
- index[values.length - 1] = i - kSub; // exit loop
1275
-
1197
+ values.push(this._values[x]);
1198
+ // store row
1199
+ index[values.length - 1] = i - kSub;
1200
+ // exit loop
1276
1201
  break;
1277
1202
  }
1278
1203
  }
1279
- } // close ptr
1280
-
1281
-
1282
- ptr.push(values.length); // return matrix
1283
-
1204
+ }
1205
+ // close ptr
1206
+ ptr.push(values.length);
1207
+ // return matrix
1284
1208
  return new SparseMatrix({
1285
1209
  values,
1286
1210
  index,
@@ -1288,6 +1212,7 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1288
1212
  size: [n, 1]
1289
1213
  });
1290
1214
  };
1215
+
1291
1216
  /**
1292
1217
  * Generate a matrix from a JSON object
1293
1218
  * @memberof SparseMatrix
@@ -1296,11 +1221,10 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1296
1221
  * where mathjs is optional
1297
1222
  * @returns {SparseMatrix}
1298
1223
  */
1299
-
1300
-
1301
1224
  SparseMatrix.fromJSON = function (json) {
1302
1225
  return new SparseMatrix(json);
1303
1226
  };
1227
+
1304
1228
  /**
1305
1229
  * Create a diagonal matrix.
1306
1230
  *
@@ -1313,93 +1237,87 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1313
1237
  *
1314
1238
  * @returns {SparseMatrix}
1315
1239
  */
1316
-
1317
-
1318
1240
  SparseMatrix.diagonal = function (size, value, k, defaultValue, datatype) {
1319
1241
  if (!isArray(size)) {
1320
1242
  throw new TypeError('Array expected, size parameter');
1321
1243
  }
1322
-
1323
1244
  if (size.length !== 2) {
1324
1245
  throw new Error('Only two dimensions matrix are supported');
1325
- } // map size & validate
1326
-
1246
+ }
1327
1247
 
1248
+ // map size & validate
1328
1249
  size = size.map(function (s) {
1329
1250
  // check it is a big number
1330
1251
  if (isBigNumber(s)) {
1331
1252
  // convert it
1332
1253
  s = s.toNumber();
1333
- } // validate arguments
1334
-
1335
-
1254
+ }
1255
+ // validate arguments
1336
1256
  if (!isNumber(s) || !isInteger(s) || s < 1) {
1337
1257
  throw new Error('Size values must be positive integers');
1338
1258
  }
1339
-
1340
1259
  return s;
1341
- }); // validate k if any
1260
+ });
1342
1261
 
1262
+ // validate k if any
1343
1263
  if (k) {
1344
1264
  // convert BigNumber to a number
1345
1265
  if (isBigNumber(k)) {
1346
1266
  k = k.toNumber();
1347
- } // is must be an integer
1348
-
1349
-
1267
+ }
1268
+ // is must be an integer
1350
1269
  if (!isNumber(k) || !isInteger(k)) {
1351
1270
  throw new TypeError('The parameter k must be an integer number');
1352
1271
  }
1353
1272
  } else {
1354
1273
  // default value
1355
1274
  k = 0;
1356
- } // equal signature to use
1357
-
1358
-
1359
- var eq = equalScalar; // zero value
1275
+ }
1360
1276
 
1277
+ // equal signature to use
1278
+ var eq = equalScalar;
1279
+ // zero value
1361
1280
  var zero = 0;
1362
-
1363
1281
  if (isString(datatype)) {
1364
1282
  // find signature that matches (datatype, datatype)
1365
- eq = typed.find(equalScalar, [datatype, datatype]) || equalScalar; // convert 0 to the same datatype
1366
-
1283
+ eq = typed.find(equalScalar, [datatype, datatype]) || equalScalar;
1284
+ // convert 0 to the same datatype
1367
1285
  zero = typed.convert(0, datatype);
1368
1286
  }
1369
-
1370
1287
  var kSuper = k > 0 ? k : 0;
1371
- var kSub = k < 0 ? -k : 0; // rows and columns
1288
+ var kSub = k < 0 ? -k : 0;
1372
1289
 
1290
+ // rows and columns
1373
1291
  var rows = size[0];
1374
- var columns = size[1]; // number of non-zero items
1292
+ var columns = size[1];
1375
1293
 
1376
- var n = Math.min(rows - kSub, columns - kSuper); // value extraction function
1377
-
1378
- var _value; // check value
1294
+ // number of non-zero items
1295
+ var n = Math.min(rows - kSub, columns - kSuper);
1379
1296
 
1297
+ // value extraction function
1298
+ var _value;
1380
1299
 
1300
+ // check value
1381
1301
  if (isArray(value)) {
1382
1302
  // validate array
1383
1303
  if (value.length !== n) {
1384
1304
  // number of values in array must be n
1385
1305
  throw new Error('Invalid value array length');
1386
- } // define function
1387
-
1388
-
1306
+ }
1307
+ // define function
1389
1308
  _value = function _value(i) {
1390
1309
  // return value @ i
1391
1310
  return value[i];
1392
1311
  };
1393
1312
  } else if (isMatrix(value)) {
1394
1313
  // matrix size
1395
- var ms = value.size(); // validate matrix
1396
-
1314
+ var ms = value.size();
1315
+ // validate matrix
1397
1316
  if (ms.length !== 1 || ms[0] !== n) {
1398
1317
  // number of values in array must be n
1399
1318
  throw new Error('Invalid matrix length');
1400
- } // define function
1401
-
1402
-
1319
+ }
1320
+ // define function
1403
1321
  _value = function _value(i) {
1404
1322
  // return value @ i
1405
1323
  return value.get([i]);
@@ -1410,36 +1328,35 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1410
1328
  // return value
1411
1329
  return value;
1412
1330
  };
1413
- } // create arrays
1414
-
1331
+ }
1415
1332
 
1333
+ // create arrays
1416
1334
  var values = [];
1417
1335
  var index = [];
1418
- var ptr = []; // loop items
1336
+ var ptr = [];
1419
1337
 
1338
+ // loop items
1420
1339
  for (var j = 0; j < columns; j++) {
1421
1340
  // number of rows with value
1422
- ptr.push(values.length); // diagonal index
1423
-
1424
- var i = j - kSuper; // check we need to set diagonal value
1425
-
1341
+ ptr.push(values.length);
1342
+ // diagonal index
1343
+ var i = j - kSuper;
1344
+ // check we need to set diagonal value
1426
1345
  if (i >= 0 && i < n) {
1427
1346
  // get value @ i
1428
- var v = _value(i); // check for zero
1429
-
1430
-
1347
+ var v = _value(i);
1348
+ // check for zero
1431
1349
  if (!eq(v, zero)) {
1432
1350
  // column
1433
- index.push(i + kSub); // add value
1434
-
1351
+ index.push(i + kSub);
1352
+ // add value
1435
1353
  values.push(v);
1436
1354
  }
1437
1355
  }
1438
- } // last value should be number of values
1439
-
1440
-
1441
- ptr.push(values.length); // create SparseMatrix
1442
-
1356
+ }
1357
+ // last value should be number of values
1358
+ ptr.push(values.length);
1359
+ // create SparseMatrix
1443
1360
  return new SparseMatrix({
1444
1361
  values,
1445
1362
  index,
@@ -1447,6 +1364,7 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1447
1364
  size: [rows, columns]
1448
1365
  });
1449
1366
  };
1367
+
1450
1368
  /**
1451
1369
  * Swap rows i and j in Matrix.
1452
1370
  *
@@ -1456,28 +1374,25 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1456
1374
  *
1457
1375
  * @return {Matrix} The matrix reference
1458
1376
  */
1459
-
1460
-
1461
1377
  SparseMatrix.prototype.swapRows = function (i, j) {
1462
1378
  // check index
1463
1379
  if (!isNumber(i) || !isInteger(i) || !isNumber(j) || !isInteger(j)) {
1464
1380
  throw new Error('Row index must be positive integers');
1465
- } // check dimensions
1466
-
1467
-
1381
+ }
1382
+ // check dimensions
1468
1383
  if (this._size.length !== 2) {
1469
1384
  throw new Error('Only two dimensional matrix is supported');
1470
- } // validate index
1471
-
1472
-
1385
+ }
1386
+ // validate index
1473
1387
  validateIndex(i, this._size[0]);
1474
- validateIndex(j, this._size[0]); // swap rows
1475
-
1476
- SparseMatrix._swapRows(i, j, this._size[1], this._values, this._index, this._ptr); // return current instance
1477
-
1388
+ validateIndex(j, this._size[0]);
1478
1389
 
1390
+ // swap rows
1391
+ SparseMatrix._swapRows(i, j, this._size[1], this._values, this._index, this._ptr);
1392
+ // return current instance
1479
1393
  return this;
1480
1394
  };
1395
+
1481
1396
  /**
1482
1397
  * Loop rows with data in column j.
1483
1398
  *
@@ -1487,18 +1402,17 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1487
1402
  * @param {Array} ptr Matrix column pointers
1488
1403
  * @param {Function} callback Callback function invoked for every row in column j
1489
1404
  */
1490
-
1491
-
1492
1405
  SparseMatrix._forEachRow = function (j, values, index, ptr, callback) {
1493
1406
  // indeces for column j
1494
1407
  var k0 = ptr[j];
1495
- var k1 = ptr[j + 1]; // loop
1496
-
1408
+ var k1 = ptr[j + 1];
1409
+ // loop
1497
1410
  for (var k = k0; k < k1; k++) {
1498
1411
  // invoke callback
1499
1412
  callback(index[k], values[k]);
1500
1413
  }
1501
1414
  };
1415
+
1502
1416
  /**
1503
1417
  * Swap rows x and y in Sparse Matrix data structures.
1504
1418
  *
@@ -1509,76 +1423,61 @@ export var createSparseMatrixClass = /* #__PURE__ */factory(name, dependencies,
1509
1423
  * @param {Array} index Matrix row indeces
1510
1424
  * @param {Array} ptr Matrix column pointers
1511
1425
  */
1512
-
1513
-
1514
1426
  SparseMatrix._swapRows = function (x, y, columns, values, index, ptr) {
1515
1427
  // loop columns
1516
1428
  for (var j = 0; j < columns; j++) {
1517
1429
  // k0 <= k < k1 where k0 = _ptr[j] && k1 = _ptr[j+1]
1518
1430
  var k0 = ptr[j];
1519
- var k1 = ptr[j + 1]; // find value index @ x
1520
-
1521
- var kx = _getValueIndex(x, k0, k1, index); // find value index @ x
1522
-
1523
-
1524
- var ky = _getValueIndex(y, k0, k1, index); // check both rows exist in matrix
1525
-
1526
-
1431
+ var k1 = ptr[j + 1];
1432
+ // find value index @ x
1433
+ var kx = _getValueIndex(x, k0, k1, index);
1434
+ // find value index @ x
1435
+ var ky = _getValueIndex(y, k0, k1, index);
1436
+ // check both rows exist in matrix
1527
1437
  if (kx < k1 && ky < k1 && index[kx] === x && index[ky] === y) {
1528
1438
  // swap values (check for pattern matrix)
1529
1439
  if (values) {
1530
1440
  var v = values[kx];
1531
1441
  values[kx] = values[ky];
1532
1442
  values[ky] = v;
1533
- } // next column
1534
-
1535
-
1443
+ }
1444
+ // next column
1536
1445
  continue;
1537
- } // check x row exist & no y row
1538
-
1539
-
1446
+ }
1447
+ // check x row exist & no y row
1540
1448
  if (kx < k1 && index[kx] === x && (ky >= k1 || index[ky] !== y)) {
1541
1449
  // value @ x (check for pattern matrix)
1542
- var vx = values ? values[kx] : undefined; // insert value @ y
1543
-
1450
+ var vx = values ? values[kx] : undefined;
1451
+ // insert value @ y
1544
1452
  index.splice(ky, 0, y);
1545
-
1546
1453
  if (values) {
1547
1454
  values.splice(ky, 0, vx);
1548
- } // remove value @ x (adjust array index if needed)
1549
-
1550
-
1455
+ }
1456
+ // remove value @ x (adjust array index if needed)
1551
1457
  index.splice(ky <= kx ? kx + 1 : kx, 1);
1552
-
1553
1458
  if (values) {
1554
1459
  values.splice(ky <= kx ? kx + 1 : kx, 1);
1555
- } // next column
1556
-
1557
-
1460
+ }
1461
+ // next column
1558
1462
  continue;
1559
- } // check y row exist & no x row
1560
-
1561
-
1463
+ }
1464
+ // check y row exist & no x row
1562
1465
  if (ky < k1 && index[ky] === y && (kx >= k1 || index[kx] !== x)) {
1563
1466
  // value @ y (check for pattern matrix)
1564
- var vy = values ? values[ky] : undefined; // insert value @ x
1565
-
1467
+ var vy = values ? values[ky] : undefined;
1468
+ // insert value @ x
1566
1469
  index.splice(kx, 0, x);
1567
-
1568
1470
  if (values) {
1569
1471
  values.splice(kx, 0, vy);
1570
- } // remove value @ y (adjust array index if needed)
1571
-
1572
-
1472
+ }
1473
+ // remove value @ y (adjust array index if needed)
1573
1474
  index.splice(kx <= ky ? ky + 1 : ky, 1);
1574
-
1575
1475
  if (values) {
1576
1476
  values.splice(kx <= ky ? ky + 1 : ky, 1);
1577
1477
  }
1578
1478
  }
1579
1479
  }
1580
1480
  };
1581
-
1582
1481
  return SparseMatrix;
1583
1482
  }, {
1584
1483
  isClass: true