mathjs 11.2.0 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
@@ -1,10 +1,7 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
-
4
3
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
-
6
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
-
8
5
  import { isComplex, isUnit, typeOf } from '../../utils/is.js';
9
6
  import { factory } from '../../utils/factory.js';
10
7
  import { memoize } from '../../utils/function.js';
@@ -53,24 +50,20 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
53
50
  * @param {number | BigNumber | Fraction | Complex | boolean} [value] A value like 5.2
54
51
  * @param {string | Unit} valuelessUnit A unit without value. Can have prefix, like "cm"
55
52
  */
56
-
57
53
  function Unit(value, valuelessUnit) {
58
54
  if (!(this instanceof Unit)) {
59
55
  throw new Error('Constructor must be called with the new operator');
60
56
  }
61
-
62
57
  if (!(value === null || value === undefined || isNumeric(value) || isComplex(value))) {
63
58
  throw new TypeError('First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined');
64
59
  }
65
-
66
60
  this.fixPrefix = false; // if true, function format will not search for the
67
61
  // best prefix but leave it as initially provided.
68
62
  // fixPrefix is set true by the method Unit.to
63
+
69
64
  // The justification behind this is that if the constructor is explicitly called,
70
65
  // the caller wishes the units to be returned exactly as supplied.
71
-
72
66
  this.skipAutomaticSimplification = true;
73
-
74
67
  if (valuelessUnit === undefined) {
75
68
  this.units = [];
76
69
  this.dimensions = BASE_DIMENSIONS.map(x => 0);
@@ -87,69 +80,59 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
87
80
  } else {
88
81
  throw new TypeError('Second parameter in Unit constructor must be a string or valueless Unit');
89
82
  }
90
-
91
83
  this.value = this._normalize(value);
92
84
  }
85
+
93
86
  /**
94
87
  * Attach type information
95
88
  */
96
-
97
-
98
89
  Object.defineProperty(Unit, 'name', {
99
90
  value: 'Unit'
100
91
  });
101
92
  Unit.prototype.constructor = Unit;
102
93
  Unit.prototype.type = 'Unit';
103
- Unit.prototype.isUnit = true; // private variables and functions for the Unit parser
94
+ Unit.prototype.isUnit = true;
104
95
 
96
+ // private variables and functions for the Unit parser
105
97
  var text, index, c;
106
-
107
98
  function skipWhitespace() {
108
99
  while (c === ' ' || c === '\t') {
109
100
  next();
110
101
  }
111
102
  }
112
-
113
103
  function isDigitDot(c) {
114
104
  return c >= '0' && c <= '9' || c === '.';
115
105
  }
116
-
117
106
  function isDigit(c) {
118
107
  return c >= '0' && c <= '9';
119
108
  }
120
-
121
109
  function next() {
122
110
  index++;
123
111
  c = text.charAt(index);
124
112
  }
125
-
126
113
  function revert(oldIndex) {
127
114
  index = oldIndex;
128
115
  c = text.charAt(index);
129
116
  }
130
-
131
117
  function parseNumber() {
132
118
  var number = '';
133
119
  var oldIndex = index;
134
-
135
120
  if (c === '+') {
136
121
  next();
137
122
  } else if (c === '-') {
138
123
  number += c;
139
124
  next();
140
125
  }
141
-
142
126
  if (!isDigitDot(c)) {
143
127
  // a + or - must be followed by a digit
144
128
  revert(oldIndex);
145
129
  return null;
146
- } // get number, can have a single dot
147
-
130
+ }
148
131
 
132
+ // get number, can have a single dot
149
133
  if (c === '.') {
150
134
  number += c;
151
135
  next();
152
-
153
136
  if (!isDigit(c)) {
154
137
  // this is no legal number, it is just a dot
155
138
  revert(oldIndex);
@@ -160,68 +143,62 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
160
143
  number += c;
161
144
  next();
162
145
  }
163
-
164
146
  if (c === '.') {
165
147
  number += c;
166
148
  next();
167
149
  }
168
150
  }
169
-
170
151
  while (isDigit(c)) {
171
152
  number += c;
172
153
  next();
173
- } // check for exponential notation like "2.3e-4" or "1.23e50"
174
-
154
+ }
175
155
 
156
+ // check for exponential notation like "2.3e-4" or "1.23e50"
176
157
  if (c === 'E' || c === 'e') {
177
158
  // The grammar branches here. This could either be part of an exponent or the start of a unit that begins with the letter e, such as "4exabytes"
159
+
178
160
  var tentativeNumber = '';
179
161
  var tentativeIndex = index;
180
162
  tentativeNumber += c;
181
163
  next();
182
-
183
164
  if (c === '+' || c === '-') {
184
165
  tentativeNumber += c;
185
166
  next();
186
- } // Scientific notation MUST be followed by an exponent (otherwise we assume it is not scientific notation)
187
-
167
+ }
188
168
 
169
+ // Scientific notation MUST be followed by an exponent (otherwise we assume it is not scientific notation)
189
170
  if (!isDigit(c)) {
190
171
  // The e or E must belong to something else, so return the number without the e or E.
191
172
  revert(tentativeIndex);
192
173
  return number;
193
- } // We can now safely say that this is scientific notation.
194
-
174
+ }
195
175
 
176
+ // We can now safely say that this is scientific notation.
196
177
  number = number + tentativeNumber;
197
-
198
178
  while (isDigit(c)) {
199
179
  number += c;
200
180
  next();
201
181
  }
202
182
  }
203
-
204
183
  return number;
205
184
  }
206
-
207
185
  function parseUnit() {
208
- var unitName = ''; // Alphanumeric characters only; matches [a-zA-Z0-9]
186
+ var unitName = '';
209
187
 
188
+ // Alphanumeric characters only; matches [a-zA-Z0-9]
210
189
  while (isDigit(c) || Unit.isValidAlpha(c)) {
211
190
  unitName += c;
212
191
  next();
213
- } // Must begin with [a-zA-Z]
214
-
192
+ }
215
193
 
194
+ // Must begin with [a-zA-Z]
216
195
  var firstC = unitName.charAt(0);
217
-
218
196
  if (Unit.isValidAlpha(firstC)) {
219
197
  return unitName;
220
198
  } else {
221
199
  return null;
222
200
  }
223
201
  }
224
-
225
202
  function parseCharacter(toFind) {
226
203
  if (c === toFind) {
227
204
  next();
@@ -230,6 +207,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
230
207
  return null;
231
208
  }
232
209
  }
210
+
233
211
  /**
234
212
  * Parse a string into a unit. The value of the unit is parsed as number,
235
213
  * BigNumber, or Fraction depending on the math.js config setting `number`.
@@ -240,24 +218,23 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
240
218
  * @param {string} str A string like "5.2 inch", "4e2 cm/s^2"
241
219
  * @return {Unit} unit
242
220
  */
243
-
244
-
245
221
  Unit.parse = function (str, options) {
246
222
  options = options || {};
247
223
  text = str;
248
224
  index = -1;
249
225
  c = '';
250
-
251
226
  if (typeof text !== 'string') {
252
227
  throw new TypeError('Invalid argument in Unit.parse, string expected');
253
228
  }
254
-
255
229
  var unit = new Unit();
256
230
  unit.units = [];
257
231
  var powerMultiplierCurrent = 1;
258
- var expectingUnit = false; // A unit should follow this pattern:
232
+ var expectingUnit = false;
233
+
234
+ // A unit should follow this pattern:
259
235
  // [number] ...[ [*/] unit[^number] ]
260
236
  // unit[^number] ... [ [*/] unit[^number] ]
237
+
261
238
  // Rules:
262
239
  // number is any floating point number.
263
240
  // unit is any alphanumeric string beginning with an alpha. Units with names like e3 should be avoided because they look like the exponent of a floating point number!
@@ -269,11 +246,11 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
269
246
  // 4erg
270
247
 
271
248
  next();
272
- skipWhitespace(); // Optional number at the start of the string
249
+ skipWhitespace();
273
250
 
251
+ // Optional number at the start of the string
274
252
  var valueStr = parseNumber();
275
253
  var value = null;
276
-
277
254
  if (valueStr) {
278
255
  if (config.number === 'BigNumber') {
279
256
  value = new _BigNumber(valueStr);
@@ -288,10 +265,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
288
265
  // number
289
266
  value = parseFloat(valueStr);
290
267
  }
291
-
292
268
  skipWhitespace(); // Whitespace is not required here
293
- // handle multiplication or division right after the value, like '1/s'
294
269
 
270
+ // handle multiplication or division right after the value, like '1/s'
295
271
  if (parseCharacter('*')) {
296
272
  powerMultiplierCurrent = 1;
297
273
  expectingUnit = true;
@@ -299,93 +275,83 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
299
275
  powerMultiplierCurrent = -1;
300
276
  expectingUnit = true;
301
277
  }
302
- } // Stack to keep track of powerMultipliers applied to each parentheses group
303
-
278
+ }
304
279
 
305
- var powerMultiplierStack = []; // Running product of all elements in powerMultiplierStack
280
+ // Stack to keep track of powerMultipliers applied to each parentheses group
281
+ var powerMultiplierStack = [];
306
282
 
283
+ // Running product of all elements in powerMultiplierStack
307
284
  var powerMultiplierStackProduct = 1;
