mathjs 10.6.2 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HISTORY.md +74 -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/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 +22 -30
- 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 +87 -114
- 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 +9 -26
- 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 +56 -46
- 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 +33 -27
- package/lib/cjs/function/arithmetic/floor.js +56 -46
- 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 +1 -1
- 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 +80 -92
- 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 +5 -3
- 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 +68 -81
- package/lib/cjs/function/bitwise/rightArithShift.js +68 -81
- package/lib/cjs/function/bitwise/rightLogShift.js +68 -81
- 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/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 +10 -7
- 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/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/trigonometry/acos.js +4 -8
- package/lib/cjs/function/trigonometry/acosh.js +2 -7
- package/lib/cjs/function/trigonometry/acot.js +4 -8
- package/lib/cjs/function/trigonometry/acoth.js +4 -8
- package/lib/cjs/function/trigonometry/acsc.js +4 -8
- package/lib/cjs/function/trigonometry/acsch.js +4 -8
- package/lib/cjs/function/trigonometry/asec.js +4 -8
- package/lib/cjs/function/trigonometry/asech.js +4 -8
- package/lib/cjs/function/trigonometry/asin.js +4 -9
- package/lib/cjs/function/trigonometry/asinh.js +4 -9
- package/lib/cjs/function/trigonometry/atan.js +4 -9
- package/lib/cjs/function/trigonometry/atan2.js +24 -62
- 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/hasNumericValue.js +4 -0
- package/lib/cjs/function/utils/isInteger.js +5 -3
- package/lib/cjs/function/utils/isNegative.js +10 -6
- package/lib/cjs/function/utils/isNumeric.js +5 -3
- package/lib/cjs/function/utils/isPositive.js +10 -6
- package/lib/cjs/function/utils/isPrime.js +5 -3
- package/lib/cjs/function/utils/isZero.js +10 -6
- 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 +69 -21
- package/lib/cjs/type/unit/function/createUnit.js +2 -1
- package/lib/cjs/type/unit/function/unit.js +9 -3
- 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/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 +22 -30
- 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 +82 -112
- 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 +9 -26
- 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 +17 -17
- package/lib/esm/function/arithmetic/floor.js +25 -25
- package/lib/esm/function/arithmetic/gcd.js +26 -70
- package/lib/esm/function/arithmetic/hypot.js +7 -6
- 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 +38 -73
- 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 +1 -3
- 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 +38 -60
- package/lib/esm/function/bitwise/rightArithShift.js +38 -60
- package/lib/esm/function/bitwise/rightLogShift.js +38 -60
- 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/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 +2 -7
- package/lib/esm/function/matrix/ones.js +2 -1
- 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/trigonometry/acos.js +4 -7
- package/lib/esm/function/trigonometry/acosh.js +2 -6
- package/lib/esm/function/trigonometry/acot.js +4 -7
- package/lib/esm/function/trigonometry/acoth.js +4 -7
- package/lib/esm/function/trigonometry/acsc.js +4 -7
- package/lib/esm/function/trigonometry/acsch.js +4 -7
- package/lib/esm/function/trigonometry/asec.js +4 -7
- package/lib/esm/function/trigonometry/asech.js +4 -7
- package/lib/esm/function/trigonometry/asin.js +4 -8
- package/lib/esm/function/trigonometry/asinh.js +4 -8
- package/lib/esm/function/trigonometry/atan.js +4 -8
- package/lib/esm/function/trigonometry/atan2.js +25 -64
- 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/hasNumericValue.js +2 -0
- package/lib/esm/function/utils/isInteger.js +1 -3
- package/lib/esm/function/utils/isNegative.js +2 -6
- package/lib/esm/function/utils/isNumeric.js +3 -9
- package/lib/esm/function/utils/isPositive.js +2 -6
- package/lib/esm/function/utils/isPrime.js +1 -3
- package/lib/esm/function/utils/isZero.js +2 -6
- 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 +61 -13
- package/lib/esm/type/unit/function/createUnit.js +2 -1
- package/lib/esm/type/unit/function/unit.js +5 -3
- 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 +21 -24
- package/types/index.d.ts +202 -181
- package/types/index.ts +264 -57
- package/lib/cjs/utils/polyfills.js +0 -14
- package/lib/esm/utils/polyfills.js +0 -12
|
@@ -7,15 +7,13 @@ exports.createGcd = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _matAlgo01xDSid = require("../../type/matrix/utils/matAlgo01xDSid.js");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _matAlgo04xSidSid = require("../../type/matrix/utils/matAlgo04xSidSid.js");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _matAlgo10xSids = require("../../type/matrix/utils/matAlgo10xSids.js");
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _algorithm5 = require("../../type/matrix/utils/algorithm14.js");
|
|
16
|
+
var _matrixAlgorithmSuite = require("../../type/matrix/utils/matrixAlgorithmSuite.js");
|
|
19
17
|
|
|
20
18
|
var _index = require("../../plain/number/index.js");
|
|
21
19
|
|
|
@@ -27,22 +25,33 @@ var createGcd = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
27
25
|
equalScalar = _ref.equalScalar,
|
|
28
26
|
BigNumber = _ref.BigNumber,
|
|
29
27
|
DenseMatrix = _ref.DenseMatrix;
|
|
30
|
-
var
|
|
28
|
+
var matAlgo01xDSid = (0, _matAlgo01xDSid.createMatAlgo01xDSid)({
|
|
31
29
|
typed: typed
|
|
32
30
|
});
|
|
33
|
-
var
|
|
31
|
+
var matAlgo04xSidSid = (0, _matAlgo04xSidSid.createMatAlgo04xSidSid)({
|
|
34
32
|
typed: typed,
|
|
35
33
|
equalScalar: equalScalar
|
|
36
34
|
});
|
|
37
|
-
var
|
|
35
|
+
var matAlgo10xSids = (0, _matAlgo10xSids.createMatAlgo10xSids)({
|
|
38
36
|
typed: typed,
|
|
39
37
|
DenseMatrix: DenseMatrix
|
|
40
38
|
});
|
|
41
|
-
var
|
|
42
|
-
typed: typed
|
|
39
|
+
var matrixAlgorithmSuite = (0, _matrixAlgorithmSuite.createMatrixAlgorithmSuite)({
|
|
40
|
+
typed: typed,
|
|
41
|
+
matrix: matrix
|
|
43
42
|
});
|
|
44
|
-
var
|
|
45
|
-
|
|
43
|
+
var gcdTypes = 'number | BigNumber | Fraction | Matrix | Array';
|
|
44
|
+
var gcdManySignature = {};
|
|
45
|
+
gcdManySignature["".concat(gcdTypes, ", ").concat(gcdTypes, ", ...").concat(gcdTypes)] = typed.referToSelf(function (self) {
|
|
46
|
+
return function (a, b, args) {
|
|
47
|
+
var res = self(a, b);
|
|
48
|
+
|
|
49
|
+
for (var i = 0; i < args.length; i++) {
|
|
50
|
+
res = self(res, args[i]);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
return res;
|
|
54
|
+
};
|
|
46
55
|
});
|
|
47
56
|
/**
|
|
48
57
|
* Calculate the greatest common divisor for two or more values or arrays.
|
|
@@ -75,62 +84,12 @@ var createGcd = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
75
84
|
'BigNumber, BigNumber': _gcdBigNumber,
|
|
76
85
|
'Fraction, Fraction': function FractionFraction(x, y) {
|
|
77
86
|
return x.gcd(y);
|
|
78
|
-
},
|
|
79
|
-
'SparseMatrix, SparseMatrix': function SparseMatrixSparseMatrix(x, y) {
|
|
80
|
-
return algorithm04(x, y, this);
|
|
81
|
-
},
|
|
82
|
-
'SparseMatrix, DenseMatrix': function SparseMatrixDenseMatrix(x, y) {
|
|
83
|
-
return algorithm01(y, x, this, true);
|
|
84
|
-
},
|
|
85
|
-
'DenseMatrix, SparseMatrix': function DenseMatrixSparseMatrix(x, y) {
|
|
86
|
-
return algorithm01(x, y, this, false);
|
|
87
|
-
},
|
|
88
|
-
'DenseMatrix, DenseMatrix': function DenseMatrixDenseMatrix(x, y) {
|
|
89
|
-
return algorithm13(x, y, this);
|
|
90
|
-
},
|
|
91
|
-
'Array, Array': function ArrayArray(x, y) {
|
|
92
|
-
// use matrix implementation
|
|
93
|
-
return this(matrix(x), matrix(y)).valueOf();
|
|
94
|
-
},
|
|
95
|
-
'Array, Matrix': function ArrayMatrix(x, y) {
|
|
96
|
-
// use matrix implementation
|
|
97
|
-
return this(matrix(x), y);
|
|
98
|
-
},
|
|
99
|
-
'Matrix, Array': function MatrixArray(x, y) {
|
|
100
|
-
// use matrix implementation
|
|
101
|
-
return this(x, matrix(y));
|
|
102
|
-
},
|
|
103
|
-
'SparseMatrix, number | BigNumber': function SparseMatrixNumberBigNumber(x, y) {
|
|
104
|
-
return algorithm10(x, y, this, false);
|
|
105
|
-
},
|
|
106
|
-
'DenseMatrix, number | BigNumber': function DenseMatrixNumberBigNumber(x, y) {
|
|
107
|
-
return algorithm14(x, y, this, false);
|
|
108
|
-
},
|
|
109
|
-
'number | BigNumber, SparseMatrix': function numberBigNumberSparseMatrix(x, y) {
|
|
110
|
-
return algorithm10(y, x, this, true);
|
|
111
|
-
},
|
|
112
|
-
'number | BigNumber, DenseMatrix': function numberBigNumberDenseMatrix(x, y) {
|
|
113
|
-
return algorithm14(y, x, this, true);
|
|
114
|
-
},
|
|
115
|
-
'Array, number | BigNumber': function ArrayNumberBigNumber(x, y) {
|
|
116
|
-
// use matrix implementation
|
|
117
|
-
return algorithm14(matrix(x), y, this, false).valueOf();
|
|
118
|
-
},
|
|
119
|
-
'number | BigNumber, Array': function numberBigNumberArray(x, y) {
|
|
120
|
-
// use matrix implementation
|
|
121
|
-
return algorithm14(matrix(y), x, this, true).valueOf();
|
|
122
|
-
},
|
|
123
|
-
// TODO: need a smarter notation here
|
|
124
|
-
'Array | Matrix | number | BigNumber, Array | Matrix | number | BigNumber, ...Array | Matrix | number | BigNumber': function ArrayMatrixNumberBigNumberArrayMatrixNumberBigNumberArrayMatrixNumberBigNumber(a, b, args) {
|
|
125
|
-
var res = this(a, b);
|
|
126
|
-
|
|
127
|
-
for (var i = 0; i < args.length; i++) {
|
|
128
|
-
res = this(res, args[i]);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
return res;
|
|
132
87
|
}
|
|
133
|
-
}
|
|
88
|
+
}, matrixAlgorithmSuite({
|
|
89
|
+
SS: matAlgo04xSidSid,
|
|
90
|
+
DS: matAlgo01xDSid,
|
|
91
|
+
Ss: matAlgo10xSids
|
|
92
|
+
}), gcdManySignature);
|
|
134
93
|
/**
|
|
135
94
|
* Calculate gcd for BigNumbers
|
|
136
95
|
* @param {BigNumber} a
|
|
@@ -9,6 +9,8 @@ var _factory = require("../../utils/factory.js");
|
|
|
9
9
|
|
|
10
10
|
var _array = require("../../utils/array.js");
|
|
11
11
|
|
|
12
|
+
var _is = require("../../utils/is.js");
|
|
13
|
+
|
|
12
14
|
var name = 'hypot';
|
|
13
15
|
var dependencies = ['typed', 'abs', 'addScalar', 'divideScalar', 'multiplyScalar', 'sqrt', 'smaller', 'isPositive'];
|
|
14
16
|
var createHypot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
@@ -51,11 +53,9 @@ var createHypot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
|
51
53
|
*/
|
|
52
54
|
return typed(name, {
|
|
53
55
|
'... number | BigNumber': _hypot,
|
|
54
|
-
Array:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
Matrix: function Matrix(x) {
|
|
58
|
-
return this.apply(this, (0, _array.flatten)(x.toArray()));
|
|
56
|
+
Array: _hypot,
|
|
57
|
+
Matrix: function Matrix(M) {
|
|
58
|
+
return _hypot((0, _array.flatten)(M.toArray()));
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
61
|
/**
|
|
@@ -72,6 +72,10 @@ var createHypot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
|
72
72
|
var largest = 0;
|
|
73
73
|
|
|
74
74
|
for (var i = 0; i < args.length; i++) {
|
|
75
|
+
if ((0, _is.isComplex)(args[i])) {
|
|
76
|
+
throw new TypeError('Unexpected type of argument to hypot');
|
|
77
|
+
}
|
|
78
|
+
|
|
75
79
|
var value = abs(args[i]);
|
|
76
80
|
|
|
77
81
|
if (smaller(largest, value)) {
|
|
@@ -60,7 +60,7 @@ var createInvmod = /* #__PURE__ */(0, _factory.factory)(name, dependencies, func
|
|
|
60
60
|
res = res.valueOf();
|
|
61
61
|
|
|
62
62
|
var _res = res,
|
|
63
|
-
_res2 = (0, _slicedToArray2
|
|
63
|
+
_res2 = (0, _slicedToArray2["default"])(_res, 2),
|
|
64
64
|
gcd = _res2[0],
|
|
65
65
|
inv = _res2[1];
|
|
66
66
|
|
|
@@ -7,15 +7,13 @@ exports.createLcm = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _matAlgo02xDS = require("../../type/matrix/utils/matAlgo02xDS0.js");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _matAlgo06xS0S = require("../../type/matrix/utils/matAlgo06xS0S0.js");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _matAlgo11xS0s = require("../../type/matrix/utils/matAlgo11xS0s.js");
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _algorithm5 = require("../../type/matrix/utils/algorithm14.js");
|
|
16
|
+
var _matrixAlgorithmSuite = require("../../type/matrix/utils/matrixAlgorithmSuite.js");
|
|
19
17
|
|
|
20
18
|
var _index = require("../../plain/number/index.js");
|
|
21
19
|
|
|
@@ -25,23 +23,34 @@ var createLcm = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
25
23
|
var typed = _ref.typed,
|
|
26
24
|
matrix = _ref.matrix,
|
|
27
25
|
equalScalar = _ref.equalScalar;
|
|
28
|
-
var
|
|
26
|
+
var matAlgo02xDS0 = (0, _matAlgo02xDS.createMatAlgo02xDS0)({
|
|
29
27
|
typed: typed,
|
|
30
28
|
equalScalar: equalScalar
|
|
31
29
|
});
|
|
32
|
-
var
|
|
30
|
+
var matAlgo06xS0S0 = (0, _matAlgo06xS0S.createMatAlgo06xS0S0)({
|
|
33
31
|
typed: typed,
|
|
34
32
|
equalScalar: equalScalar
|
|
35
33
|
});
|
|
36
|
-
var
|
|
34
|
+
var matAlgo11xS0s = (0, _matAlgo11xS0s.createMatAlgo11xS0s)({
|
|
37
35
|
typed: typed,
|
|
38
36
|
equalScalar: equalScalar
|
|
39
37
|
});
|
|
40
|
-
var
|
|
41
|
-
typed: typed
|
|
38
|
+
var matrixAlgorithmSuite = (0, _matrixAlgorithmSuite.createMatrixAlgorithmSuite)({
|
|
39
|
+
typed: typed,
|
|
40
|
+
matrix: matrix
|
|
42
41
|
});
|
|
43
|
-
var
|
|
44
|
-
|
|
42
|
+
var lcmTypes = 'number | BigNumber | Fraction | Matrix | Array';
|
|
43
|
+
var lcmManySignature = {};
|
|
44
|
+
lcmManySignature["".concat(lcmTypes, ", ").concat(lcmTypes, ", ...").concat(lcmTypes)] = typed.referToSelf(function (self) {
|
|
45
|
+
return function (a, b, args) {
|
|
46
|
+
var res = self(a, b);
|
|
47
|
+
|
|
48
|
+
for (var i = 0; i < args.length; i++) {
|
|
49
|
+
res = self(res, args[i]);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return res;
|
|
53
|
+
};
|
|
45
54
|
});
|
|
46
55
|
/**
|
|
47
56
|
* Calculate the least common multiple for two or more values or arrays.
|
|
@@ -78,62 +87,12 @@ var createLcm = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
78
87
|
'BigNumber, BigNumber': _lcmBigNumber,
|
|
79
88
|
'Fraction, Fraction': function FractionFraction(x, y) {
|
|
80
89
|
return x.lcm(y);
|
|
81
|
-
},
|
|
82
|
-
'SparseMatrix, SparseMatrix': function SparseMatrixSparseMatrix(x, y) {
|
|
83
|
-
return algorithm06(x, y, this);
|
|
84
|
-
},
|
|
85
|
-
'SparseMatrix, DenseMatrix': function SparseMatrixDenseMatrix(x, y) {
|
|
86
|
-
return algorithm02(y, x, this, true);
|
|
87
|
-
},
|
|
88
|
-
'DenseMatrix, SparseMatrix': function DenseMatrixSparseMatrix(x, y) {
|
|
89
|
-
return algorithm02(x, y, this, false);
|
|
90
|
-
},
|
|
91
|
-
'DenseMatrix, DenseMatrix': function DenseMatrixDenseMatrix(x, y) {
|
|
92
|
-
return algorithm13(x, y, this);
|
|
93
|
-
},
|
|
94
|
-
'Array, Array': function ArrayArray(x, y) {
|
|
95
|
-
// use matrix implementation
|
|
96
|
-
return this(matrix(x), matrix(y)).valueOf();
|
|
97
|
-
},
|
|
98
|
-
'Array, Matrix': function ArrayMatrix(x, y) {
|
|
99
|
-
// use matrix implementation
|
|
100
|
-
return this(matrix(x), y);
|
|
101
|
-
},
|
|
102
|
-
'Matrix, Array': function MatrixArray(x, y) {
|
|
103
|
-
// use matrix implementation
|
|
104
|
-
return this(x, matrix(y));
|
|
105
|
-
},
|
|
106
|
-
'SparseMatrix, number | BigNumber': function SparseMatrixNumberBigNumber(x, y) {
|
|
107
|
-
return algorithm11(x, y, this, false);
|
|
108
|
-
},
|
|
109
|
-
'DenseMatrix, number | BigNumber': function DenseMatrixNumberBigNumber(x, y) {
|
|
110
|
-
return algorithm14(x, y, this, false);
|
|
111
|
-
},
|
|
112
|
-
'number | BigNumber, SparseMatrix': function numberBigNumberSparseMatrix(x, y) {
|
|
113
|
-
return algorithm11(y, x, this, true);
|
|
114
|
-
},
|
|
115
|
-
'number | BigNumber, DenseMatrix': function numberBigNumberDenseMatrix(x, y) {
|
|
116
|
-
return algorithm14(y, x, this, true);
|
|
117
|
-
},
|
|
118
|
-
'Array, number | BigNumber': function ArrayNumberBigNumber(x, y) {
|
|
119
|
-
// use matrix implementation
|
|
120
|
-
return algorithm14(matrix(x), y, this, false).valueOf();
|
|
121
|
-
},
|
|
122
|
-
'number | BigNumber, Array': function numberBigNumberArray(x, y) {
|
|
123
|
-
// use matrix implementation
|
|
124
|
-
return algorithm14(matrix(y), x, this, true).valueOf();
|
|
125
|
-
},
|
|
126
|
-
// TODO: need a smarter notation here
|
|
127
|
-
'Array | Matrix | number | BigNumber, Array | Matrix | number | BigNumber, ...Array | Matrix | number | BigNumber': function ArrayMatrixNumberBigNumberArrayMatrixNumberBigNumberArrayMatrixNumberBigNumber(a, b, args) {
|
|
128
|
-
var res = this(a, b);
|
|
129
|
-
|
|
130
|
-
for (var i = 0; i < args.length; i++) {
|
|
131
|
-
res = this(res, args[i]);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
return res;
|
|
135
90
|
}
|
|
136
|
-
}
|
|
91
|
+
}, matrixAlgorithmSuite({
|
|
92
|
+
SS: matAlgo06xS0S0,
|
|
93
|
+
DS: matAlgo02xDS0,
|
|
94
|
+
Ss: matAlgo11xS0s
|
|
95
|
+
}), lcmManySignature);
|
|
137
96
|
/**
|
|
138
97
|
* Calculate lcm for two BigNumbers
|
|
139
98
|
* @param {BigNumber} a
|
|
@@ -7,8 +7,6 @@ exports.createLog = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var _collection = require("../../utils/collection.js");
|
|
11
|
-
|
|
12
10
|
var _index = require("../../plain/number/index.js");
|
|
13
11
|
|
|
14
12
|
var name = 'log';
|
|
@@ -22,7 +20,8 @@ var createLog = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
22
20
|
/**
|
|
23
21
|
* Calculate the logarithm of a value.
|
|
24
22
|
*
|
|
25
|
-
*
|
|
23
|
+
* To avoid confusion with the matrix logarithm, this function does not
|
|
24
|
+
* apply to matrices.
|
|
26
25
|
*
|
|
27
26
|
* Syntax:
|
|
28
27
|
*
|
|
@@ -45,12 +44,12 @@ var createLog = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
45
44
|
*
|
|
46
45
|
* exp, log2, log10, log1p
|
|
47
46
|
*
|
|
48
|
-
* @param {number | BigNumber | Complex
|
|
47
|
+
* @param {number | BigNumber | Complex} x
|
|
49
48
|
* Value for which to calculate the logarithm.
|
|
50
49
|
* @param {number | BigNumber | Complex} [base=e]
|
|
51
50
|
* Optional base for the logarithm. If not provided, the natural
|
|
52
51
|
* logarithm of `x` is calculated.
|
|
53
|
-
* @return {number | BigNumber | Complex
|
|
52
|
+
* @return {number | BigNumber | Complex}
|
|
54
53
|
* Returns the logarithm of `x`
|
|
55
54
|
*/
|
|
56
55
|
return typed(name, {
|
|
@@ -73,13 +72,12 @@ var createLog = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
73
72
|
return new Complex(x.toNumber(), 0).log();
|
|
74
73
|
}
|
|
75
74
|
},
|
|
76
|
-
'
|
|
77
|
-
return
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
}
|
|
75
|
+
'any, any': typed.referToSelf(function (self) {
|
|
76
|
+
return function (x, base) {
|
|
77
|
+
// calculate logarithm for a specified base, log(x, base)
|
|
78
|
+
return divideScalar(self(x), self(base));
|
|
79
|
+
};
|
|
80
|
+
})
|
|
83
81
|
});
|
|
84
82
|
});
|
|
85
83
|
exports.createLog = createLog;
|
|
@@ -63,9 +63,11 @@ var createLog10 = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
|
63
63
|
return new _Complex(x.toNumber(), 0).log().div(Math.LN10);
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
|
-
'Array | Matrix': function
|
|
67
|
-
return
|
|
68
|
-
|
|
66
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
67
|
+
return function (x) {
|
|
68
|
+
return (0, _collection.deepMap)(x, self);
|
|
69
|
+
};
|
|
70
|
+
})
|
|
69
71
|
});
|
|
70
72
|
});
|
|
71
73
|
exports.createLog10 = createLog10;
|
|
@@ -71,13 +71,17 @@ var createLog1p = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
|
71
71
|
return _log1pComplex(new Complex(x.toNumber(), 0));
|
|
72
72
|
}
|
|
73
73
|
},
|
|
74
|
-
'Array | Matrix': function
|
|
75
|
-
return
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
74
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
75
|
+
return function (x) {
|
|
76
|
+
return (0, _collection.deepMap)(x, self);
|
|
77
|
+
};
|
|
78
|
+
}),
|
|
79
|
+
'any, any': typed.referToSelf(function (self) {
|
|
80
|
+
return function (x, base) {
|
|
81
|
+
// calculate logarithm for a specified base, log1p(x, base)
|
|
82
|
+
return divideScalar(self(x), log(base));
|
|
83
|
+
};
|
|
84
|
+
})
|
|
81
85
|
});
|
|
82
86
|
/**
|
|
83
87
|
* Calculate the natural logarithm of a complex number + 1
|
|
@@ -61,9 +61,11 @@ var createLog2 = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
61
61
|
return _log2Complex(new Complex(x.toNumber(), 0));
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
|
-
'Array | Matrix': function
|
|
65
|
-
return
|
|
66
|
-
|
|
64
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
65
|
+
return function (x) {
|
|
66
|
+
return (0, _collection.deepMap)(x, self);
|
|
67
|
+
};
|
|
68
|
+
})
|
|
67
69
|
});
|
|
68
70
|
/**
|
|
69
71
|
* Calculate log2 for a complex value
|
|
@@ -7,22 +7,20 @@ exports.createMod = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _matAlgo02xDS = require("../../type/matrix/utils/matAlgo02xDS0.js");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _matAlgo03xDSf = require("../../type/matrix/utils/matAlgo03xDSf.js");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _matAlgo05xSfSf = require("../../type/matrix/utils/matAlgo05xSfSf.js");
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _matAlgo11xS0s = require("../../type/matrix/utils/matAlgo11xS0s.js");
|
|
17
17
|
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
var _algorithm6 = require("../../type/matrix/utils/algorithm13.js");
|
|
21
|
-
|
|
22
|
-
var _algorithm7 = require("../../type/matrix/utils/algorithm14.js");
|
|
18
|
+
var _matAlgo12xSfs = require("../../type/matrix/utils/matAlgo12xSfs.js");
|
|
23
19
|
|
|
24
20
|
var _index = require("../../plain/number/index.js");
|
|
25
21
|
|
|
22
|
+
var _matrixAlgorithmSuite = require("../../type/matrix/utils/matrixAlgorithmSuite.js");
|
|
23
|
+
|
|
26
24
|
var name = 'mod';
|
|
27
25
|
var dependencies = ['typed', 'matrix', 'equalScalar', 'DenseMatrix'];
|
|
28
26
|
var createMod = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
@@ -30,30 +28,28 @@ var createMod = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
30
28
|
matrix = _ref.matrix,
|
|
31
29
|
equalScalar = _ref.equalScalar,
|
|
32
30
|
DenseMatrix = _ref.DenseMatrix;
|
|
33
|
-
var
|
|
31
|
+
var matAlgo02xDS0 = (0, _matAlgo02xDS.createMatAlgo02xDS0)({
|
|
34
32
|
typed: typed,
|
|
35
33
|
equalScalar: equalScalar
|
|
36
34
|
});
|
|
37
|
-
var
|
|
35
|
+
var matAlgo03xDSf = (0, _matAlgo03xDSf.createMatAlgo03xDSf)({
|
|
38
36
|
typed: typed
|
|
39
37
|
});
|
|
40
|
-
var
|
|
38
|
+
var matAlgo05xSfSf = (0, _matAlgo05xSfSf.createMatAlgo05xSfSf)({
|
|
41
39
|
typed: typed,
|
|
42
40
|
equalScalar: equalScalar
|
|
43
41
|
});
|
|
44
|
-
var
|
|
42
|
+
var matAlgo11xS0s = (0, _matAlgo11xS0s.createMatAlgo11xS0s)({
|
|
45
43
|
typed: typed,
|
|
46
44
|
equalScalar: equalScalar
|
|
47
45
|
});
|
|
48
|
-
var
|
|
46
|
+
var matAlgo12xSfs = (0, _matAlgo12xSfs.createMatAlgo12xSfs)({
|
|
49
47
|
typed: typed,
|
|
50
48
|
DenseMatrix: DenseMatrix
|
|
51
49
|
});
|
|
52
|
-
var
|
|
53
|
-
typed: typed
|
|
54
|
-
|
|
55
|
-
var algorithm14 = (0, _algorithm7.createAlgorithm14)({
|
|
56
|
-
typed: typed
|
|
50
|
+
var matrixAlgorithmSuite = (0, _matrixAlgorithmSuite.createMatrixAlgorithmSuite)({
|
|
51
|
+
typed: typed,
|
|
52
|
+
matrix: matrix
|
|
57
53
|
});
|
|
58
54
|
/**
|
|
59
55
|
* Calculates the modulus, the remainder of an integer division.
|
|
@@ -107,51 +103,13 @@ var createMod = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
107
103
|
|
|
108
104
|
|
|
109
105
|
return x.compare(0) >= 0 ? x.mod(y) : x.mod(y).add(y).mod(y);
|
|
110
|
-
},
|
|
111
|
-
'SparseMatrix, SparseMatrix': function SparseMatrixSparseMatrix(x, y) {
|
|
112
|
-
return algorithm05(x, y, this, false);
|
|
113
|
-
},
|
|
114
|
-
'SparseMatrix, DenseMatrix': function SparseMatrixDenseMatrix(x, y) {
|
|
115
|
-
return algorithm02(y, x, this, true);
|
|
116
|
-
},
|
|
117
|
-
'DenseMatrix, SparseMatrix': function DenseMatrixSparseMatrix(x, y) {
|
|
118
|
-
return algorithm03(x, y, this, false);
|
|
119
|
-
},
|
|
120
|
-
'DenseMatrix, DenseMatrix': function DenseMatrixDenseMatrix(x, y) {
|
|
121
|
-
return algorithm13(x, y, this);
|
|
122
|
-
},
|
|
123
|
-
'Array, Array': function ArrayArray(x, y) {
|
|
124
|
-
// use matrix implementation
|
|
125
|
-
return this(matrix(x), matrix(y)).valueOf();
|
|
126
|
-
},
|
|
127
|
-
'Array, Matrix': function ArrayMatrix(x, y) {
|
|
128
|
-
// use matrix implementation
|
|
129
|
-
return this(matrix(x), y);
|
|
130
|
-
},
|
|
131
|
-
'Matrix, Array': function MatrixArray(x, y) {
|
|
132
|
-
// use matrix implementation
|
|
133
|
-
return this(x, matrix(y));
|
|
134
|
-
},
|
|
135
|
-
'SparseMatrix, any': function SparseMatrixAny(x, y) {
|
|
136
|
-
return algorithm11(x, y, this, false);
|
|
137
|
-
},
|
|
138
|
-
'DenseMatrix, any': function DenseMatrixAny(x, y) {
|
|
139
|
-
return algorithm14(x, y, this, false);
|
|
140
|
-
},
|
|
141
|
-
'any, SparseMatrix': function anySparseMatrix(x, y) {
|
|
142
|
-
return algorithm12(y, x, this, true);
|
|
143
|
-
},
|
|
144
|
-
'any, DenseMatrix': function anyDenseMatrix(x, y) {
|
|
145
|
-
return algorithm14(y, x, this, true);
|
|
146
|
-
},
|
|
147
|
-
'Array, any': function ArrayAny(x, y) {
|
|
148
|
-
// use matrix implementation
|
|
149
|
-
return algorithm14(matrix(x), y, this, false).valueOf();
|
|
150
|
-
},
|
|
151
|
-
'any, Array': function anyArray(x, y) {
|
|
152
|
-
// use matrix implementation
|
|
153
|
-
return algorithm14(matrix(y), x, this, true).valueOf();
|
|
154
106
|
}
|
|
155
|
-
}
|
|
107
|
+
}, matrixAlgorithmSuite({
|
|
108
|
+
SS: matAlgo05xSfSf,
|
|
109
|
+
DS: matAlgo03xDSf,
|
|
110
|
+
SD: matAlgo02xDS0,
|
|
111
|
+
Ss: matAlgo11xS0s,
|
|
112
|
+
sS: matAlgo12xSfs
|
|
113
|
+
}));
|
|
156
114
|
});
|
|
157
115
|
exports.createMod = createMod;
|