mathjs 10.6.4 → 11.1.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.
- package/HISTORY.md +79 -1
- package/README.md +1 -1
- package/lib/browser/math.js +2 -41
- package/lib/browser/math.js.LICENSE.txt +43 -0
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/core/create.js +6 -5
- package/lib/cjs/core/function/import.js +4 -14
- package/lib/cjs/core/function/typed.js +54 -12
- package/lib/cjs/defaultInstance.js +3 -3
- package/lib/cjs/entry/allFactoriesAny.js +1 -1
- package/lib/cjs/entry/allFactoriesNumber.js +1 -1
- package/lib/cjs/entry/configReadonly.js +1 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +56 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +6 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +3 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +8 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +50 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +6 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +3 -0
- package/lib/cjs/entry/dependenciesNumber.generated.js +8 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +87 -61
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +93 -69
- package/lib/cjs/entry/pureFunctionsAny.generated.js +50 -45
- package/lib/cjs/entry/pureFunctionsNumber.generated.js +22 -19
- package/lib/cjs/expression/Parser.js +1 -1
- package/lib/cjs/expression/embeddedDocs/construction/index.js +1 -1
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +8 -5
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyConstant.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
- package/lib/cjs/expression/node/AccessorNode.js +216 -173
- package/lib/cjs/expression/node/ArrayNode.js +206 -160
- package/lib/cjs/expression/node/AssignmentNode.js +321 -270
- package/lib/cjs/expression/node/BlockNode.js +223 -172
- package/lib/cjs/expression/node/ConditionalNode.js +253 -193
- package/lib/cjs/expression/node/ConstantNode.js +216 -171
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +258 -196
- package/lib/cjs/expression/node/FunctionNode.js +456 -416
- package/lib/cjs/expression/node/IndexNode.js +256 -210
- package/lib/cjs/expression/node/Node.js +411 -378
- package/lib/cjs/expression/node/ObjectNode.js +223 -178
- package/lib/cjs/expression/node/OperatorNode.js +474 -397
- package/lib/cjs/expression/node/ParenthesisNode.js +189 -143
- package/lib/cjs/expression/node/RangeNode.js +272 -224
- package/lib/cjs/expression/node/RelationalNode.js +246 -195
- package/lib/cjs/expression/node/SymbolNode.js +219 -172
- package/lib/cjs/expression/node/utils/access.js +1 -1
- package/lib/cjs/expression/node/utils/assign.js +1 -1
- package/lib/cjs/expression/operators.js +117 -23
- package/lib/cjs/expression/parse.js +37 -19
- package/lib/cjs/expression/transform/std.transform.js +3 -1
- package/lib/cjs/factoriesAny.js +8 -0
- package/lib/cjs/factoriesNumber.js +10 -1
- package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
- package/lib/cjs/function/algebra/derivative.js +25 -33
- package/lib/cjs/function/algebra/leafCount.js +0 -3
- package/lib/cjs/function/algebra/rationalize.js +78 -108
- package/lib/cjs/function/algebra/resolve.js +53 -16
- package/lib/cjs/function/algebra/simplify/util.js +1 -1
- package/lib/cjs/function/algebra/simplify.js +90 -115
- package/lib/cjs/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +44 -10
- package/lib/cjs/function/algebra/simplifyCore.js +196 -93
- package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
- package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
- package/lib/cjs/function/algebra/symbolicEqual.js +14 -32
- package/lib/cjs/function/arithmetic/abs.js +7 -14
- package/lib/cjs/function/arithmetic/add.js +26 -70
- package/lib/cjs/function/arithmetic/addScalar.js +17 -9
- package/lib/cjs/function/arithmetic/cbrt.js +7 -11
- package/lib/cjs/function/arithmetic/ceil.js +50 -40
- package/lib/cjs/function/arithmetic/cube.js +5 -10
- package/lib/cjs/function/arithmetic/divide.js +7 -7
- package/lib/cjs/function/arithmetic/divideScalar.js +4 -18
- package/lib/cjs/function/arithmetic/dotDivide.js +22 -65
- package/lib/cjs/function/arithmetic/dotMultiply.js +16 -61
- package/lib/cjs/function/arithmetic/dotPow.js +30 -63
- package/lib/cjs/function/arithmetic/exp.js +8 -12
- package/lib/cjs/function/arithmetic/expm1.js +10 -10
- package/lib/cjs/function/arithmetic/fix.js +34 -28
- package/lib/cjs/function/arithmetic/floor.js +51 -41
- package/lib/cjs/function/arithmetic/gcd.js +27 -68
- package/lib/cjs/function/arithmetic/hypot.js +9 -5
- package/lib/cjs/function/arithmetic/invmod.js +2 -2
- package/lib/cjs/function/arithmetic/lcm.js +27 -68
- package/lib/cjs/function/arithmetic/log.js +10 -12
- package/lib/cjs/function/arithmetic/log10.js +5 -3
- package/lib/cjs/function/arithmetic/log1p.js +11 -7
- package/lib/cjs/function/arithmetic/log2.js +5 -3
- package/lib/cjs/function/arithmetic/mod.js +22 -64
- package/lib/cjs/function/arithmetic/multiply.js +40 -35
- package/lib/cjs/function/arithmetic/multiplyScalar.js +2 -9
- package/lib/cjs/function/arithmetic/norm.js +1 -5
- package/lib/cjs/function/arithmetic/nthRoot.js +83 -95
- package/lib/cjs/function/arithmetic/nthRoots.js +2 -2
- package/lib/cjs/function/arithmetic/round.js +56 -42
- package/lib/cjs/function/arithmetic/sign.js +14 -10
- package/lib/cjs/function/arithmetic/sqrt.js +5 -9
- package/lib/cjs/function/arithmetic/square.js +6 -10
- package/lib/cjs/function/arithmetic/subtract.js +44 -100
- package/lib/cjs/function/arithmetic/unaryMinus.js +14 -16
- package/lib/cjs/function/arithmetic/unaryPlus.js +6 -4
- package/lib/cjs/function/bitwise/bitAnd.js +17 -61
- package/lib/cjs/function/bitwise/bitNot.js +6 -4
- package/lib/cjs/function/bitwise/bitOr.js +16 -60
- package/lib/cjs/function/bitwise/bitXor.js +17 -61
- package/lib/cjs/function/bitwise/leftShift.js +69 -82
- package/lib/cjs/function/bitwise/rightArithShift.js +69 -82
- package/lib/cjs/function/bitwise/rightLogShift.js +69 -82
- package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +36 -0
- package/lib/cjs/function/complex/arg.js +5 -3
- package/lib/cjs/function/complex/conj.js +6 -7
- package/lib/cjs/function/complex/im.js +7 -8
- package/lib/cjs/function/complex/re.js +6 -10
- package/lib/cjs/function/geometry/distance.js +2 -2
- package/lib/cjs/function/logical/and.js +74 -80
- package/lib/cjs/function/logical/not.js +13 -6
- package/lib/cjs/function/logical/or.js +21 -63
- package/lib/cjs/function/logical/xor.js +21 -63
- package/lib/cjs/function/matrix/diff.js +11 -8
- package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
- package/lib/cjs/function/matrix/fft.js +2 -2
- package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
- package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
- package/lib/cjs/function/matrix/ones.js +2 -1
- package/lib/cjs/function/matrix/rotate.js +5 -5
- package/lib/cjs/function/matrix/sqrtm.js +3 -2
- package/lib/cjs/function/matrix/transpose.js +47 -48
- package/lib/cjs/function/matrix/zeros.js +2 -1
- package/lib/cjs/function/probability/factorial.js +5 -3
- package/lib/cjs/function/probability/gamma.js +38 -40
- package/lib/cjs/function/probability/kldivergence.js +5 -2
- package/lib/cjs/function/probability/lgamma.js +30 -30
- package/lib/cjs/function/probability/util/seededRNG.js +2 -2
- package/lib/cjs/function/relational/compare.js +21 -67
- package/lib/cjs/function/relational/compareNatural.js +59 -54
- package/lib/cjs/function/relational/compareText.js +10 -43
- package/lib/cjs/function/relational/compareUnits.js +24 -0
- package/lib/cjs/function/relational/equal.js +19 -80
- package/lib/cjs/function/relational/equalScalar.js +7 -9
- package/lib/cjs/function/relational/larger.js +21 -67
- package/lib/cjs/function/relational/largerEq.js +21 -67
- package/lib/cjs/function/relational/smaller.js +21 -67
- package/lib/cjs/function/relational/smallerEq.js +21 -67
- package/lib/cjs/function/relational/unequal.js +19 -80
- package/lib/cjs/function/special/erf.js +5 -3
- package/lib/cjs/function/statistics/std.js +11 -2
- package/lib/cjs/function/string/format.js +2 -2
- package/lib/cjs/function/string/hex.js +1 -2
- package/lib/cjs/function/trigonometry/acos.js +4 -8
- package/lib/cjs/function/trigonometry/acosh.js +2 -7
- package/lib/cjs/function/trigonometry/acot.js +6 -11
- package/lib/cjs/function/trigonometry/acoth.js +4 -8
- package/lib/cjs/function/trigonometry/acsc.js +6 -11
- package/lib/cjs/function/trigonometry/acsch.js +4 -8
- package/lib/cjs/function/trigonometry/asec.js +6 -10
- package/lib/cjs/function/trigonometry/asech.js +4 -8
- package/lib/cjs/function/trigonometry/asin.js +5 -10
- package/lib/cjs/function/trigonometry/asinh.js +4 -9
- package/lib/cjs/function/trigonometry/atan.js +5 -11
- package/lib/cjs/function/trigonometry/atan2.js +25 -63
- package/lib/cjs/function/trigonometry/atanh.js +4 -9
- package/lib/cjs/function/trigonometry/cos.js +11 -20
- package/lib/cjs/function/trigonometry/cosh.js +5 -19
- package/lib/cjs/function/trigonometry/cot.js +9 -15
- package/lib/cjs/function/trigonometry/coth.js +4 -15
- package/lib/cjs/function/trigonometry/csc.js +11 -17
- package/lib/cjs/function/trigonometry/csch.js +4 -15
- package/lib/cjs/function/trigonometry/sec.js +11 -17
- package/lib/cjs/function/trigonometry/sech.js +4 -15
- package/lib/cjs/function/trigonometry/sin.js +11 -21
- package/lib/cjs/function/trigonometry/sinh.js +5 -20
- package/lib/cjs/function/trigonometry/tan.js +11 -21
- package/lib/cjs/function/trigonometry/tanh.js +5 -20
- package/lib/cjs/function/trigonometry/trigUnit.js +24 -0
- package/lib/cjs/function/unit/to.js +7 -41
- package/lib/cjs/function/utils/clone.js +1 -1
- package/lib/cjs/function/utils/hasNumericValue.js +5 -1
- package/lib/cjs/function/utils/isInteger.js +6 -4
- package/lib/cjs/function/utils/isNaN.js +1 -1
- package/lib/cjs/function/utils/isNegative.js +11 -7
- package/lib/cjs/function/utils/isNumeric.js +6 -4
- package/lib/cjs/function/utils/isPositive.js +11 -7
- package/lib/cjs/function/utils/isPrime.js +5 -3
- package/lib/cjs/function/utils/isZero.js +21 -17
- package/lib/cjs/function/utils/numeric.js +11 -4
- package/lib/cjs/function/utils/typeOf.js +38 -44
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/plain/bignumber/index.js +1 -1
- package/lib/cjs/type/bignumber/BigNumber.js +2 -2
- package/lib/cjs/type/bignumber/function/bignumber.js +6 -4
- package/lib/cjs/type/boolean.js +7 -5
- package/lib/cjs/type/chain/Chain.js +23 -3
- package/lib/cjs/type/complex/Complex.js +18 -14
- package/lib/cjs/type/complex/function/complex.js +6 -4
- package/lib/cjs/type/fraction/Fraction.js +10 -6
- package/lib/cjs/type/fraction/function/fraction.js +6 -4
- package/lib/cjs/type/matrix/DenseMatrix.js +21 -6
- package/lib/cjs/type/matrix/SparseMatrix.js +12 -2
- package/lib/cjs/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +4 -4
- package/lib/cjs/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +7 -7
- package/lib/cjs/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +6 -6
- package/lib/cjs/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +5 -5
- package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +238 -0
- package/lib/cjs/type/number.js +6 -4
- package/lib/cjs/type/string.js +7 -5
- package/lib/cjs/type/unit/Unit.js +98 -45
- package/lib/cjs/type/unit/function/createUnit.js +2 -1
- package/lib/cjs/type/unit/function/unit.js +14 -5
- package/lib/cjs/utils/customs.js +2 -2
- package/lib/cjs/utils/emitter.js +1 -1
- package/lib/cjs/utils/function.js +2 -2
- package/lib/cjs/utils/is.js +27 -25
- package/lib/cjs/utils/latex.js +3 -3
- package/lib/cjs/utils/lruQueue.js +1 -1
- package/lib/cjs/utils/map.js +3 -3
- package/lib/cjs/utils/object.js +2 -2
- package/lib/cjs/utils/snapshot.js +30 -57
- package/lib/cjs/utils/string.js +3 -3
- package/lib/cjs/version.js +1 -1
- package/lib/esm/core/create.js +2 -1
- package/lib/esm/core/function/import.js +2 -12
- package/lib/esm/core/function/typed.js +47 -11
- package/lib/esm/entry/dependenciesAny/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesKldivergence.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +34 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSqrtm.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny.generated.js +1 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +30 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber.generated.js +1 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +73 -48
- package/lib/esm/entry/impureFunctionsNumber.generated.js +81 -58
- package/lib/esm/entry/pureFunctionsAny.generated.js +39 -36
- package/lib/esm/entry/pureFunctionsNumber.generated.js +14 -13
- package/lib/esm/expression/embeddedDocs/construction/index.js +1 -1
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyConstant.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +1 -1
- package/lib/esm/expression/node/AccessorNode.js +158 -153
- package/lib/esm/expression/node/ArrayNode.js +162 -154
- package/lib/esm/expression/node/AssignmentNode.js +257 -245
- package/lib/esm/expression/node/BlockNode.js +177 -163
- package/lib/esm/expression/node/ConditionalNode.js +197 -174
- package/lib/esm/expression/node/ConstantNode.js +171 -163
- package/lib/esm/expression/node/FunctionAssignmentNode.js +205 -180
- package/lib/esm/expression/node/FunctionNode.js +407 -407
- package/lib/esm/expression/node/IndexNode.js +206 -198
- package/lib/esm/expression/node/Node.js +325 -325
- package/lib/esm/expression/node/ObjectNode.js +166 -157
- package/lib/esm/expression/node/OperatorNode.js +414 -377
- package/lib/esm/expression/node/ParenthesisNode.js +146 -138
- package/lib/esm/expression/node/RangeNode.js +221 -212
- package/lib/esm/expression/node/RelationalNode.js +190 -176
- package/lib/esm/expression/node/SymbolNode.js +161 -152
- package/lib/esm/expression/operators.js +96 -4
- package/lib/esm/expression/parse.js +25 -7
- package/lib/esm/expression/transform/std.transform.js +3 -1
- package/lib/esm/factoriesAny.js +1 -0
- package/lib/esm/factoriesNumber.js +1 -0
- package/lib/esm/function/algebra/derivative.js +25 -33
- package/lib/esm/function/algebra/leafCount.js +0 -3
- package/lib/esm/function/algebra/rationalize.js +83 -114
- package/lib/esm/function/algebra/resolve.js +25 -16
- package/lib/esm/function/algebra/simplify.js +85 -113
- package/lib/esm/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +39 -9
- package/lib/esm/function/algebra/simplifyCore.js +192 -91
- package/lib/esm/function/algebra/symbolicEqual.js +14 -32
- package/lib/esm/function/arithmetic/abs.js +3 -16
- package/lib/esm/function/arithmetic/add.js +21 -65
- package/lib/esm/function/arithmetic/addScalar.js +11 -5
- package/lib/esm/function/arithmetic/cbrt.js +7 -10
- package/lib/esm/function/arithmetic/ceil.js +25 -25
- package/lib/esm/function/arithmetic/cube.js +5 -9
- package/lib/esm/function/arithmetic/divide.js +7 -7
- package/lib/esm/function/arithmetic/divideScalar.js +2 -19
- package/lib/esm/function/arithmetic/dotDivide.js +22 -64
- package/lib/esm/function/arithmetic/dotMultiply.js +16 -60
- package/lib/esm/function/arithmetic/dotPow.js +30 -62
- package/lib/esm/function/arithmetic/exp.js +8 -11
- package/lib/esm/function/arithmetic/expm1.js +10 -9
- package/lib/esm/function/arithmetic/fix.js +18 -18
- package/lib/esm/function/arithmetic/floor.js +26 -26
- package/lib/esm/function/arithmetic/gcd.js +26 -70
- package/lib/esm/function/arithmetic/hypot.js +7 -6
- package/lib/esm/function/arithmetic/invmod.js +1 -1
- package/lib/esm/function/arithmetic/lcm.js +26 -70
- package/lib/esm/function/arithmetic/log.js +7 -10
- package/lib/esm/function/arithmetic/log10.js +1 -3
- package/lib/esm/function/arithmetic/log1p.js +4 -6
- package/lib/esm/function/arithmetic/log2.js +1 -3
- package/lib/esm/function/arithmetic/mod.js +21 -62
- package/lib/esm/function/arithmetic/multiply.js +23 -27
- package/lib/esm/function/arithmetic/multiplyScalar.js +2 -13
- package/lib/esm/function/arithmetic/norm.js +0 -4
- package/lib/esm/function/arithmetic/nthRoot.js +41 -76
- package/lib/esm/function/arithmetic/nthRoots.js +2 -2
- package/lib/esm/function/arithmetic/round.js +26 -28
- package/lib/esm/function/arithmetic/sign.js +5 -7
- package/lib/esm/function/arithmetic/sqrt.js +5 -8
- package/lib/esm/function/arithmetic/square.js +6 -9
- package/lib/esm/function/arithmetic/subtract.js +31 -95
- package/lib/esm/function/arithmetic/unaryMinus.js +6 -16
- package/lib/esm/function/arithmetic/unaryPlus.js +2 -4
- package/lib/esm/function/bitwise/bitAnd.js +16 -59
- package/lib/esm/function/bitwise/bitNot.js +2 -4
- package/lib/esm/function/bitwise/bitOr.js +16 -59
- package/lib/esm/function/bitwise/bitXor.js +16 -59
- package/lib/esm/function/bitwise/leftShift.js +39 -61
- package/lib/esm/function/bitwise/rightArithShift.js +39 -61
- package/lib/esm/function/bitwise/rightLogShift.js +39 -61
- package/lib/esm/function/bitwise/useMatrixForArrayScalar.js +13 -0
- package/lib/esm/function/complex/arg.js +1 -3
- package/lib/esm/function/complex/conj.js +3 -12
- package/lib/esm/function/complex/im.js +4 -15
- package/lib/esm/function/complex/re.js +3 -15
- package/lib/esm/function/geometry/distance.js +2 -2
- package/lib/esm/function/logical/and.js +35 -57
- package/lib/esm/function/logical/not.js +3 -6
- package/lib/esm/function/logical/or.js +16 -61
- package/lib/esm/function/logical/xor.js +16 -61
- package/lib/esm/function/matrix/diff.js +3 -8
- package/lib/esm/function/matrix/ones.js +2 -1
- package/lib/esm/function/matrix/rotate.js +5 -5
- package/lib/esm/function/matrix/sqrtm.js +3 -2
- package/lib/esm/function/matrix/transpose.js +47 -50
- package/lib/esm/function/matrix/zeros.js +2 -1
- package/lib/esm/function/probability/factorial.js +1 -3
- package/lib/esm/function/probability/gamma.js +38 -39
- package/lib/esm/function/probability/kldivergence.js +3 -2
- package/lib/esm/function/probability/lgamma.js +29 -29
- package/lib/esm/function/relational/compare.js +21 -67
- package/lib/esm/function/relational/compareNatural.js +54 -49
- package/lib/esm/function/relational/compareText.js +10 -42
- package/lib/esm/function/relational/compareUnits.js +15 -0
- package/lib/esm/function/relational/equal.js +19 -79
- package/lib/esm/function/relational/equalScalar.js +6 -9
- package/lib/esm/function/relational/larger.js +23 -73
- package/lib/esm/function/relational/largerEq.js +23 -73
- package/lib/esm/function/relational/smaller.js +23 -73
- package/lib/esm/function/relational/smallerEq.js +23 -73
- package/lib/esm/function/relational/unequal.js +19 -79
- package/lib/esm/function/special/erf.js +1 -3
- package/lib/esm/function/statistics/std.js +10 -2
- package/lib/esm/function/string/format.js +2 -2
- package/lib/esm/function/string/hex.js +1 -2
- package/lib/esm/function/trigonometry/acos.js +4 -7
- package/lib/esm/function/trigonometry/acosh.js +2 -6
- package/lib/esm/function/trigonometry/acot.js +6 -10
- package/lib/esm/function/trigonometry/acoth.js +4 -7
- package/lib/esm/function/trigonometry/acsc.js +6 -10
- package/lib/esm/function/trigonometry/acsch.js +4 -7
- package/lib/esm/function/trigonometry/asec.js +6 -9
- package/lib/esm/function/trigonometry/asech.js +4 -7
- package/lib/esm/function/trigonometry/asin.js +5 -9
- package/lib/esm/function/trigonometry/asinh.js +4 -8
- package/lib/esm/function/trigonometry/atan.js +5 -10
- package/lib/esm/function/trigonometry/atan2.js +26 -65
- package/lib/esm/function/trigonometry/atanh.js +4 -8
- package/lib/esm/function/trigonometry/cos.js +11 -22
- package/lib/esm/function/trigonometry/cosh.js +5 -20
- package/lib/esm/function/trigonometry/cot.js +10 -20
- package/lib/esm/function/trigonometry/coth.js +6 -20
- package/lib/esm/function/trigonometry/csc.js +12 -22
- package/lib/esm/function/trigonometry/csch.js +6 -20
- package/lib/esm/function/trigonometry/sec.js +12 -22
- package/lib/esm/function/trigonometry/sech.js +6 -20
- package/lib/esm/function/trigonometry/sin.js +11 -23
- package/lib/esm/function/trigonometry/sinh.js +5 -21
- package/lib/esm/function/trigonometry/tan.js +11 -23
- package/lib/esm/function/trigonometry/tanh.js +5 -21
- package/lib/esm/function/trigonometry/trigUnit.js +15 -0
- package/lib/esm/function/unit/to.js +8 -43
- package/lib/esm/function/utils/clone.js +1 -1
- package/lib/esm/function/utils/hasNumericValue.js +3 -1
- package/lib/esm/function/utils/isInteger.js +2 -4
- package/lib/esm/function/utils/isNaN.js +1 -1
- package/lib/esm/function/utils/isNegative.js +3 -7
- package/lib/esm/function/utils/isNumeric.js +4 -10
- package/lib/esm/function/utils/isPositive.js +3 -7
- package/lib/esm/function/utils/isPrime.js +1 -3
- package/lib/esm/function/utils/isZero.js +13 -17
- package/lib/esm/function/utils/numeric.js +11 -4
- package/lib/esm/function/utils/typeOf.js +38 -44
- package/lib/esm/type/bignumber/function/bignumber.js +1 -3
- package/lib/esm/type/boolean.js +1 -3
- package/lib/esm/type/chain/Chain.js +23 -3
- package/lib/esm/type/complex/Complex.js +4 -0
- package/lib/esm/type/complex/function/complex.js +1 -3
- package/lib/esm/type/fraction/Fraction.js +4 -0
- package/lib/esm/type/fraction/function/fraction.js +1 -3
- package/lib/esm/type/matrix/DenseMatrix.js +15 -1
- package/lib/esm/type/matrix/SparseMatrix.js +9 -0
- package/lib/esm/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +2 -2
- package/lib/esm/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +5 -5
- package/lib/esm/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +4 -4
- package/lib/esm/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +3 -3
- package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +168 -0
- package/lib/esm/type/number.js +1 -3
- package/lib/esm/type/string.js +1 -3
- package/lib/esm/type/unit/Unit.js +85 -36
- package/lib/esm/type/unit/function/createUnit.js +2 -1
- package/lib/esm/type/unit/function/unit.js +10 -5
- package/lib/esm/utils/is.js +18 -18
- package/lib/esm/utils/snapshot.js +22 -48
- package/lib/esm/version.js +1 -1
- package/package.json +22 -25
- package/types/index.d.ts +211 -180
- package/types/index.ts +358 -144
- package/types/tsconfig.json +4 -1
- package/lib/cjs/utils/polyfills.js +0 -14
- package/lib/esm/utils/polyfills.js +0 -12
|
@@ -79,12 +79,14 @@ var createBignumber = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
79
79
|
Fraction: function Fraction(x) {
|
|
80
80
|
return new BigNumber(x.n).div(x.d).times(x.s);
|
|
81
81
|
},
|
|
82
|
-
null: function _null(x) {
|
|
82
|
+
"null": function _null(x) {
|
|
83
83
|
return new BigNumber(0);
|
|
84
84
|
},
|
|
85
|
-
'Array | Matrix': function
|
|
86
|
-
return
|
|
87
|
-
|
|
85
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
86
|
+
return function (x) {
|
|
87
|
+
return (0, _collection.deepMap)(x, self);
|
|
88
|
+
};
|
|
89
|
+
})
|
|
88
90
|
});
|
|
89
91
|
});
|
|
90
92
|
exports.createBignumber = createBignumber;
|
package/lib/cjs/type/boolean.js
CHANGED
|
@@ -45,13 +45,13 @@ var createBoolean = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fun
|
|
|
45
45
|
'': function _() {
|
|
46
46
|
return false;
|
|
47
47
|
},
|
|
48
|
-
boolean: function boolean(x) {
|
|
48
|
+
"boolean": function boolean(x) {
|
|
49
49
|
return x;
|
|
50
50
|
},
|
|
51
51
|
number: function number(x) {
|
|
52
52
|
return !!x;
|
|
53
53
|
},
|
|
54
|
-
null: function _null(x) {
|
|
54
|
+
"null": function _null(x) {
|
|
55
55
|
return false;
|
|
56
56
|
},
|
|
57
57
|
BigNumber: function BigNumber(x) {
|
|
@@ -76,9 +76,11 @@ var createBoolean = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fun
|
|
|
76
76
|
|
|
77
77
|
throw new Error('Cannot convert "' + x + '" to a boolean');
|
|
78
78
|
},
|
|
79
|
-
'Array | Matrix': function
|
|
80
|
-
return
|
|
81
|
-
|
|
79
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
80
|
+
return function (x) {
|
|
81
|
+
return (0, _collection.deepMap)(x, self);
|
|
82
|
+
};
|
|
83
|
+
})
|
|
82
84
|
});
|
|
83
85
|
});
|
|
84
86
|
exports.createBoolean = createBoolean;
|
|
@@ -14,10 +14,11 @@ var _object = require("../../utils/object.js");
|
|
|
14
14
|
var _factory = require("../../utils/factory.js");
|
|
15
15
|
|
|
16
16
|
var name = 'Chain';
|
|
17
|
-
var dependencies = ['?on', 'math'];
|
|
17
|
+
var dependencies = ['?on', 'math', 'typed'];
|
|
18
18
|
var createChainClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
19
19
|
var on = _ref.on,
|
|
20
|
-
math = _ref.math
|
|
20
|
+
math = _ref.math,
|
|
21
|
+
typed = _ref.typed;
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* @constructor Chain
|
|
@@ -151,12 +152,31 @@ var createChainClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
151
152
|
|
|
152
153
|
function chainify(fn) {
|
|
153
154
|
return function () {
|
|
154
|
-
|
|
155
|
+
// Here, `this` will be the context of a Chain instance
|
|
156
|
+
if (arguments.length === 0) {
|
|
157
|
+
return new Chain(fn(this.value));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
var args = [this.value];
|
|
155
161
|
|
|
156
162
|
for (var i = 0; i < arguments.length; i++) {
|
|
157
163
|
args[i + 1] = arguments[i];
|
|
158
164
|
}
|
|
159
165
|
|
|
166
|
+
if (typed.isTypedFunction(fn)) {
|
|
167
|
+
var sigObject = typed.resolve(fn, args); // We want to detect if a rest parameter has matched across the
|
|
168
|
+
// value in the chain and the current arguments of this call.
|
|
169
|
+
// That is the case if and only if the matching signature has
|
|
170
|
+
// exactly one parameter (which then must be a rest parameter
|
|
171
|
+
// as it is matching at least two actual arguments).
|
|
172
|
+
|
|
173
|
+
if (sigObject.params.length === 1) {
|
|
174
|
+
throw new Error('chain function ' + fn.name + ' cannot match rest parameter between chain value and additional arguments.');
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
return new Chain(sigObject.implementation.apply(fn, args));
|
|
178
|
+
}
|
|
179
|
+
|
|
160
180
|
return new Chain(fn.apply(fn, args));
|
|
161
181
|
};
|
|
162
182
|
}
|
|
@@ -23,15 +23,19 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
23
23
|
/**
|
|
24
24
|
* Attach type information
|
|
25
25
|
*/
|
|
26
|
-
_complex
|
|
27
|
-
|
|
26
|
+
Object.defineProperty(_complex["default"], 'name', {
|
|
27
|
+
value: 'Complex'
|
|
28
|
+
});
|
|
29
|
+
_complex["default"].prototype.constructor = _complex["default"];
|
|
30
|
+
_complex["default"].prototype.type = 'Complex';
|
|
31
|
+
_complex["default"].prototype.isComplex = true;
|
|
28
32
|
/**
|
|
29
33
|
* Get a JSON representation of the complex number
|
|
30
34
|
* @returns {Object} Returns a JSON object structured as:
|
|
31
35
|
* `{"mathjs": "Complex", "re": 2, "im": 3}`
|
|
32
36
|
*/
|
|
33
37
|
|
|
34
|
-
_complex
|
|
38
|
+
_complex["default"].prototype.toJSON = function () {
|
|
35
39
|
return {
|
|
36
40
|
mathjs: 'Complex',
|
|
37
41
|
re: this.re,
|
|
@@ -45,7 +49,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
45
49
|
*/
|
|
46
50
|
|
|
47
51
|
|
|
48
|
-
_complex
|
|
52
|
+
_complex["default"].prototype.toPolar = function () {
|
|
49
53
|
return {
|
|
50
54
|
r: this.abs(),
|
|
51
55
|
phi: this.arg()
|
|
@@ -62,7 +66,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
62
66
|
*/
|
|
63
67
|
|
|
64
68
|
|
|
65
|
-
_complex
|
|
69
|
+
_complex["default"].prototype.format = function (options) {
|
|
66
70
|
var str = '';
|
|
67
71
|
var im = this.im;
|
|
68
72
|
var re = this.re;
|
|
@@ -127,14 +131,14 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
127
131
|
*/
|
|
128
132
|
|
|
129
133
|
|
|
130
|
-
_complex
|
|
134
|
+
_complex["default"].fromPolar = function (args) {
|
|
131
135
|
switch (arguments.length) {
|
|
132
136
|
case 1:
|
|
133
137
|
{
|
|
134
138
|
var arg = arguments[0];
|
|
135
139
|
|
|
136
|
-
if ((0, _typeof2
|
|
137
|
-
return (0, _complex
|
|
140
|
+
if ((0, _typeof2["default"])(arg) === 'object') {
|
|
141
|
+
return (0, _complex["default"])(arg);
|
|
138
142
|
} else {
|
|
139
143
|
throw new TypeError('Input has to be an object with r and phi keys.');
|
|
140
144
|
}
|
|
@@ -152,7 +156,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
152
156
|
}
|
|
153
157
|
|
|
154
158
|
if ((0, _is.isNumber)(phi)) {
|
|
155
|
-
return new _complex
|
|
159
|
+
return new _complex["default"]({
|
|
156
160
|
r: r,
|
|
157
161
|
phi: phi
|
|
158
162
|
});
|
|
@@ -169,7 +173,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
169
173
|
}
|
|
170
174
|
};
|
|
171
175
|
|
|
172
|
-
_complex
|
|
176
|
+
_complex["default"].prototype.valueOf = _complex["default"].prototype.toString;
|
|
173
177
|
/**
|
|
174
178
|
* Create a Complex number from a JSON object
|
|
175
179
|
* @param {Object} json A JSON Object structured as
|
|
@@ -179,8 +183,8 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
179
183
|
* @return {Complex} Returns a new Complex number
|
|
180
184
|
*/
|
|
181
185
|
|
|
182
|
-
_complex
|
|
183
|
-
return new _complex
|
|
186
|
+
_complex["default"].fromJSON = function (json) {
|
|
187
|
+
return new _complex["default"](json);
|
|
184
188
|
};
|
|
185
189
|
/**
|
|
186
190
|
* Compare two complex numbers, `a` and `b`:
|
|
@@ -199,7 +203,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
199
203
|
*/
|
|
200
204
|
|
|
201
205
|
|
|
202
|
-
_complex
|
|
206
|
+
_complex["default"].compare = function (a, b) {
|
|
203
207
|
if (a.re > b.re) {
|
|
204
208
|
return 1;
|
|
205
209
|
}
|
|
@@ -219,7 +223,7 @@ var createComplexClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
|
219
223
|
return 0;
|
|
220
224
|
};
|
|
221
225
|
|
|
222
|
-
return _complex
|
|
226
|
+
return _complex["default"];
|
|
223
227
|
}, {
|
|
224
228
|
isClass: true
|
|
225
229
|
});
|
|
@@ -76,7 +76,7 @@ var createComplex = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fun
|
|
|
76
76
|
string: function string(x) {
|
|
77
77
|
return Complex(x); // for example '2 + 3i'
|
|
78
78
|
},
|
|
79
|
-
null: function _null(x) {
|
|
79
|
+
"null": function _null(x) {
|
|
80
80
|
return Complex(0);
|
|
81
81
|
},
|
|
82
82
|
Object: function Object(x) {
|
|
@@ -90,9 +90,11 @@ var createComplex = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fun
|
|
|
90
90
|
|
|
91
91
|
throw new Error('Expected object with properties (re and im) or (r and phi) or (abs and arg)');
|
|
92
92
|
},
|
|
93
|
-
'Array | Matrix': function
|
|
94
|
-
return
|
|
95
|
-
|
|
93
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
94
|
+
return function (x) {
|
|
95
|
+
return (0, _collection.deepMap)(x, self);
|
|
96
|
+
};
|
|
97
|
+
})
|
|
96
98
|
});
|
|
97
99
|
});
|
|
98
100
|
exports.createComplex = createComplex;
|
|
@@ -17,15 +17,19 @@ var createFractionClass = /* #__PURE__ */(0, _factory.factory)(name, dependencie
|
|
|
17
17
|
/**
|
|
18
18
|
* Attach type information
|
|
19
19
|
*/
|
|
20
|
-
_fraction
|
|
21
|
-
|
|
20
|
+
Object.defineProperty(_fraction["default"], 'name', {
|
|
21
|
+
value: 'Fraction'
|
|
22
|
+
});
|
|
23
|
+
_fraction["default"].prototype.constructor = _fraction["default"];
|
|
24
|
+
_fraction["default"].prototype.type = 'Fraction';
|
|
25
|
+
_fraction["default"].prototype.isFraction = true;
|
|
22
26
|
/**
|
|
23
27
|
* Get a JSON representation of a Fraction containing type information
|
|
24
28
|
* @returns {Object} Returns a JSON object structured as:
|
|
25
29
|
* `{"mathjs": "Fraction", "n": 3, "d": 8}`
|
|
26
30
|
*/
|
|
27
31
|
|
|
28
|
-
_fraction
|
|
32
|
+
_fraction["default"].prototype.toJSON = function () {
|
|
29
33
|
return {
|
|
30
34
|
mathjs: 'Fraction',
|
|
31
35
|
n: this.s * this.n,
|
|
@@ -40,11 +44,11 @@ var createFractionClass = /* #__PURE__ */(0, _factory.factory)(name, dependencie
|
|
|
40
44
|
*/
|
|
41
45
|
|
|
42
46
|
|
|
43
|
-
_fraction
|
|
44
|
-
return new _fraction
|
|
47
|
+
_fraction["default"].fromJSON = function (json) {
|
|
48
|
+
return new _fraction["default"](json);
|
|
45
49
|
};
|
|
46
50
|
|
|
47
|
-
return _fraction
|
|
51
|
+
return _fraction["default"];
|
|
48
52
|
}, {
|
|
49
53
|
isClass: true
|
|
50
54
|
});
|
|
@@ -66,7 +66,7 @@ var createFraction = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fu
|
|
|
66
66
|
'number, number': function numberNumber(numerator, denominator) {
|
|
67
67
|
return new Fraction(numerator, denominator);
|
|
68
68
|
},
|
|
69
|
-
null: function _null(x) {
|
|
69
|
+
"null": function _null(x) {
|
|
70
70
|
return new Fraction(0);
|
|
71
71
|
},
|
|
72
72
|
BigNumber: function BigNumber(x) {
|
|
@@ -78,9 +78,11 @@ var createFraction = /* #__PURE__ */(0, _factory.factory)(name, dependencies, fu
|
|
|
78
78
|
Object: function Object(x) {
|
|
79
79
|
return new Fraction(x);
|
|
80
80
|
},
|
|
81
|
-
'Array | Matrix': function
|
|
82
|
-
return
|
|
83
|
-
|
|
81
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
82
|
+
return function (x) {
|
|
83
|
+
return (0, _collection.deepMap)(x, self);
|
|
84
|
+
};
|
|
85
|
+
})
|
|
84
86
|
});
|
|
85
87
|
});
|
|
86
88
|
exports.createFraction = createFraction;
|
|
@@ -23,7 +23,9 @@ var _DimensionError = require("../../error/DimensionError.js");
|
|
|
23
23
|
|
|
24
24
|
var _factory = require("../../utils/factory.js");
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
var _function = require("../../utils/function.js");
|
|
27
|
+
|
|
28
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
27
29
|
|
|
28
30
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
29
31
|
|
|
@@ -101,6 +103,10 @@ var createDenseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, dependen
|
|
|
101
103
|
*/
|
|
102
104
|
|
|
103
105
|
|
|
106
|
+
Object.defineProperty(DenseMatrix, 'name', {
|
|
107
|
+
value: 'DenseMatrix'
|
|
108
|
+
});
|
|
109
|
+
DenseMatrix.prototype.constructor = DenseMatrix;
|
|
104
110
|
DenseMatrix.prototype.type = 'DenseMatrix';
|
|
105
111
|
DenseMatrix.prototype.isDenseMatrix = true;
|
|
106
112
|
/**
|
|
@@ -600,6 +606,7 @@ var createDenseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, dependen
|
|
|
600
606
|
DenseMatrix.prototype.map = function (callback) {
|
|
601
607
|
// matrix instance
|
|
602
608
|
var me = this;
|
|
609
|
+
var args = (0, _function.maxArgumentCount)(callback);
|
|
603
610
|
|
|
604
611
|
var recurse = function recurse(value, index) {
|
|
605
612
|
if ((0, _is.isArray)(value)) {
|
|
@@ -607,7 +614,15 @@ var createDenseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, dependen
|
|
|
607
614
|
return recurse(child, index.concat(i));
|
|
608
615
|
});
|
|
609
616
|
} else {
|
|
610
|
-
|
|
617
|
+
// invoke the callback function with the right number of arguments
|
|
618
|
+
if (args === 1) {
|
|
619
|
+
return callback(value);
|
|
620
|
+
} else if (args === 2) {
|
|
621
|
+
return callback(value, index);
|
|
622
|
+
} else {
|
|
623
|
+
// 3 or -1
|
|
624
|
+
return callback(value, index, me);
|
|
625
|
+
}
|
|
611
626
|
}
|
|
612
627
|
}; // determine the new datatype when the original matrix has datatype defined
|
|
613
628
|
// TODO: should be done in matrix constructor instead
|
|
@@ -648,15 +663,15 @@ var createDenseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, dependen
|
|
|
648
663
|
*/
|
|
649
664
|
|
|
650
665
|
|
|
651
|
-
DenseMatrix.prototype[Symbol.iterator] = /*#__PURE__*/_regenerator
|
|
666
|
+
DenseMatrix.prototype[Symbol.iterator] = /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
652
667
|
var recurse;
|
|
653
|
-
return _regenerator
|
|
668
|
+
return _regenerator["default"].wrap(function _callee$(_context2) {
|
|
654
669
|
while (1) {
|
|
655
670
|
switch (_context2.prev = _context2.next) {
|
|
656
671
|
case 0:
|
|
657
|
-
recurse = /*#__PURE__*/_regenerator
|
|
672
|
+
recurse = /*#__PURE__*/_regenerator["default"].mark(function recurse(value, index) {
|
|
658
673
|
var i;
|
|
659
|
-
return _regenerator
|
|
674
|
+
return _regenerator["default"].wrap(function recurse$(_context) {
|
|
660
675
|
while (1) {
|
|
661
676
|
switch (_context.prev = _context.next) {
|
|
662
677
|
case 0:
|
|
@@ -23,6 +23,8 @@ var _factory = require("../../utils/factory.js");
|
|
|
23
23
|
|
|
24
24
|
var _DimensionError = require("../../error/DimensionError.js");
|
|
25
25
|
|
|
26
|
+
var _function = require("../../utils/function.js");
|
|
27
|
+
|
|
26
28
|
var name = 'SparseMatrix';
|
|
27
29
|
var dependencies = ['typed', 'equalScalar', 'Matrix'];
|
|
28
30
|
var createSparseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
@@ -182,6 +184,10 @@ var createSparseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, depende
|
|
|
182
184
|
*/
|
|
183
185
|
|
|
184
186
|
|
|
187
|
+
Object.defineProperty(SparseMatrix, 'name', {
|
|
188
|
+
value: 'SparseMatrix'
|
|
189
|
+
});
|
|
190
|
+
SparseMatrix.prototype.constructor = SparseMatrix;
|
|
185
191
|
SparseMatrix.prototype.type = 'SparseMatrix';
|
|
186
192
|
SparseMatrix.prototype.isSparseMatrix = true;
|
|
187
193
|
/**
|
|
@@ -935,8 +941,12 @@ var createSparseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, depende
|
|
|
935
941
|
var rows = this._size[0];
|
|
936
942
|
var columns = this._size[1]; // invoke callback
|
|
937
943
|
|
|
944
|
+
var args = (0, _function.maxArgumentCount)(callback);
|
|
945
|
+
|
|
938
946
|
var invoke = function invoke(v, i, j) {
|
|
939
947
|
// invoke callback
|
|
948
|
+
if (args === 1) return callback(v);
|
|
949
|
+
if (args === 2) return callback(v, [i, j]);
|
|
940
950
|
return callback(v, [i, j], me);
|
|
941
951
|
}; // invoke _map
|
|
942
952
|
|
|
@@ -1087,9 +1097,9 @@ var createSparseMatrixClass = /* #__PURE__ */(0, _factory.factory)(name, depende
|
|
|
1087
1097
|
*/
|
|
1088
1098
|
|
|
1089
1099
|
|
|
1090
|
-
SparseMatrix.prototype[Symbol.iterator] = /*#__PURE__*/_regenerator
|
|
1100
|
+
SparseMatrix.prototype[Symbol.iterator] = /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
1091
1101
|
var columns, j, k0, k1, k, i;
|
|
1092
|
-
return _regenerator
|
|
1102
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
1093
1103
|
while (1) {
|
|
1094
1104
|
switch (_context.prev = _context.next) {
|
|
1095
1105
|
case 0:
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo01xDSid = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo01xDSid';
|
|
13
13
|
var dependencies = ['typed'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo01xDSid = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed;
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -114,4 +114,4 @@ var createAlgorithm01 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
114
114
|
});
|
|
115
115
|
};
|
|
116
116
|
});
|
|
117
|
-
exports.
|
|
117
|
+
exports.createMatAlgo01xDSid = createMatAlgo01xDSid;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo02xDS0 = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo02xDS0';
|
|
13
13
|
var dependencies = ['typed', 'equalScalar'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo02xDS0 = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed,
|
|
16
16
|
equalScalar = _ref.equalScalar;
|
|
17
17
|
|
|
@@ -34,7 +34,7 @@ var createAlgorithm02 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
34
34
|
*
|
|
35
35
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97477571
|
|
36
36
|
*/
|
|
37
|
-
return function
|
|
37
|
+
return function matAlgo02xDS0(denseMatrix, sparseMatrix, callback, inverse) {
|
|
38
38
|
// dense matrix arrays
|
|
39
39
|
var adata = denseMatrix._data;
|
|
40
40
|
var asize = denseMatrix._size;
|
|
@@ -118,4 +118,4 @@ var createAlgorithm02 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
118
118
|
});
|
|
119
119
|
};
|
|
120
120
|
});
|
|
121
|
-
exports.
|
|
121
|
+
exports.createMatAlgo02xDS0 = createMatAlgo02xDS0;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo03xDSf = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo03xDSf';
|
|
13
13
|
var dependencies = ['typed'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo03xDSf = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed;
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -33,7 +33,7 @@ var createAlgorithm03 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
33
33
|
*
|
|
34
34
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97477571
|
|
35
35
|
*/
|
|
36
|
-
return function
|
|
36
|
+
return function matAlgo03xDSf(denseMatrix, sparseMatrix, callback, inverse) {
|
|
37
37
|
// dense matrix arrays
|
|
38
38
|
var adata = denseMatrix._data;
|
|
39
39
|
var asize = denseMatrix._size;
|
|
@@ -124,4 +124,4 @@ var createAlgorithm03 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
124
124
|
});
|
|
125
125
|
};
|
|
126
126
|
});
|
|
127
|
-
exports.
|
|
127
|
+
exports.createMatAlgo03xDSf = createMatAlgo03xDSf;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo04xSidSid = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo04xSidSid';
|
|
13
13
|
var dependencies = ['typed', 'equalScalar'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo04xSidSid = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed,
|
|
16
16
|
equalScalar = _ref.equalScalar;
|
|
17
17
|
|
|
@@ -21,8 +21,8 @@ var createAlgorithm04 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
21
21
|
*
|
|
22
22
|
*
|
|
23
23
|
* ┌ f(Aij, Bij) ; A(i,j) !== 0 && B(i,j) !== 0
|
|
24
|
-
* C(i,j) = ┤ A(i,j) ; A(i,j) !== 0
|
|
25
|
-
* └ B(i,j) ;
|
|
24
|
+
* C(i,j) = ┤ A(i,j) ; A(i,j) !== 0 && B(i,j) === 0
|
|
25
|
+
* └ B(i,j) ; A(i,j) === 0
|
|
26
26
|
*
|
|
27
27
|
*
|
|
28
28
|
* @param {Matrix} a The SparseMatrix instance (A)
|
|
@@ -33,7 +33,7 @@ var createAlgorithm04 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
33
33
|
*
|
|
34
34
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97620294
|
|
35
35
|
*/
|
|
36
|
-
return function
|
|
36
|
+
return function matAlgo04xSidSid(a, b, callback) {
|
|
37
37
|
// sparse matrix arrays
|
|
38
38
|
var avalues = a._values;
|
|
39
39
|
var aindex = a._index;
|
|
@@ -181,4 +181,4 @@ var createAlgorithm04 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
181
181
|
});
|
|
182
182
|
};
|
|
183
183
|
});
|
|
184
|
-
exports.
|
|
184
|
+
exports.createMatAlgo04xSidSid = createMatAlgo04xSidSid;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo05xSfSf = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo05xSfSf';
|
|
13
13
|
var dependencies = ['typed', 'equalScalar'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo05xSfSf = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed,
|
|
16
16
|
equalScalar = _ref.equalScalar;
|
|
17
17
|
|
|
@@ -33,7 +33,7 @@ var createAlgorithm05 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
33
33
|
*
|
|
34
34
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97620294
|
|
35
35
|
*/
|
|
36
|
-
return function
|
|
36
|
+
return function matAlgo05xSfSf(a, b, callback) {
|
|
37
37
|
// sparse matrix arrays
|
|
38
38
|
var avalues = a._values;
|
|
39
39
|
var aindex = a._index;
|
|
@@ -174,4 +174,4 @@ var createAlgorithm05 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
174
174
|
});
|
|
175
175
|
};
|
|
176
176
|
});
|
|
177
|
-
exports.
|
|
177
|
+
exports.createMatAlgo05xSfSf = createMatAlgo05xSfSf;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo06xS0S0 = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
@@ -11,9 +11,9 @@ var _DimensionError = require("../../../error/DimensionError.js");
|
|
|
11
11
|
|
|
12
12
|
var _collection = require("../../../utils/collection.js");
|
|
13
13
|
|
|
14
|
-
var name = '
|
|
14
|
+
var name = 'matAlgo06xS0S0';
|
|
15
15
|
var dependencies = ['typed', 'equalScalar'];
|
|
16
|
-
var
|
|
16
|
+
var createMatAlgo06xS0S0 = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
17
17
|
var typed = _ref.typed,
|
|
18
18
|
equalScalar = _ref.equalScalar;
|
|
19
19
|
|
|
@@ -35,7 +35,7 @@ var createAlgorithm06 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
35
35
|
*
|
|
36
36
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97620294
|
|
37
37
|
*/
|
|
38
|
-
return function
|
|
38
|
+
return function matAlgo06xS0S0(a, b, callback) {
|
|
39
39
|
// sparse matrix arrays
|
|
40
40
|
var avalues = a._values;
|
|
41
41
|
var asize = a._size;
|
|
@@ -155,4 +155,4 @@ var createAlgorithm06 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
155
155
|
});
|
|
156
156
|
};
|
|
157
157
|
});
|
|
158
|
-
exports.
|
|
158
|
+
exports.createMatAlgo06xS0S0 = createMatAlgo06xS0S0;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.createMatAlgo07xSSf = void 0;
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../../utils/factory.js");
|
|
9
9
|
|
|
10
10
|
var _DimensionError = require("../../../error/DimensionError.js");
|
|
11
11
|
|
|
12
|
-
var name = '
|
|
12
|
+
var name = 'matAlgo07xSSf';
|
|
13
13
|
var dependencies = ['typed', 'DenseMatrix'];
|
|
14
|
-
var
|
|
14
|
+
var createMatAlgo07xSSf = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed,
|
|
16
16
|
DenseMatrix = _ref.DenseMatrix;
|
|
17
17
|
|
|
@@ -29,7 +29,7 @@ var createAlgorithm07 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
29
29
|
*
|
|
30
30
|
* see https://github.com/josdejong/mathjs/pull/346#issuecomment-97620294
|
|
31
31
|
*/
|
|
32
|
-
return function
|
|
32
|
+
return function matAlgo07xSSf(a, b, callback) {
|
|
33
33
|
// sparse matrix arrays
|
|
34
34
|
var asize = a._size;
|
|
35
35
|
var adt = a._datatype; // sparse matrix arrays
|
|
@@ -123,4 +123,4 @@ var createAlgorithm07 = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
});
|
|
126
|
-
exports.
|
|
126
|
+
exports.createMatAlgo07xSSf = createMatAlgo07xSSf;
|