308
-
309
285
  while (true) {
310
- skipWhitespace(); // Check for and consume opening parentheses, pushing powerMultiplierCurrent to the stack
311
- // A '(' will always appear directly before a unit.
286
+ skipWhitespace();
312
287
 
288
+ // Check for and consume opening parentheses, pushing powerMultiplierCurrent to the stack
289
+ // A '(' will always appear directly before a unit.
313
290
  while (c === '(') {
314
291
  powerMultiplierStack.push(powerMultiplierCurrent);
315
292
  powerMultiplierStackProduct *= powerMultiplierCurrent;
316
293
  powerMultiplierCurrent = 1;
317
294
  next();
318
295
  skipWhitespace();
319
- } // Is there something here?
320
-
296
+ }
321
297
 
298
+ // Is there something here?
322
299
  var uStr = void 0;
323
-
324
300
  if (c) {
325
301
  var oldC = c;
326
302
  uStr = parseUnit();
327
-
328
303
  if (uStr === null) {
329
304
  throw new SyntaxError('Unexpected "' + oldC + '" in "' + text + '" at index ' + index.toString());
330
305
  }
331
306
  } else {
332
307
  // End of input.
333
308
  break;
334
- } // Verify the unit exists and get the prefix (if any)
335
-
309
+ }
336
310
 
311
+ // Verify the unit exists and get the prefix (if any)
337
312
  var res = _findUnit(uStr);
338
-
339
313
  if (res === null) {
340
314
  // Unit not found.
341
315
  throw new SyntaxError('Unit "' + uStr + '" not found.');
342
316
  }
343
-
344
- var power = powerMultiplierCurrent * powerMultiplierStackProduct; // Is there a "^ number"?
345
-
317
+ var power = powerMultiplierCurrent * powerMultiplierStackProduct;
318
+ // Is there a "^ number"?
346
319
  skipWhitespace();
347
-
348
320
  if (parseCharacter('^')) {
349
321
  skipWhitespace();
350
322
  var p = parseNumber();
351
-
352
323
  if (p === null) {
353
324
  // No valid number found for the power!
354
325
  throw new SyntaxError('In "' + str + '", "^" must be followed by a floating-point number');
355
326
  }
356
-
357
327
  power *= p;
358
- } // Add the unit to the list
359
-
328
+ }
360
329
 
330
+ // Add the unit to the list
361
331
  unit.units.push({
362
332
  unit: res.unit,
363
333
  prefix: res.prefix,
364
334
  power
365
335
  });
366
-
367
336
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
368
337
  unit.dimensions[i] += (res.unit.dimensions[i] || 0) * power;
369
- } // Check for and consume closing parentheses, popping from the stack.
370
- // A ')' will always follow a unit.
371
-
338
+ }
372
339
 
340
+ // Check for and consume closing parentheses, popping from the stack.
341
+ // A ')' will always follow a unit.
373
342
  skipWhitespace();
374
-
375
343
  while (c === ')') {
376
344
  if (powerMultiplierStack.length === 0) {
377
345
  throw new SyntaxError('Unmatched ")" in "' + text + '" at index ' + index.toString());
378
346
  }
379
-
380
347
  powerMultiplierStackProduct /= powerMultiplierStack.pop();
381
348
  next();
382
349
  skipWhitespace();
383
- } // "*" and "/" should mean we are expecting something to come next.
384
- // Is there a forward slash? If so, negate powerMultiplierCurrent. The next unit or paren group is in the denominator.
385
-
350
+ }
386
351
 
352
+ // "*" and "/" should mean we are expecting something to come next.
353
+ // Is there a forward slash? If so, negate powerMultiplierCurrent. The next unit or paren group is in the denominator.
387
354
  expectingUnit = false;
388
-
389
355
  if (parseCharacter('*')) {
390
356
  // explicit multiplication
391
357
  powerMultiplierCurrent = 1;
@@ -397,9 +363,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
397
363
  } else {
398
364
  // implicit multiplication
399
365
  powerMultiplierCurrent = 1;
400
- } // Replace the unit into the auto unit system
401
-
366
+ }
402
367
 
368
+ // Replace the unit into the auto unit system
403
369
  if (res.unit.base) {
404
370
  var baseDim = res.unit.base.key;
405
371
  UNIT_SYSTEMS.auto[baseDim] = {
@@ -407,40 +373,37 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
407
373
  prefix: res.prefix
408
374
  };
409
375
  }
410
- } // Has the string been entirely consumed?
411
-
376
+ }
412
377
 
378
+ // Has the string been entirely consumed?
413
379
  skipWhitespace();
414
-
415
380
  if (c) {
416
381
  throw new SyntaxError('Could not parse: "' + str + '"');
417
- } // Is there a trailing slash?
418
-
382
+ }
419
383
 
384
+ // Is there a trailing slash?
420
385
  if (expectingUnit) {
421
386
  throw new SyntaxError('Trailing characters: "' + str + '"');
422
- } // Is the parentheses stack empty?
423
-
387
+ }
424
388
 
389
+ // Is the parentheses stack empty?
425
390
  if (powerMultiplierStack.length !== 0) {
426
391
  throw new SyntaxError('Unmatched "(" in "' + text + '"');
427
- } // Are there any units at all?
428
-
392
+ }
429
393
 
394
+ // Are there any units at all?
430
395
  if (unit.units.length === 0 && !options.allowNoUnits) {
431
396
  throw new SyntaxError('"' + str + '" contains no units');
432
397
  }
433
-
434
398
  unit.value = value !== undefined ? unit._normalize(value) : null;
435
399
  return unit;
436
400
  };
401
+
437
402
  /**
438
403
  * create a copy of this unit
439
404
  * @memberof Unit
440
405
  * @return {Unit} Returns a cloned version of the unit
441
406
  */
442
-
443
-
444
407
  Unit.prototype.clone = function () {
445
408
  var unit = new Unit();
446
409
  unit.fixPrefix = this.fixPrefix;
@@ -448,44 +411,39 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
448
411
  unit.value = clone(this.value);
449
412
  unit.dimensions = this.dimensions.slice(0);
450
413
  unit.units = [];
451
-
452
414
  for (var i = 0; i < this.units.length; i++) {
453
415
  unit.units[i] = {};
454
-
455
416
  for (var p in this.units[i]) {
456
417
  if (hasOwnProperty(this.units[i], p)) {
457
418
  unit.units[i][p] = this.units[i][p];
458
419
  }
459
420
  }
460
421
  }
461
-
462
422
  return unit;
463
423
  };
424
+
464
425
  /**
465
426
  * Return the type of the value of this unit
466
427
  *
467
428
  * @memberof Unit
468
429
  * @ return {string} type of the value of the unit
469
430
  */
470
-
471
-
472
431
  Unit.prototype.valueType = function () {
473
432
  return typeOf(this.value);
474
433
  };
434
+
475
435
  /**
476
436
  * Return whether the unit is derived (such as m/s, or cm^2, but not N)
477
437
  * @memberof Unit
478
438
  * @return {boolean} True if the unit is derived
479
439
  */
480
-
481
-
482
440
  Unit.prototype._isDerived = function () {
483
441
  if (this.units.length === 0) {
484
442
  return false;
485
443
  }
486
-
487
444
  return this.units.length > 1 || Math.abs(this.units[0].power - 1.0) > 1e-15;
488
445
  };
446
+
489
447
  /**
490
448
  * Normalize a value, based on its currently set unit(s)
491
449
  * @memberof Unit
@@ -493,27 +451,22 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
493
451
  * @return {number | BigNumber | Fraction | boolean} normalized value
494
452
  * @private
495
453
  */
496
-
497
-
498
454
  Unit.prototype._normalize = function (value) {
499
455
  if (value === null || value === undefined || this.units.length === 0) {
500
456
  return value;
501
457
  }
502
-
503
458
  var res = value;
504
-
505
459
  var convert = Unit._getNumberConverter(typeOf(value)); // convert to Fraction or BigNumber if needed
506
460
 
507
-
508
461
  for (var i = 0; i < this.units.length; i++) {
509
462
  var unitValue = convert(this.units[i].unit.value);
510
463
  var unitPrefixValue = convert(this.units[i].prefix.value);
511
464
  var unitPower = convert(this.units[i].power);
512
465
  res = multiplyScalar(res, pow(multiplyScalar(unitValue, unitPrefixValue), unitPower));
513
466
  }
514
-
515
467
  return res;
516
468
  };
469
+
517
470
  /**
518
471
  * Denormalize a value, based on its currently set unit(s)
519
472
  * @memberof Unit
@@ -522,27 +475,22 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
522
475
  * @return {number} denormalized value
523
476
  * @private
524
477
  */
525
-
526
-
527
478
  Unit.prototype._denormalize = function (value, prefixValue) {
528
479
  if (value === null || value === undefined || this.units.length === 0) {
529
480
  return value;
530
481
  }
531
-
532
482
  var res = value;
533
-
534
483
  var convert = Unit._getNumberConverter(typeOf(value)); // convert to Fraction or BigNumber if needed
535
484
 
536
-
537
485
  for (var i = 0; i < this.units.length; i++) {
538
486
  var unitValue = convert(this.units[i].unit.value);
539
487
  var unitPrefixValue = convert(this.units[i].prefix.value);
540
488
  var unitPower = convert(this.units[i].power);
541
489
  res = divideScalar(res, pow(multiplyScalar(unitValue, unitPrefixValue), unitPower));
542
490
  }
543
-
544
491
  return res;
545
492
  };
493
+
546
494
  /**
547
495
  * Find a unit from a string
548
496
  * @memberof Unit
@@ -551,8 +499,6 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
551
499
  * prefix is returned. Else, null is returned.
552
500
  * @private
553
501
  */
554
-
555
-
556
502
  var _findUnit = memoize(str => {
557
503
  // First, match units names exactly. For example, a user could define 'mm' as 10^-4 m, which is silly, but then we would want 'mm' to match the user-defined unit.
558
504
  if (hasOwnProperty(UNITS, str)) {
@@ -563,16 +509,13 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
563
509
  prefix
564
510
  };
565
511
  }
566
-
567
512
  for (var _name in UNITS) {
568
513
  if (hasOwnProperty(UNITS, _name)) {
569
514
  if (endsWith(str, _name)) {
570
515
  var _unit = UNITS[_name];
571
516
  var prefixLen = str.length - _name.length;
572
517
  var prefixName = str.substring(0, prefixLen);
573
-
574
518
  var _prefix = hasOwnProperty(_unit.prefixes, prefixName) ? _unit.prefixes[prefixName] : undefined;
575
-
576
519
  if (_prefix !== undefined) {
577
520
  // store unit, prefix, and value
578
521
  return {
@@ -583,12 +526,12 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
583
526
  }
584
527
  }
585
528
  }
586
-
587
529
  return null;
588
530
  }, {
589
531
  hasher: args => args[0],
590
532
  limit: 100
591
533
  });
534
+
592
535
  /**
593
536
  * Test if the given expression is a unit.
594
537
  * The unit can have a prefix but cannot have a value.
@@ -597,37 +540,33 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
597
540
  * The unit can have prefix, like "cm"
598
541
  * @return {boolean} true if the given string is a unit
599
542
  */
600
-
601
-
602
543
  Unit.isValuelessUnit = function (name) {
603
544
  return _findUnit(name) !== null;
604
545
  };
546
+
605
547
  /**
606
548
  * check if this unit has given base unit
607
549
  * If this unit is a derived unit, this will ALWAYS return false, since by definition base units are not derived.
608
550
  * @memberof Unit
609
551
  * @param {BASE_UNITS | string | undefined} base
610
552
  */
611
-
612
-
613
553
  Unit.prototype.hasBase = function (base) {
614
554
  if (typeof base === 'string') {
615
555
  base = BASE_UNITS[base];
616
556
  }
617
-
618
557
  if (!base) {
619
558
  return false;
620
- } // All dimensions must be the same
621
-
559
+ }
622
560
 
561
+ // All dimensions must be the same
623
562
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
624
563
  if (Math.abs((this.dimensions[i] || 0) - (base.dimensions[i] || 0)) > 1e-12) {
625
564
  return false;
626
565
  }
627
566
  }
628
-
629
567
  return true;
630
568
  };
569
+
631
570
  /**
632
571
  * Check if this unit has a base or bases equal to another base or bases
633
572
  * For derived units, the exponent on each base also must match
@@ -635,8 +574,6 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
635
574
  * @param {Unit} other
636
575
  * @return {boolean} true if equal base
637
576
  */
638
-
639
-
640
577
  Unit.prototype.equalBase = function (other) {
641
578
  // All dimensions must be the same
642
579
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
@@ -644,46 +581,41 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
644
581
  return false;
645
582
  }
646
583
  }
647
-
648
584
  return true;
649
585
  };
586
+
650
587
  /**
651
588
  * Check if this unit equals another unit
652
589
  * @memberof Unit
653
590
  * @param {Unit} other
654
591
  * @return {boolean} true if both units are equal
655
592
  */
656
-
657
-
658
593
  Unit.prototype.equals = function (other) {
659
594
  return this.equalBase(other) && equal(this.value, other.value);
660
595
  };
596
+
661
597
  /**
662
598
  * Multiply this unit with another one or with a scalar
663
599
  * @memberof Unit
664
600
  * @param {Unit} other
665
601
  * @return {Unit} product of this unit and the other unit
666
602
  */
667
-
668
-
669
603
  Unit.prototype.multiply = function (_other) {
670
604
  var res = this.clone();
671
605
  var other = isUnit(_other) ? _other : new Unit(_other);
672
-
673
606
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
674
607
  // Dimensions arrays may be of different lengths. Default to 0.
675
608
  res.dimensions[i] = (this.dimensions[i] || 0) + (other.dimensions[i] || 0);
676
- } // Append other's units list onto res
677
-
609
+ }
678
610
 
611
+ // Append other's units list onto res
679
612
  for (var _i = 0; _i < other.units.length; _i++) {
680
613
  // Make a shallow copy of every unit
681
614
  var inverted = _objectSpread({}, other.units[_i]);
682
-
683
615
  res.units.push(inverted);
684
- } // If at least one operand has a value, then the result should also have a value
685
-
616
+ }
686
617
 
618
+ // If at least one operand has a value, then the result should also have a value
687
619
  if (this.value !== null || other.value !== null) {
688
620
  var valThis = this.value === null ? this._normalize(1) : this.value;
689
621
  var valOther = other.value === null ? other._normalize(1) : other.value;
@@ -691,13 +623,12 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
691
623
  } else {
692
624
  res.value = null;
693
625
  }
694
-
695
626
  if (isUnit(_other)) {
696
627
  res.skipAutomaticSimplification = false;
697
628
  }
698
-
699
629
  return getNumericIfUnitless(res);
700
630
  };
631
+
701
632
  /**
702
633
  * Divide a number by this unit
703
634
  *
@@ -705,39 +636,34 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
705
636
  * @param {numeric} numerator
706
637
  * @param {unit} result of dividing numerator by this unit
707
638
  */
708
-
709
-
710
639
  Unit.prototype.divideInto = function (numerator) {
711
640
  return new Unit(numerator).divide(this);
712
641
  };
642
+
713
643
  /**
714
644
  * Divide this unit by another one
715
645
  * @memberof Unit
716
646
  * @param {Unit | numeric} other
717
647
  * @return {Unit} result of dividing this unit by the other unit
718
648
  */
719
-
720
-
721
649
  Unit.prototype.divide = function (_other) {
722
650
  var res = this.clone();
723
651
  var other = isUnit(_other) ? _other : new Unit(_other);
724
-
725
652
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
726
653
  // Dimensions arrays may be of different lengths. Default to 0.
727
654
  res.dimensions[i] = (this.dimensions[i] || 0) - (other.dimensions[i] || 0);
728
- } // Invert and append other's units list onto res
729
-
655
+ }
730
656
 
657
+ // Invert and append other's units list onto res
731
658
  for (var _i2 = 0; _i2 < other.units.length; _i2++) {
732
659
  // Make a shallow copy of every unit
733
660
  var inverted = _objectSpread(_objectSpread({}, other.units[_i2]), {}, {
734
661
  power: -other.units[_i2].power
735
662
  });
736
-
737
663
  res.units.push(inverted);
738
- } // If at least one operand has a value, the result should have a value
739
-
664
+ }
740
665
 
666
+ // If at least one operand has a value, the result should have a value
741
667
  if (this.value !== null || other.value !== null) {
742
668
  var valThis = this.value === null ? this._normalize(1) : this.value;
743
669
  var valOther = other.value === null ? other._normalize(1) : other.value;
@@ -745,36 +671,33 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
745
671
  } else {
746
672
  res.value = null;
747
673
  }
748
-
749
674
  if (isUnit(_other)) {
750
675
  res.skipAutomaticSimplification = false;
751
676
  }
752
-
753
677
  return getNumericIfUnitless(res);
754
678
  };
679
+
755
680
  /**
756
681
  * Calculate the power of a unit
757
682
  * @memberof Unit
758
683
  * @param {number | Fraction | BigNumber} p
759
684
  * @returns {Unit} The result: this^p
760
685
  */
761
-
762
-
763
686
  Unit.prototype.pow = function (p) {
764
687
  var res = this.clone();
765
-
766
688
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
767
689
  // Dimensions arrays may be of different lengths. Default to 0.
768
690
  res.dimensions[i] = (this.dimensions[i] || 0) * p;
769
- } // Adjust the power of each unit in the list
770
-
691
+ }
771
692
 
693
+ // Adjust the power of each unit in the list
772
694
  for (var _i3 = 0; _i3 < res.units.length; _i3++) {
773
695
  res.units[_i3].power *= p;
774
696
  }
775
-
776
697
  if (res.value !== null) {
777
- res.value = pow(res.value, p); // only allow numeric output, we don't want to return a Complex number
698
+ res.value = pow(res.value, p);
699
+
700
+ // only allow numeric output, we don't want to return a Complex number
778
701
  // if (!isNumeric(res.value)) {
779
702
  // res.value = NaN
780
703
  // }
@@ -782,17 +705,15 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
782
705
  } else {
783
706
  res.value = null;
784
707
  }
785
-
786
708
  res.skipAutomaticSimplification = false;
787
709
  return getNumericIfUnitless(res);
788
710
  };
711
+
789
712
  /**
790
713
  * Return the numeric value of this unit if it is dimensionless, has a value, and config.predictable == false; or the original unit otherwise
791
714
  * @param {Unit} unit
792
715
  * @returns {number | Fraction | BigNumber | Unit} The numeric value of the unit if conditions are met, or the original unit otherwise
793
716
  */
794
-
795
-
796
717
  function getNumericIfUnitless(unit) {
797
718
  if (unit.equalBase(BASE_UNITS.NONE) && unit.value !== null && !config.predictable) {
798
719
  return unit.value;
@@ -800,17 +721,15 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
800
721
  return unit;
801
722
  }
802
723
  }
724
+
803
725
  /**
804
726
  * Calculate the absolute value of a unit
805
727
  * @memberof Unit
806
728
  * @param {number | Fraction | BigNumber} x
807
729
  * @returns {Unit} The result: |x|, absolute value of x
808
730
  */
809
-
810
-
811
731
  Unit.prototype.abs = function () {
812
732
  var ret = this.clone();
813
-
814
733
  if (ret.value !== null) {
815
734
  if (ret._isDerived() || ret.units[0].unit.offset === 0) {
816
735
  ret.value = abs(ret.value);
@@ -819,35 +738,29 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
819
738
  // For example, abs(-283.15 degC) = -263.15 degC !!!
820
739
  // We must take the offset into consideration here
821
740
  var convert = ret._numberConverter(); // convert to Fraction or BigNumber if needed
822
-
823
-
824
741
  var unitValue = convert(ret.units[0].unit.value);
825
742
  var nominalOffset = convert(ret.units[0].unit.offset);
826
743
  var unitOffset = multiplyScalar(unitValue, nominalOffset);
827
744
  ret.value = subtract(abs(addScalar(ret.value, unitOffset)), unitOffset);
828
745
  }
829
746
  }
830
-
831
747
  for (var i in ret.units) {
832
748
  if (ret.units[i].unit.name === 'VA' || ret.units[i].unit.name === 'VAR') {
833
749
  ret.units[i].unit = UNITS.W;
834
750
  }
835
751
  }
836
-
837
752
  return ret;
838
753
  };
754
+
839
755
  /**
840
756
  * Convert the unit to a specific unit name.
841
757
  * @memberof Unit
842
758
  * @param {string | Unit} valuelessUnit A unit without value. Can have prefix, like "cm"
843
759
  * @returns {Unit} Returns a clone of the unit with a fixed prefix and unit.
844
760
  */
845
-
846
-
847
761
  Unit.prototype.to = function (valuelessUnit) {
848
762
  var value = this.value === null ? this._normalize(1) : this.value;
849
763
  var other;
850
-
851
764
  if (typeof valuelessUnit === 'string') {
852
765
  other = Unit.parse(valuelessUnit);
853
766
  } else if (isUnit(valuelessUnit)) {
@@ -855,22 +768,18 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
855
768
  } else {
856
769
  throw new Error('String or Unit expected as parameter');
857
770
  }
858
-
859
771
  if (!this.equalBase(other)) {
860
772
  throw new Error("Units do not match ('".concat(other.toString(), "' != '").concat(this.toString(), "')"));
861
773
  }
862
-
863
774
  if (other.value !== null) {
864
775
  throw new Error('Cannot convert to a unit with a value');
865
776
  }
866
-
867
777
  if (this.value === null || this._isDerived() || this.units[0].unit.offset === other.units[0].unit.offset) {
868
778
  other.value = clone(value);
869
779
  } else {
870
780
  /* Need to adjust value by difference in offset to convert */
871
781
  var convert = Unit._getNumberConverter(typeOf(value)); // convert to Fraction or BigNumber if needed
872
782
 
873
-
874
783
  var thisUnitValue = convert(this.units[0].unit.value);
875
784
  var thisNominalOffset = convert(this.units[0].unit.offset);
876
785
  var thisUnitOffset = multiplyScalar(thisUnitValue, thisNominalOffset);
@@ -879,11 +788,11 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
879
788
  var otherUnitOffset = multiplyScalar(otherUnitValue, otherNominalOffset);
880
789
  other.value = subtract(addScalar(value, thisUnitOffset), otherUnitOffset);
881
790
  }
882
-
883
791
  other.fixPrefix = true;
884
792
  other.skipAutomaticSimplification = true;
885
793
  return other;
886
794
  };
795
+
887
796
  /**
888
797
  * Return the value of the unit when represented with given valueless unit
889
798
  * @memberof Unit
@@ -891,53 +800,46 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
891
800
  * @return {number} Returns the unit value as number.
892
801
  */
893
802
  // TODO: deprecate Unit.toNumber? It's always better to use toNumeric
894
-
895
-
896
803
  Unit.prototype.toNumber = function (valuelessUnit) {
897
804
  return toNumber(this.toNumeric(valuelessUnit));
898
805
  };
806
+
899
807
  /**
900
808
  * Return the value of the unit in the original numeric type
901
809
  * @memberof Unit
902
810
  * @param {string | Unit} valuelessUnit For example 'cm' or 'inch'
903
811
  * @return {number | BigNumber | Fraction} Returns the unit value
904
812
  */
905
-
906
-
907
813
  Unit.prototype.toNumeric = function (valuelessUnit) {
908
814
  var other;
909
-
910
815
  if (valuelessUnit) {
911
816
  // Allow getting the numeric value without converting to a different unit
912
817
  other = this.to(valuelessUnit);
913
818
  } else {
914
819
  other = this.clone();
915
820
  }
916
-
917
821
  if (other._isDerived() || other.units.length === 0) {
918
822
  return other._denormalize(other.value);
919
823
  } else {
920
824
  return other._denormalize(other.value, other.units[0].prefix.value);
921
825
  }
922
826
  };
827
+
923
828
  /**
924
829
  * Get a string representation of the unit.
925
830
  * @memberof Unit
926
831
  * @return {string}
927
832
  */
928
-
929
-
930
833
  Unit.prototype.toString = function () {
931
834
  return this.format();
932
835
  };
836
+
933
837
  /**
934
838
  * Get a JSON representation of the unit
935
839
  * @memberof Unit
936
840
  * @returns {Object} Returns a JSON object structured as:
937
841
  * `{"mathjs": "Unit", "value": 2, "unit": "cm", "fixPrefix": false}`
938
842
  */
939
-
940
-
941
843
  Unit.prototype.toJSON = function () {
942
844
  return {
943
845
  mathjs: 'Unit',
@@ -946,6 +848,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
946
848
  fixPrefix: this.fixPrefix
947
849
  };
948
850
  };
851
+
949
852
  /**
950
853
  * Instantiate a Unit from a JSON object
951
854
  * @memberof Unit
@@ -953,32 +856,29 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
953
856
  * `{"mathjs": "Unit", "value": 2, "unit": "cm", "fixPrefix": false}`
954
857
  * @return {Unit}
955
858
  */
956
-
957
-
958
859
  Unit.fromJSON = function (json) {
959
860
  var unit = new Unit(json.value, json.unit);
960
861
  unit.fixPrefix = json.fixPrefix || false;
961
862
  return unit;
962
863
  };
864
+
963
865
  /**
964
866
  * Returns the string representation of the unit.
965
867
  * @memberof Unit
966
868
  * @return {string}
967
869
  */
968
-
969
-
970
870
  Unit.prototype.valueOf = Unit.prototype.toString;
871
+
971
872
  /**
972
873
  * Simplify this Unit's unit list and return a new Unit with the simplified list.
973
874
  * The returned Unit will contain a list of the "best" units for formatting.
974
875
  */
975
-
976
876
  Unit.prototype.simplify = function () {
977
877
  var ret = this.clone();
978
- var proposedUnitList = []; // Search for a matching base
878
+ var proposedUnitList = [];
979
879
 
880
+ // Search for a matching base
980
881
  var matchingBase;
981
-
982
882
  for (var key in currentUnitSystem) {
983
883
  if (hasOwnProperty(currentUnitSystem, key)) {
984
884
  if (ret.hasBase(BASE_UNITS[key])) {
@@ -987,19 +887,16 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
987
887
  }
988
888
  }
989
889
  }
990
-
991
890
  if (matchingBase === 'NONE') {
992
891
  ret.units = [];
993
892
  } else {
994
893
  var matchingUnit;
995
-
996
894
  if (matchingBase) {
997
895
  // Does the unit system have a matching unit?
998
896
  if (hasOwnProperty(currentUnitSystem, matchingBase)) {
999
897
  matchingUnit = currentUnitSystem[matchingBase];
1000
898
  }
1001
899
  }
1002
-
1003
900
  if (matchingUnit) {
1004
901
  ret.units = [{
1005
902
  unit: matchingUnit.unit,
@@ -1011,10 +908,8 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1011
908
  // 5 (kg m^2) / (s^3 mol)
1012
909
  // Build an representation from the base units of the current unit system
1013
910
  var missingBaseDim = false;
1014
-
1015
911
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
1016
912
  var baseDim = BASE_DIMENSIONS[i];
1017
-
1018
913
  if (Math.abs(ret.dimensions[i] || 0) > 1e-12) {
1019
914
  if (hasOwnProperty(currentUnitSystem, baseDim)) {
1020
915
  proposedUnitList.push({
@@ -1026,32 +921,30 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1026
921
  missingBaseDim = true;
1027
922
  }
1028
923
  }
1029
- } // Is the proposed unit list "simpler" than the existing one?
1030
-
924
+ }
1031
925
 
926
+ // Is the proposed unit list "simpler" than the existing one?
1032
927
  if (proposedUnitList.length < ret.units.length && !missingBaseDim) {
1033
928
  // Replace this unit list with the proposed list
1034
929
  ret.units = proposedUnitList;
1035
930
  }
1036
931
  }
1037
932
  }
1038
-
1039
933
  return ret;
1040
934
  };
935
+
1041
936
  /**
1042
937
  * Returns a new Unit in the SI system with the same value as this one
1043
938
  */
1044
-
1045
-
1046
939
  Unit.prototype.toSI = function () {
1047
940
  var ret = this.clone();
1048
- var proposedUnitList = []; // Multiple units or units with powers are formatted like this:
941
+ var proposedUnitList = [];
942
+
943
+ // Multiple units or units with powers are formatted like this:
1049
944
  // 5 (kg m^2) / (s^3 mol)
1050
945
  // Build an representation from the base units of the SI unit system
1051
-
1052
946
  for (var i = 0; i < BASE_DIMENSIONS.length; i++) {
1053
947
  var baseDim = BASE_DIMENSIONS[i];
1054
-
1055
948
  if (Math.abs(ret.dimensions[i] || 0) > 1e-12) {
1056
949
  if (hasOwnProperty(UNIT_SYSTEMS.si, baseDim)) {
1057
950
  proposedUnitList.push({
@@ -1063,32 +956,29 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1063
956
  throw new Error('Cannot express custom unit ' + baseDim + ' in SI units');
1064
957
  }
1065
958
  }
1066
- } // Replace this unit list with the proposed list
1067
-
959
+ }
1068
960
 
961
+ // Replace this unit list with the proposed list
1069
962
  ret.units = proposedUnitList;
1070
963
  ret.fixPrefix = true;
1071
964
  ret.skipAutomaticSimplification = true;
1072
965
  return ret;
1073
966
  };
967
+
1074
968
  /**
1075
969
  * Get a string representation of the units of this Unit, without the value. The unit list is formatted as-is without first being simplified.
1076
970
  * @memberof Unit
1077
971
  * @return {string}
1078
972
  */
1079
-
1080
-
1081
973
  Unit.prototype.formatUnits = function () {
1082
974
  var strNum = '';
1083
975
  var strDen = '';
1084
976
  var nNum = 0;
1085
977
  var nDen = 0;
1086
-
1087
978
  for (var i = 0; i < this.units.length; i++) {
1088
979
  if (this.units[i].power > 0) {
1089
980
  nNum++;
1090
981
  strNum += ' ' + this.units[i].prefix.name + this.units[i].unit.name;
1091
-
1092
982
  if (Math.abs(this.units[i].power - 1.0) > 1e-15) {
1093
983
  strNum += '^' + this.units[i].power;
1094
984
  }
@@ -1096,13 +986,11 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1096
986
  nDen++;
1097
987
  }
1098
988
  }
1099
-
1100
989
  if (nDen > 0) {
1101
990
  for (var _i4 = 0; _i4 < this.units.length; _i4++) {
1102
991
  if (this.units[_i4].power < 0) {
1103
992
  if (nNum > 0) {
1104
993
  strDen += ' ' + this.units[_i4].prefix.name + this.units[_i4].unit.name;
1105
-
1106
994
  if (Math.abs(this.units[_i4].power + 1.0) > 1e-15) {
1107
995
  strDen += '^' + -this.units[_i4].power;
1108
996
  }
@@ -1112,29 +1000,26 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1112
1000
  }
1113
1001
  }
1114
1002
  }
1115
- } // Remove leading " "
1116
-
1117
-
1003
+ }
1004
+ // Remove leading " "
1118
1005
  strNum = strNum.substr(1);
1119
- strDen = strDen.substr(1); // Add parans for better copy/paste back into evaluate, for example, or for better pretty print formatting
1006
+ strDen = strDen.substr(1);
1120
1007
 
1008
+ // Add parans for better copy/paste back into evaluate, for example, or for better pretty print formatting
1121
1009
  if (nNum > 1 && nDen > 0) {
1122
1010
  strNum = '(' + strNum + ')';
1123
1011
  }
1124
-
1125
1012
  if (nDen > 1 && nNum > 0) {
1126
1013
  strDen = '(' + strDen + ')';
1127
1014
  }
1128
-
1129
1015
  var str = strNum;
1130
-
1131
1016
  if (nNum > 0 && nDen > 0) {
1132
1017
  str += ' / ';
1133
1018
  }
1134
-
1135
1019
  str += strDen;
1136
1020
  return str;
1137
1021
  };
1022
+
1138
1023
  /**
1139
1024
  * Get a string representation of the Unit, with optional formatting options.
1140
1025
  * @memberof Unit
@@ -1144,20 +1029,17 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1144
1029
  * options.
1145
1030
  * @return {string}
1146
1031
  */
1147
-
1148
-
1149
1032
  Unit.prototype.format = function (options) {
1150
1033
  // Simplfy the unit list, unless it is valueless or was created directly in the
1151
1034
  // constructor or as the result of to or toSI
1152
- var simp = this.skipAutomaticSimplification || this.value === null ? this.clone() : this.simplify(); // Apply some custom logic for handling VA and VAR. The goal is to express the value of the unit as a real value, if possible. Otherwise, use a real-valued unit instead of a complex-valued one.
1035
+ var simp = this.skipAutomaticSimplification || this.value === null ? this.clone() : this.simplify();
1153
1036
 
1037
+ // Apply some custom logic for handling VA and VAR. The goal is to express the value of the unit as a real value, if possible. Otherwise, use a real-valued unit instead of a complex-valued one.
1154
1038
  var isImaginary = false;
1155
-
1156
1039
  if (typeof simp.value !== 'undefined' && simp.value !== null && isComplex(simp.value)) {
1157
1040
  // TODO: Make this better, for example, use relative magnitude of re and im rather than absolute
1158
1041
  isImaginary = Math.abs(simp.value.re) < 1e-14;
1159
1042
  }
1160
-
1161
1043
  for (var i in simp.units) {
1162
1044
  if (hasOwnProperty(simp.units, i)) {
1163
1045
  if (simp.units[i].unit) {
@@ -1168,10 +1050,10 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1168
1050
  }
1169
1051
  }
1170
1052
  }
1171
- } // Now apply the best prefix
1172
- // Units must have only one unit and not have the fixPrefix flag set
1173
-
1053
+ }
1174
1054
 
1055
+ // Now apply the best prefix
1056
+ // Units must have only one unit and not have the fixPrefix flag set
1175
1057
  if (simp.units.length === 1 && !simp.fixPrefix) {
1176
1058
  // Units must have integer powers, otherwise the prefix will change the
1177
1059
  // outputted value by not-an-integer-power-of-ten
@@ -1180,12 +1062,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1180
1062
  simp.units[0].prefix = simp._bestPrefix();
1181
1063
  }
1182
1064
  }
1183
-
1184
1065
  var value = simp._denormalize(simp.value);
1185
-
1186
1066
  var str = simp.value !== null ? format(value, options || {}) : '';
1187
1067
  var unitStr = simp.formatUnits();
1188
-
1189
1068
  if (simp.value && isComplex(simp.value)) {
1190
1069
  str = '(' + str + ')'; // Surround complex values with ( ) to enable better parsing
1191
1070
  }
@@ -1193,56 +1072,48 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1193
1072
  if (unitStr.length > 0 && str.length > 0) {
1194
1073
  str += ' ';
1195
1074
  }
1196
-
1197
1075
  str += unitStr;
1198
1076
  return str;
1199
1077
  };
1078
+
1200
1079
  /**
1201
1080
  * Calculate the best prefix using current value.
1202
1081
  * @memberof Unit
1203
1082
  * @returns {Object} prefix
1204
1083
  * @private
1205
1084
  */
1206
-
1207
-
1208
1085
  Unit.prototype._bestPrefix = function () {
1209
1086
  if (this.units.length !== 1) {
1210
1087
  throw new Error('Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!');
1211
1088
  }
1212
-
1213
1089
  if (Math.abs(this.units[0].power - Math.round(this.units[0].power)) >= 1e-14) {
1214
1090
  throw new Error('Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!');
1215
- } // find the best prefix value (resulting in the value of which
1091
+ }
1092
+
1093
+ // find the best prefix value (resulting in the value of which
1216
1094
  // the absolute value of the log10 is closest to zero,
1217
1095
  // though with a little offset of 1.2 for nicer values: you get a
1218
1096
  // sequence 1mm 100mm 500mm 0.6m 1m 10m 100m 500m 0.6km 1km ...
1097
+
1219
1098
  // Note: the units value can be any numeric type, but to find the best
1220
1099
  // prefix it's enough to work with limited precision of a regular number
1221
1100
  // Update: using mathjs abs since we also allow complex numbers
1222
-
1223
-
1224
1101
  var absValue = this.value !== null ? abs(this.value) : 0;
1225
1102
  var absUnitValue = abs(this.units[0].unit.value);
1226
1103
  var bestPrefix = this.units[0].prefix;
1227
-
1228
1104
  if (absValue === 0) {
1229
1105
  return bestPrefix;
1230
1106
  }
1231
-
1232
1107
  var power = this.units[0].power;
1233
1108
  var bestDiff = Math.log(absValue / Math.pow(bestPrefix.value * absUnitValue, power)) / Math.LN10 - 1.2;
1234
1109
  if (bestDiff > -2.200001 && bestDiff < 1.800001) return bestPrefix; // Allow the original prefix
1235
-
1236
1110
  bestDiff = Math.abs(bestDiff);
1237
1111
  var prefixes = this.units[0].unit.prefixes;
1238
-
1239
1112
  for (var p in prefixes) {
1240
1113
  if (hasOwnProperty(prefixes, p)) {
1241
1114
  var prefix = prefixes[p];
1242
-
1243
1115
  if (prefix.scientific) {
1244
1116
  var diff = Math.abs(Math.log(absValue / Math.pow(prefix.value * absUnitValue, power)) / Math.LN10 - 1.2);
1245
-
1246
1117
  if (diff < bestDiff || diff === bestDiff && prefix.name.length < bestPrefix.name.length) {
1247
1118
  // choose the prefix with the smallest diff, or if equal, choose the one
1248
1119
  // with the shortest name (can happen with SHORTLONG for example)
@@ -1252,9 +1123,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1252
1123
  }
1253
1124
  }
1254
1125
  }
1255
-
1256
1126
  return bestPrefix;
1257
1127
  };
1128
+
1258
1129
  /**
1259
1130
  * Returns an array of units whose sum is equal to this unit
1260
1131
  * @memberof Unit
@@ -1268,53 +1139,46 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1268
1139
  *
1269
1140
  * @return {Array} An array of units.
1270
1141
  */
1271
-
1272
-
1273
1142
  Unit.prototype.splitUnit = function (parts) {
1274
1143
  var x = this.clone();
1275
1144
  var ret = [];
1276
-
1277
1145
  for (var i = 0; i < parts.length; i++) {
1278
1146
  // Convert x to the requested unit
1279
1147
  x = x.to(parts[i]);
1280
- if (i === parts.length - 1) break; // Get the numeric value of this unit
1148
+ if (i === parts.length - 1) break;
1281
1149
 
1282
- var xNumeric = x.toNumeric(); // Check to see if xNumeric is nearly equal to an integer,
1283
- // since fix can incorrectly round down if there is round-off error
1150
+ // Get the numeric value of this unit
1151
+ var xNumeric = x.toNumeric();
1284
1152
 
1153
+ // Check to see if xNumeric is nearly equal to an integer,
1154
+ // since fix can incorrectly round down if there is round-off error
1285
1155
  var xRounded = round(xNumeric);
1286
1156
  var xFixed = void 0;
1287
1157
  var isNearlyEqual = equal(xRounded, xNumeric);
1288
-
1289
1158
  if (isNearlyEqual) {
1290
1159
  xFixed = xRounded;
1291
1160
  } else {
1292
1161
  xFixed = fix(x.toNumeric());
1293
1162
  }
1294
-
1295
1163
  var y = new Unit(xFixed, parts[i].toString());
1296
1164
  ret.push(y);
1297
1165
  x = subtract(x, y);
1298
- } // This little bit fixes a bug where the remainder should be 0 but is a little bit off.
1166
+ }
1167
+
1168
+ // This little bit fixes a bug where the remainder should be 0 but is a little bit off.
1299
1169
  // But instead of comparing x, the remainder, with zero--we will compare the sum of
1300
1170
  // all the parts so far with the original value. If they are nearly equal,
1301
1171
  // we set the remainder to 0.
1302
-
1303
-
1304
1172
  var testSum = 0;
1305
-
1306
1173
  for (var _i5 = 0; _i5 < ret.length; _i5++) {
1307
1174
  testSum = addScalar(testSum, ret[_i5].value);
1308
1175
  }
1309
-
1310
1176
  if (equal(testSum, this.value)) {
1311
1177
  x.value = 0;
1312
1178
  }
1313
-
1314
1179
  ret.push(x);
1315
1180
  return ret;
1316
1181
  };
1317
-
1318
1182
  var PREFIXES = {
1319
1183
  NONE: {
1320
1184
  '': {
@@ -1955,6 +1819,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
1955
1819
  PREFIXES.SHORTLONG = _extends({}, PREFIXES.SHORT, PREFIXES.LONG);
1956
1820
  PREFIXES.BINARY_SHORT = _extends({}, PREFIXES.BINARY_SHORT_SI, PREFIXES.BINARY_SHORT_IEC);
1957
1821
  PREFIXES.BINARY_LONG = _extends({}, PREFIXES.BINARY_LONG_SI, PREFIXES.BINARY_LONG_IEC);
1822
+
1958
1823
  /* Internally, each unit is represented by a value and a dimension array. The elements of the dimensions array have the following meaning:
1959
1824
  * Index Dimension
1960
1825
  * ----- ---------
@@ -2049,13 +1914,11 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2049
1914
  dimensions: [0, 0, 0, 0, 0, 0, 0, 0, 1]
2050
1915
  }
2051
1916
  };
2052
-
2053
1917
  for (var key in BASE_UNITS) {
2054
1918
  if (hasOwnProperty(BASE_UNITS, key)) {
2055
1919
  BASE_UNITS[key].key = key;
2056
1920
  }
2057
1921
  }
2058
-
2059
1922
  var BASE_UNIT_NONE = {};
2060
1923
  var UNIT_NONE = {
2061
1924
  name: '',
@@ -2193,6 +2056,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2193
2056
  offset: 0
2194
2057
  },
2195
2058
  // 1/1000 inch
2059
+
2196
2060
  // Surface
2197
2061
  m2: {
2198
2062
  name: 'm2',
@@ -2273,6 +2137,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2273
2137
  offset: 0
2274
2138
  },
2275
2139
  // 10000 m2
2140
+
2276
2141
  // Volume
2277
2142
  m3: {
2278
2143
  name: 'm3',
@@ -2361,6 +2226,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2361
2226
  offset: 0
2362
2227
  },
2363
2228
  // 0.05 mL = 5e-8 m3
2229
+
2364
2230
  // Liquid volume
2365
2231
  minim: {
2366
2232
  name: 'minim',
@@ -2458,6 +2324,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2458
2324
  offset: 0
2459
2325
  },
2460
2326
  // 238.4810 L
2327
+
2461
2328
  // {name: 'min', base: BASE_UNITS.VOLUME, prefixes: PREFIXES.NONE, value: 0.00000006161152, offset: 0}, // 0.06161152 mL // min is already in use as minute
2462
2329
  fldr: {
2463
2330
  name: 'fldr',
@@ -2532,6 +2399,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2532
2399
  },
2533
2400
  // 158.9873 L
2534
2401
  // {name: 'hogshead', base: BASE_UNITS.VOLUME, prefixes: PREFIXES.NONE, value: 0.2384810, offset: 0}, // 238.4810 L // TODO: hh?
2402
+
2535
2403
  // Mass
2536
2404
  g: {
2537
2405
  name: 'g',
@@ -2957,6 +2825,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
2957
2825
  // TODO: units STERADIAN
2958
2826
  // {name: 'sr', base: BASE_UNITS.STERADIAN, prefixes: PREFIXES.NONE, value: 1, offset: 0},
2959
2827
  // {name: 'steradian', base: BASE_UNITS.STERADIAN, prefixes: PREFIXES.NONE, value: 1, offset: 0},
2828
+
2960
2829
  // Force
2961
2830
  N: {
2962
2831
  name: 'N',
@@ -3212,7 +3081,6 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3212
3081
  value: 1,
3213
3082
  offset: 0
3214
3083
  },
3215
-
3216
3084
  /*
3217
3085
  * Unicode breaks in browsers if charset is not specified
3218
3086
  Ω: {
@@ -3312,8 +3180,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3312
3180
  value: 8,
3313
3181
  offset: 0
3314
3182
  }
3315
- }; // aliases (formerly plurals)
3183
+ };
3316
3184
 
3185
+ // aliases (formerly plurals)
3317
3186
  var ALIASES = {
3318
3187
  meters: 'meter',
3319
3188
  inches: 'inch',
@@ -3402,48 +3271,39 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3402
3271
  bit: 'bits',
3403
3272
  byte: 'bytes'
3404
3273
  };
3274
+
3405
3275
  /**
3406
3276
  * Calculate the values for the angle units.
3407
3277
  * Value is calculated as number or BigNumber depending on the configuration
3408
3278
  * @param {{number: 'number' | 'BigNumber'}} config
3409
3279
  */
3410
-
3411
3280
  function calculateAngleValues(config) {
3412
3281
  if (config.number === 'BigNumber') {
3413
3282
  var pi = createPi(_BigNumber);
3414
3283
  UNITS.rad.value = new _BigNumber(1);
3415
3284
  UNITS.deg.value = pi.div(180); // 2 * pi / 360
3416
-
3417
3285
  UNITS.grad.value = pi.div(200); // 2 * pi / 400
3418
-
3419
3286
  UNITS.cycle.value = pi.times(2); // 2 * pi
3420
-
3421
3287
  UNITS.arcsec.value = pi.div(648000); // 2 * pi / 360 / 3600
3422
-
3423
3288
  UNITS.arcmin.value = pi.div(10800); // 2 * pi / 360 / 60
3424
3289
  } else {
3425
3290
  // number
3426
3291
  UNITS.rad.value = 1;
3427
3292
  UNITS.deg.value = Math.PI / 180; // 2 * pi / 360
3428
-
3429
3293
  UNITS.grad.value = Math.PI / 200; // 2 * pi / 400
3430
-
3431
3294
  UNITS.cycle.value = Math.PI * 2; // 2 * pi
3432
-
3433
3295
  UNITS.arcsec.value = Math.PI / 648000; // 2 * pi / 360 / 3600
3434
-
3435
3296
  UNITS.arcmin.value = Math.PI / 10800; // 2 * pi / 360 / 60
3436
- } // copy to the full names of the angles
3437
-
3297
+ }
3438
3298
 
3299
+ // copy to the full names of the angles
3439
3300
  UNITS.radian.value = UNITS.rad.value;
3440
3301
  UNITS.degree.value = UNITS.deg.value;
3441
3302
  UNITS.gradian.value = UNITS.grad.value;
3442
- } // apply the angle values now
3443
-
3303
+ }
3444
3304
 
3305
+ // apply the angle values now
3445
3306
  calculateAngleValues(config);
3446
-
3447
3307
  if (on) {
3448
3308
  // recalculate the values on change of configuration
3449
3309
  on('config', function (curr, prev) {
@@ -3452,13 +3312,12 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3452
3312
  }
3453
3313
  });
3454
3314
  }
3315
+
3455
3316
  /**
3456
3317
  * A unit system is a set of dimensionally independent base units plus a set of derived units, formed by multiplication and division of the base units, that are by convention used with the unit system.
3457
3318
  * A user perhaps could issue a command to select a preferred unit system, or use the default (see below).
3458
3319
  * Auto unit system: The default unit system is updated on the fly anytime a unit is parsed. The corresponding unit in the default unit system is updated, so that answers are given in the same units the user supplies.
3459
3320
  */
3460
-
3461
-
3462
3321
  var UNIT_SYSTEMS = {
3463
3322
  si: {
3464
3323
  // Base units
@@ -3556,8 +3415,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3556
3415
  prefix: PREFIXES.SHORT['']
3557
3416
  }
3558
3417
  }
3559
- }; // Clone to create the other unit systems
3418
+ };
3560
3419
 
3420
+ // Clone to create the other unit systems
3561
3421
  UNIT_SYSTEMS.cgs = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
3562
3422
  UNIT_SYSTEMS.cgs.LENGTH = {
3563
3423
  unit: UNITS.m,
@@ -3574,7 +3434,8 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3574
3434
  UNIT_SYSTEMS.cgs.ENERGY = {
3575
3435
  unit: UNITS.erg,
3576
3436
  prefix: PREFIXES.NONE['']
3577
- }; // there are wholly 4 unique cgs systems for electricity and magnetism,
3437
+ };
3438
+ // there are wholly 4 unique cgs systems for electricity and magnetism,
3578
3439
  // so let's not worry about it unless somebody complains
3579
3440
 
3580
3441
  UNIT_SYSTEMS.us = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
@@ -3605,17 +3466,20 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3605
3466
  UNIT_SYSTEMS.us.PRESSURE = {
3606
3467
  unit: UNITS.psi,
3607
3468
  prefix: PREFIXES.NONE['']
3608
- }; // Add additional unit systems here.
3609
- // Choose a unit system to seed the auto unit system.
3469
+ };
3470
+
3471
+ // Add additional unit systems here.
3610
3472
 
3611
- UNIT_SYSTEMS.auto = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si)); // Set the current unit system
3473
+ // Choose a unit system to seed the auto unit system.
3474
+ UNIT_SYSTEMS.auto = JSON.parse(JSON.stringify(UNIT_SYSTEMS.si));
3612
3475
 
3476
+ // Set the current unit system
3613
3477
  var currentUnitSystem = UNIT_SYSTEMS.auto;
3478
+
3614
3479
  /**
3615
3480
  * Set a unit system for formatting derived units.
3616
3481
  * @param {string} [name] The name of the unit system.
3617
3482
  */
3618
-
3619
3483
  Unit.setUnitSystem = function (name) {
3620
3484
  if (hasOwnProperty(UNIT_SYSTEMS, name)) {
3621
3485
  currentUnitSystem = UNIT_SYSTEMS[name];
@@ -3623,12 +3487,11 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3623
3487
  throw new Error('Unit system ' + name + ' does not exist. Choices are: ' + Object.keys(UNIT_SYSTEMS).join(', '));
3624
3488
  }
3625
3489
  };
3490
+
3626
3491
  /**
3627
3492
  * Return the current unit system.
3628
3493
  * @return {string} The current unit system.
3629
3494
  */
3630
-
3631
-
3632
3495
  Unit.getUnitSystem = function () {
3633
3496
  for (var _key in UNIT_SYSTEMS) {
3634
3497
  if (hasOwnProperty(UNIT_SYSTEMS, _key)) {
@@ -3638,16 +3501,16 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3638
3501
  }
3639
3502
  }
3640
3503
  };
3504
+
3641
3505
  /**
3642
3506
  * Converters to convert from number to an other numeric type like BigNumber
3643
3507
  * or Fraction
3644
3508
  */
3645
-
3646
-
3647
3509
  Unit.typeConverters = {
3648
3510
  BigNumber: function BigNumber(x) {
3649
3511
  return new _BigNumber(x + ''); // stringify to prevent constructor error
3650
3512
  },
3513
+
3651
3514
  Fraction: function Fraction(x) {
3652
3515
  return new _Fraction(x);
3653
3516
  },
@@ -3658,6 +3521,7 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3658
3521
  return x;
3659
3522
  }
3660
3523
  };
3524
+
3661
3525
  /**
3662
3526
  * Retrieve the right converter function corresponding with this unit's
3663
3527
  * value
@@ -3665,16 +3529,14 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3665
3529
  * @memberof Unit
3666
3530
  * @return {Function}
3667
3531
  */
3668
-
3669
3532
  Unit.prototype._numberConverter = function () {
3670
3533
  var convert = Unit.typeConverters[this.valueType()];
3671
-
3672
3534
  if (convert) {
3673
3535
  return convert;
3674
3536
  }
3675
-
3676
3537
  throw new TypeError('Unsupported Unit value type "' + this.valueType() + '"');
3677
3538
  };
3539
+
3678
3540
  /**
3679
3541
  * Retrieve the right convertor function corresponding with the type
3680
3542
  * of provided exampleValue.
@@ -3683,64 +3545,56 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3683
3545
  * In case of an unknown type,
3684
3546
  * @return {Function}
3685
3547
  */
3686
-
3687
-
3688
3548
  Unit._getNumberConverter = function (type) {
3689
3549
  if (!Unit.typeConverters[type]) {
3690
3550
  throw new TypeError('Unsupported type "' + type + '"');
3691
3551
  }
3692
-
3693
3552
  return Unit.typeConverters[type];
3694
- }; // Add dimensions to each built-in unit
3695
-
3553
+ };
3696
3554
 
3555
+ // Add dimensions to each built-in unit
3697
3556
  for (var _key2 in UNITS) {
3698
3557
  if (hasOwnProperty(UNITS, _key2)) {
3699
3558
  var unit = UNITS[_key2];
3700
3559
  unit.dimensions = unit.base.dimensions;
3701
3560
  }
3702
- } // Create aliases
3703
-
3561
+ }
3704
3562
 
3563
+ // Create aliases
3705
3564
  for (var _name2 in ALIASES) {
3706
3565
  if (hasOwnProperty(ALIASES, _name2)) {
3707
3566
  var _unit2 = UNITS[ALIASES[_name2]];
3708
3567
  var alias = {};
3709
-
3710
3568
  for (var _key3 in _unit2) {
3711
3569
  if (hasOwnProperty(_unit2, _key3)) {
3712
3570
  alias[_key3] = _unit2[_key3];
3713
3571
  }
3714
3572
  }
3715
-
3716
3573
  alias.name = _name2;
3717
3574
  UNITS[_name2] = alias;
3718
3575
  }
3719
3576
  }
3577
+
3720
3578
  /**
3721
3579
  * Checks if a character is a valid latin letter (upper or lower case).
3722
3580
  * Note that this function can be overridden, for example to allow support of other alphabets.
3723
3581
  * @param {string} c Tested character
3724
3582
  */
3725
-
3726
-
3727
3583
  Unit.isValidAlpha = function isValidAlpha(c) {
3728
3584
  return /^[a-zA-Z]$/.test(c);
3729
3585
  };
3730
-
3731
3586
  function assertUnitNameIsValid(name) {
3732
3587
  for (var i = 0; i < name.length; i++) {
3733
3588
  c = name.charAt(i);
3734
-
3735
3589
  if (i === 0 && !Unit.isValidAlpha(c)) {
3736
3590
  throw new Error('Invalid unit name (must begin with alpha character): "' + name + '"');
3737
3591
  }
3738
-
3739
3592
  if (i > 0 && !(Unit.isValidAlpha(c) || isDigit(c))) {
3740
3593
  throw new Error('Invalid unit name (only alphanumeric characters are allowed): "' + name + '"');
3741
3594
  }
3742
3595
  }
3743
3596
  }
3597
+
3744
3598
  /**
3745
3599
  * Wrapper around createUnitSingle.
3746
3600
  * Example:
@@ -3759,39 +3613,35 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3759
3613
  * @param {object} obj Object map. Each key becomes a unit which is defined by its value.
3760
3614
  * @param {object} options
3761
3615
  */
3762
-
3763
-
3764
3616
  Unit.createUnit = function (obj, options) {
3765
3617
  if (typeof obj !== 'object') {
3766
3618
  throw new TypeError("createUnit expects first parameter to be of type 'Object'");
3767
- } // Remove all units and aliases we are overriding
3768
-
3619
+ }
3769
3620
 
3621
+ // Remove all units and aliases we are overriding
3770
3622
  if (options && options.override) {
3771
3623
  for (var _key4 in obj) {
3772
3624
  if (hasOwnProperty(obj, _key4)) {
3773
3625
  Unit.deleteUnit(_key4);
3774
3626
  }
3775
-
3776
3627
  if (obj[_key4].aliases) {
3777
3628
  for (var i = 0; i < obj[_key4].aliases.length; i++) {
3778
3629
  Unit.deleteUnit(obj[_key4].aliases[i]);
3779
3630
  }
3780
3631
  }
3781
3632
  }
3782
- } // TODO: traverse multiple times until all units have been added
3783
-
3633
+ }
3784
3634
 
3635
+ // TODO: traverse multiple times until all units have been added
3785
3636
  var lastUnit;
3786
-
3787
3637
  for (var _key5 in obj) {
3788
3638
  if (hasOwnProperty(obj, _key5)) {
3789
3639
  lastUnit = Unit.createUnitSingle(_key5, obj[_key5]);
3790
3640
  }
3791
3641
  }
3792
-
3793
3642
  return lastUnit;
3794
3643
  };
3644
+
3795
3645
  /**
3796
3646
  * Create a user-defined unit and register it with the Unit type.
3797
3647
  * Example:
@@ -3820,32 +3670,28 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3820
3670
  *
3821
3671
  * @return {Unit}
3822
3672
  */
3823
-
3824
-
3825
3673
  Unit.createUnitSingle = function (name, obj, options) {
3826
3674
  if (typeof obj === 'undefined' || obj === null) {
3827
3675
  obj = {};
3828
3676
  }
3829
-
3830
3677
  if (typeof name !== 'string') {
3831
3678
  throw new TypeError("createUnitSingle expects first parameter to be of type 'string'");
3832
- } // Check collisions with existing units
3833
-
3679
+ }
3834
3680
 
3681
+ // Check collisions with existing units
3835
3682
  if (hasOwnProperty(UNITS, name)) {
3836
3683
  throw new Error('Cannot create unit "' + name + '": a unit with that name already exists');
3837
- } // TODO: Validate name for collisions with other built-in functions (like abs or cos, for example), and for acceptable variable names. For example, '42' is probably not a valid unit. Nor is '%', since it is also an operator.
3684
+ }
3838
3685
 
3686
+ // TODO: Validate name for collisions with other built-in functions (like abs or cos, for example), and for acceptable variable names. For example, '42' is probably not a valid unit. Nor is '%', since it is also an operator.
3839
3687
 
3840
3688
  assertUnitNameIsValid(name);
3841
3689
  var defUnit = null; // The Unit from which the new unit will be created.
3842
-
3843
3690
  var aliases = [];
3844
3691
  var offset = 0;
3845
3692
  var definition;
3846
3693
  var prefixes;
3847
3694
  var baseName;
3848
-
3849
3695
  if (obj && obj.type === 'Unit') {
3850
3696
  defUnit = obj.clone();
3851
3697
  } else if (typeof obj === 'string') {
@@ -3857,14 +3703,12 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3857
3703
  prefixes = obj.prefixes;
3858
3704
  offset = obj.offset;
3859
3705
  baseName = obj.baseName;
3860
-
3861
3706
  if (obj.aliases) {
3862
3707
  aliases = obj.aliases.valueOf(); // aliases could be a Matrix, so convert to Array
3863
3708
  }
3864
3709
  } else {
3865
3710
  throw new TypeError('Cannot create unit "' + name + '" from "' + obj.toString() + '": expecting "string" or "Unit" or "Object"');
3866
3711
  }
3867
-
3868
3712
  if (aliases) {
3869
3713
  for (var i = 0; i < aliases.length; i++) {
3870
3714
  if (hasOwnProperty(UNITS, aliases[i])) {
@@ -3872,7 +3716,6 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3872
3716
  }
3873
3717
  }
3874
3718
  }
3875
-
3876
3719
  if (definition && typeof definition === 'string' && !defUnit) {
3877
3720
  try {
3878
3721
  defUnit = Unit.parse(definition, {
@@ -3885,45 +3728,39 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3885
3728
  } else if (definition && definition.type === 'Unit') {
3886
3729
  defUnit = definition.clone();
3887
3730
  }
3888
-
3889
3731
  aliases = aliases || [];
3890
3732
  offset = offset || 0;
3891
-
3892
3733
  if (prefixes && prefixes.toUpperCase) {
3893
3734
  prefixes = PREFIXES[prefixes.toUpperCase()] || PREFIXES.NONE;
3894
3735
  } else {
3895
3736
  prefixes = PREFIXES.NONE;
3896
- } // If defUnit is null, it is because the user did not
3897
- // specify a defintion. So create a new base dimension.
3898
-
3737
+ }
3899
3738
 
3739
+ // If defUnit is null, it is because the user did not
3740
+ // specify a defintion. So create a new base dimension.
3900
3741
  var newUnit = {};
3901
-
3902
3742
  if (!defUnit) {
3903
3743
  // Add a new base dimension
3904
3744
  baseName = baseName || name + '_STUFF'; // foo --> foo_STUFF, or the essence of foo
3905
-
3906
3745
  if (BASE_DIMENSIONS.indexOf(baseName) >= 0) {
3907
3746
  throw new Error('Cannot create new base unit "' + name + '": a base unit with that name already exists (and cannot be overridden)');
3908
3747
  }
3748
+ BASE_DIMENSIONS.push(baseName);
3909
3749
 
3910
- BASE_DIMENSIONS.push(baseName); // Push 0 onto existing base units
3911
-
3750
+ // Push 0 onto existing base units
3912
3751
  for (var b in BASE_UNITS) {
3913
3752
  if (hasOwnProperty(BASE_UNITS, b)) {
3914
3753
  BASE_UNITS[b].dimensions[BASE_DIMENSIONS.length - 1] = 0;
3915
3754
  }
3916
- } // Add the new base unit
3917
-
3755
+ }
3918
3756
 
3757
+ // Add the new base unit
3919
3758
  var newBaseUnit = {
3920
3759
  dimensions: []
3921
3760
  };
3922
-
3923
3761
  for (var _i6 = 0; _i6 < BASE_DIMENSIONS.length; _i6++) {
3924
3762
  newBaseUnit.dimensions[_i6] = 0;
3925
3763
  }
3926
-
3927
3764
  newBaseUnit.dimensions[BASE_DIMENSIONS.length - 1] = 1;
3928
3765
  newBaseUnit.key = baseName;
3929
3766
  BASE_UNITS[baseName] = newBaseUnit;
@@ -3946,21 +3783,19 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3946
3783
  dimensions: defUnit.dimensions.slice(0),
3947
3784
  prefixes,
3948
3785
  offset
3949
- }; // Create a new base if no matching base exists
3786
+ };
3950
3787
 
3788
+ // Create a new base if no matching base exists
3951
3789
  var anyMatch = false;
3952
-
3953
3790
  for (var _i7 in BASE_UNITS) {
3954
3791
  if (hasOwnProperty(BASE_UNITS, _i7)) {
3955
3792
  var match = true;
3956
-
3957
3793
  for (var j = 0; j < BASE_DIMENSIONS.length; j++) {
3958
3794
  if (Math.abs((newUnit.dimensions[j] || 0) - (BASE_UNITS[_i7].dimensions[j] || 0)) > 1e-12) {
3959
3795
  match = false;
3960
3796
  break;
3961
3797
  }
3962
3798
  }
3963
-
3964
3799
  if (match) {
3965
3800
  anyMatch = true;
3966
3801
  newUnit.base = BASE_UNITS[_i7];
@@ -3968,11 +3803,9 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3968
3803
  }
3969
3804
  }
3970
3805
  }
3971
-
3972
3806
  if (!anyMatch) {
3973
3807
  baseName = baseName || name + '_STUFF'; // foo --> foo_STUFF, or the essence of foo
3974
3808
  // Add the new base unit
3975
-
3976
3809
  var _newBaseUnit = {
3977
3810
  dimensions: defUnit.dimensions.slice(0)
3978
3811
  };
@@ -3985,34 +3818,28 @@ export var createUnitClass = /* #__PURE__ */factory(name, dependencies, _ref =>
3985
3818
  newUnit.base = BASE_UNITS[baseName];
3986
3819
  }
3987
3820
  }
3988
-
3989
3821
  Unit.UNITS[name] = newUnit;
3990
-
3991
3822
  for (var _i8 = 0; _i8 < aliases.length; _i8++) {
3992
3823
  var aliasName = aliases[_i8];
3993
3824
  var _alias = {};
3994
-
3995
3825
  for (var _key6 in newUnit) {
3996
3826
  if (hasOwnProperty(newUnit, _key6)) {
3997
3827
  _alias[_key6] = newUnit[_key6];
3998
3828
  }
3999
3829
  }
4000
-
4001
3830
  _alias.name = aliasName;
4002
3831
  Unit.UNITS[aliasName] = _alias;
4003
- } // delete the memoization cache, since adding a new unit to the array
3832
+ }
3833
+ // delete the memoization cache, since adding a new unit to the array
4004
3834
  // invalidates all old results
4005
-
4006
-
4007
3835
  delete _findUnit.cache;
4008
3836
  return new Unit(null, name);
4009
3837
  };
4010
-
4011
3838
  Unit.deleteUnit = function (name) {
4012
3839
  delete Unit.UNITS[name];
4013
- }; // expose arrays with prefixes, dimensions, units, systems
4014
-
3840
+ };
4015
3841
 
3842
+ // expose arrays with prefixes, dimensions, units, systems
4016
3843
  Unit.PREFIXES = PREFIXES;
4017
3844
  Unit.BASE_DIMENSIONS = BASE_DIMENSIONS;
4018
3845
  Unit.BASE_UNITS = BASE_UNITS;