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,20 +7,23 @@ exports.createCot = 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
|
|
|
12
|
+
var _trigUnit = require("./trigUnit.js");
|
|
13
|
+
|
|
14
14
|
var name = 'cot';
|
|
15
15
|
var dependencies = ['typed', 'BigNumber'];
|
|
16
16
|
var createCot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
17
17
|
var typed = _ref.typed,
|
|
18
18
|
_BigNumber = _ref.BigNumber;
|
|
19
|
-
|
|
19
|
+
var trigUnit = (0, _trigUnit.createTrigUnit)({
|
|
20
|
+
typed: typed
|
|
21
|
+
});
|
|
20
22
|
/**
|
|
21
23
|
* Calculate the cotangent of a value. Defined as `cot(x) = 1 / tan(x)`.
|
|
22
24
|
*
|
|
23
|
-
*
|
|
25
|
+
* To avoid confusion with the matrix cotangent, this function does not
|
|
26
|
+
* apply to matrices.
|
|
24
27
|
*
|
|
25
28
|
* Syntax:
|
|
26
29
|
*
|
|
@@ -38,6 +41,7 @@ var createCot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
38
41
|
* @param {number | Complex | Unit | Array | Matrix} x Function input
|
|
39
42
|
* @return {number | Complex | Array | Matrix} Cotangent of x
|
|
40
43
|
*/
|
|
44
|
+
|
|
41
45
|
return typed(name, {
|
|
42
46
|
number: _index.cotNumber,
|
|
43
47
|
Complex: function Complex(x) {
|
|
@@ -45,17 +49,7 @@ var createCot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
45
49
|
},
|
|
46
50
|
BigNumber: function BigNumber(x) {
|
|
47
51
|
return new _BigNumber(1).div(x.tan());
|
|
48
|
-
},
|
|
49
|
-
Unit: function Unit(x) {
|
|
50
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
51
|
-
throw new TypeError('Unit in function cot is no angle');
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return this(x.value);
|
|
55
|
-
},
|
|
56
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
57
|
-
return (0, _collection.deepMap)(x, this);
|
|
58
52
|
}
|
|
59
|
-
});
|
|
53
|
+
}, trigUnit);
|
|
60
54
|
});
|
|
61
55
|
exports.createCot = createCot;
|
|
@@ -7,8 +7,6 @@ exports.createCoth = 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 = 'coth';
|
|
@@ -21,7 +19,8 @@ var createCoth = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
21
19
|
* Calculate the hyperbolic cotangent of a value,
|
|
22
20
|
* defined as `coth(x) = 1 / tanh(x)`.
|
|
23
21
|
*
|
|
24
|
-
*
|
|
22
|
+
* To avoid confusion with the matrix hyperbolic cotangent, this function
|
|
23
|
+
* does not apply to matrices.
|
|
25
24
|
*
|
|
26
25
|
* Syntax:
|
|
27
26
|
*
|
|
@@ -37,8 +36,8 @@ var createCoth = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
37
36
|
*
|
|
38
37
|
* sinh, tanh, cosh
|
|
39
38
|
*
|
|
40
|
-
* @param {number |
|
|
41
|
-
* @return {number |
|
|
39
|
+
* @param {number | BigNumber | Complex} x Function input
|
|
40
|
+
* @return {number | BigNumber | Complex} Hyperbolic cotangent of x
|
|
42
41
|
*/
|
|
43
42
|
return typed(name, {
|
|
44
43
|
number: _index.cothNumber,
|
|
@@ -47,16 +46,6 @@ var createCoth = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
47
46
|
},
|
|
48
47
|
BigNumber: function BigNumber(x) {
|
|
49
48
|
return new _BigNumber(1).div(x.tanh());
|
|
50
|
-
},
|
|
51
|
-
Unit: function Unit(x) {
|
|
52
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
53
|
-
throw new TypeError('Unit in function coth is no angle');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return this(x.value);
|
|
57
|
-
},
|
|
58
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
59
|
-
return (0, _collection.deepMap)(x, this);
|
|
60
49
|
}
|
|
61
50
|
});
|
|
62
51
|
});
|
|
@@ -7,20 +7,23 @@ exports.createCsc = 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
|
|
|
12
|
+
var _trigUnit = require("./trigUnit.js");
|
|
13
|
+
|
|
14
14
|
var name = 'csc';
|
|
15
15
|
var dependencies = ['typed', 'BigNumber'];
|
|
16
16
|
var createCsc = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
17
17
|
var typed = _ref.typed,
|
|
18
18
|
_BigNumber = _ref.BigNumber;
|
|
19
|
-
|
|
19
|
+
var trigUnit = (0, _trigUnit.createTrigUnit)({
|
|
20
|
+
typed: typed
|
|
21
|
+
});
|
|
20
22
|
/**
|
|
21
23
|
* Calculate the cosecant of a value, defined as `csc(x) = 1/sin(x)`.
|
|
22
24
|
*
|
|
23
|
-
*
|
|
25
|
+
* To avoid confusion with the matrix cosecant, this function does not
|
|
26
|
+
* apply to matrices.
|
|
24
27
|
*
|
|
25
28
|
* Syntax:
|
|
26
29
|
*
|
|
@@ -35,9 +38,10 @@ var createCsc = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
35
38
|
*
|
|
36
39
|
* sin, sec, cot
|
|
37
40
|
*
|
|
38
|
-
* @param {number |
|
|
39
|
-
* @return {number |
|
|
41
|
+
* @param {number | BigNumber | Complex | Unit} x Function input
|
|
42
|
+
* @return {number | BigNumber | Complex} Cosecant of x
|
|
40
43
|
*/
|
|
44
|
+
|
|
41
45
|
return typed(name, {
|
|
42
46
|
number: _index.cscNumber,
|
|
43
47
|
Complex: function Complex(x) {
|
|
@@ -45,17 +49,7 @@ var createCsc = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
45
49
|
},
|
|
46
50
|
BigNumber: function BigNumber(x) {
|
|
47
51
|
return new _BigNumber(1).div(x.sin());
|
|
48
|
-
},
|
|
49
|
-
Unit: function Unit(x) {
|
|
50
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
51
|
-
throw new TypeError('Unit in function csc is no angle');
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return this(x.value);
|
|
55
|
-
},
|
|
56
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
57
|
-
return (0, _collection.deepMap)(x, this);
|
|
58
52
|
}
|
|
59
|
-
});
|
|
53
|
+
}, trigUnit);
|
|
60
54
|
});
|
|
61
55
|
exports.createCsc = createCsc;
|
|
@@ -7,8 +7,6 @@ exports.createCsch = 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 = 'csch';
|
|
@@ -21,7 +19,8 @@ var createCsch = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
21
19
|
* Calculate the hyperbolic cosecant of a value,
|
|
22
20
|
* defined as `csch(x) = 1 / sinh(x)`.
|
|
23
21
|
*
|
|
24
|
-
*
|
|
22
|
+
* To avoid confusion with the matrix hyperbolic cosecant, this function
|
|
23
|
+
* does not apply to matrices.
|
|
25
24
|
*
|
|
26
25
|
* Syntax:
|
|
27
26
|
*
|
|
@@ -37,8 +36,8 @@ var createCsch = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
37
36
|
*
|
|
38
37
|
* sinh, sech, coth
|
|
39
38
|
*
|
|
40
|
-
* @param {number |
|
|
41
|
-
* @return {number |
|
|
39
|
+
* @param {number | BigNumber | Complex} x Function input
|
|
40
|
+
* @return {number | BigNumber | Complex} Hyperbolic cosecant of x
|
|
42
41
|
*/
|
|
43
42
|
return typed(name, {
|
|
44
43
|
number: _index.cschNumber,
|
|
@@ -47,16 +46,6 @@ var createCsch = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
47
46
|
},
|
|
48
47
|
BigNumber: function BigNumber(x) {
|
|
49
48
|
return new _BigNumber(1).div(x.sinh());
|
|
50
|
-
},
|
|
51
|
-
Unit: function Unit(x) {
|
|
52
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
53
|
-
throw new TypeError('Unit in function csch is no angle');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return this(x.value);
|
|
57
|
-
},
|
|
58
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
59
|
-
return (0, _collection.deepMap)(x, this);
|
|
60
49
|
}
|
|
61
50
|
});
|
|
62
51
|
});
|
|
@@ -7,20 +7,23 @@ exports.createSec = 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
|
|
|
12
|
+
var _trigUnit = require("./trigUnit.js");
|
|
13
|
+
|
|
14
14
|
var name = 'sec';
|
|
15
15
|
var dependencies = ['typed', 'BigNumber'];
|
|
16
16
|
var createSec = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
17
17
|
var typed = _ref.typed,
|
|
18
18
|
_BigNumber = _ref.BigNumber;
|
|
19
|
-
|
|
19
|
+
var trigUnit = (0, _trigUnit.createTrigUnit)({
|
|
20
|
+
typed: typed
|
|
21
|
+
});
|
|
20
22
|
/**
|
|
21
23
|
* Calculate the secant of a value, defined as `sec(x) = 1/cos(x)`.
|
|
22
24
|
*
|
|
23
|
-
*
|
|
25
|
+
* To avoid confusion with the matrix secant, this function does not
|
|
26
|
+
* apply to matrices.
|
|
24
27
|
*
|
|
25
28
|
* Syntax:
|
|
26
29
|
*
|
|
@@ -35,9 +38,10 @@ var createSec = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
35
38
|
*
|
|
36
39
|
* cos, csc, cot
|
|
37
40
|
*
|
|
38
|
-
* @param {number |
|
|
39
|
-
* @return {number |
|
|
41
|
+
* @param {number | BigNumber | Complex | Unit} x Function input
|
|
42
|
+
* @return {number | BigNumber | Complex} Secant of x
|
|
40
43
|
*/
|
|
44
|
+
|
|
41
45
|
return typed(name, {
|
|
42
46
|
number: _index.secNumber,
|
|
43
47
|
Complex: function Complex(x) {
|
|
@@ -45,17 +49,7 @@ var createSec = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
45
49
|
},
|
|
46
50
|
BigNumber: function BigNumber(x) {
|
|
47
51
|
return new _BigNumber(1).div(x.cos());
|
|
48
|
-
},
|
|
49
|
-
Unit: function Unit(x) {
|
|
50
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
51
|
-
throw new TypeError('Unit in function sec is no angle');
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return this(x.value);
|
|
55
|
-
},
|
|
56
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
57
|
-
return (0, _collection.deepMap)(x, this);
|
|
58
52
|
}
|
|
59
|
-
});
|
|
53
|
+
}, trigUnit);
|
|
60
54
|
});
|
|
61
55
|
exports.createSec = createSec;
|
|
@@ -7,8 +7,6 @@ exports.createSech = 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 = 'sech';
|
|
@@ -21,7 +19,8 @@ var createSech = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
21
19
|
* Calculate the hyperbolic secant of a value,
|
|
22
20
|
* defined as `sech(x) = 1 / cosh(x)`.
|
|
23
21
|
*
|
|
24
|
-
*
|
|
22
|
+
* To avoid confusion with the matrix hyperbolic secant, this function does
|
|
23
|
+
* not apply to matrices.
|
|
25
24
|
*
|
|
26
25
|
* Syntax:
|
|
27
26
|
*
|
|
@@ -37,8 +36,8 @@ var createSech = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
37
36
|
*
|
|
38
37
|
* cosh, csch, coth
|
|
39
38
|
*
|
|
40
|
-
* @param {number |
|
|
41
|
-
* @return {number |
|
|
39
|
+
* @param {number | BigNumber | Complex} x Function input
|
|
40
|
+
* @return {number | BigNumber | Complex} Hyperbolic secant of x
|
|
42
41
|
*/
|
|
43
42
|
return typed(name, {
|
|
44
43
|
number: _index.sechNumber,
|
|
@@ -47,16 +46,6 @@ var createSech = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
47
46
|
},
|
|
48
47
|
BigNumber: function BigNumber(x) {
|
|
49
48
|
return new _BigNumber(1).div(x.cosh());
|
|
50
|
-
},
|
|
51
|
-
Unit: function Unit(x) {
|
|
52
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
53
|
-
throw new TypeError('Unit in function sech is no angle');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return this(x.value);
|
|
57
|
-
},
|
|
58
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
59
|
-
return (0, _collection.deepMap)(x, this);
|
|
60
49
|
}
|
|
61
50
|
});
|
|
62
51
|
});
|
|
@@ -7,17 +7,20 @@ exports.createSin = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _trigUnit = require("./trigUnit.js");
|
|
11
11
|
|
|
12
12
|
var name = 'sin';
|
|
13
13
|
var dependencies = ['typed'];
|
|
14
14
|
var createSin = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed;
|
|
16
|
-
|
|
16
|
+
var trigUnit = (0, _trigUnit.createTrigUnit)({
|
|
17
|
+
typed: typed
|
|
18
|
+
});
|
|
17
19
|
/**
|
|
18
20
|
* Calculate the sine of a value.
|
|
19
21
|
*
|
|
20
|
-
*
|
|
22
|
+
* To avoid confusion with the matrix sine, this function does not apply
|
|
23
|
+
* to matrices.
|
|
21
24
|
*
|
|
22
25
|
* Syntax:
|
|
23
26
|
*
|
|
@@ -37,28 +40,15 @@ var createSin = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
37
40
|
*
|
|
38
41
|
* cos, tan
|
|
39
42
|
*
|
|
40
|
-
* @param {number | BigNumber | Complex | Unit
|
|
41
|
-
* @return {number | BigNumber | Complex
|
|
43
|
+
* @param {number | BigNumber | Complex | Unit} x Function input
|
|
44
|
+
* @return {number | BigNumber | Complex} Sine of x
|
|
42
45
|
*/
|
|
46
|
+
|
|
43
47
|
return typed(name, {
|
|
44
48
|
number: Math.sin,
|
|
45
|
-
Complex: function
|
|
49
|
+
'Complex | BigNumber': function ComplexBigNumber(x) {
|
|
46
50
|
return x.sin();
|
|
47
|
-
},
|
|
48
|
-
BigNumber: function BigNumber(x) {
|
|
49
|
-
return x.sin();
|
|
50
|
-
},
|
|
51
|
-
Unit: function Unit(x) {
|
|
52
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
53
|
-
throw new TypeError('Unit in function sin is no angle');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return this(x.value);
|
|
57
|
-
},
|
|
58
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
59
|
-
// deep map collection, skip zeros since sin(0) = 0
|
|
60
|
-
return (0, _collection.deepMap)(x, this, true);
|
|
61
51
|
}
|
|
62
|
-
});
|
|
52
|
+
}, trigUnit);
|
|
63
53
|
});
|
|
64
54
|
exports.createSin = createSin;
|
|
@@ -7,8 +7,6 @@ exports.createSinh = 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 = 'sinh';
|
|
@@ -20,7 +18,8 @@ var createSinh = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
20
18
|
* Calculate the hyperbolic sine of a value,
|
|
21
19
|
* defined as `sinh(x) = 1/2 * (exp(x) - exp(-x))`.
|
|
22
20
|
*
|
|
23
|
-
*
|
|
21
|
+
* To avoid confusion with the matrix hyperbolic sine, this function does
|
|
22
|
+
* not apply to matrices.
|
|
24
23
|
*
|
|
25
24
|
* Syntax:
|
|
26
25
|
*
|
|
@@ -34,27 +33,13 @@ var createSinh = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
34
33
|
*
|
|
35
34
|
* cosh, tanh
|
|
36
35
|
*
|
|
37
|
-
* @param {number | BigNumber | Complex
|
|
38
|
-
* @return {number | BigNumber | Complex
|
|
36
|
+
* @param {number | BigNumber | Complex} x Function input
|
|
37
|
+
* @return {number | BigNumber | Complex} Hyperbolic sine of x
|
|
39
38
|
*/
|
|
40
39
|
return typed(name, {
|
|
41
40
|
number: _index.sinhNumber,
|
|
42
|
-
Complex: function
|
|
43
|
-
return x.sinh();
|
|
44
|
-
},
|
|
45
|
-
BigNumber: function BigNumber(x) {
|
|
41
|
+
'Complex | BigNumber': function ComplexBigNumber(x) {
|
|
46
42
|
return x.sinh();
|
|
47
|
-
},
|
|
48
|
-
Unit: function Unit(x) {
|
|
49
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
50
|
-
throw new TypeError('Unit in function sinh is no angle');
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
return this(x.value);
|
|
54
|
-
},
|
|
55
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
56
|
-
// deep map collection, skip zeros since sinh(0) = 0
|
|
57
|
-
return (0, _collection.deepMap)(x, this, true);
|
|
58
43
|
}
|
|
59
44
|
});
|
|
60
45
|
});
|
|
@@ -7,17 +7,20 @@ exports.createTan = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _trigUnit = require("./trigUnit.js");
|
|
11
11
|
|
|
12
12
|
var name = 'tan';
|
|
13
13
|
var dependencies = ['typed'];
|
|
14
14
|
var createTan = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
15
15
|
var typed = _ref.typed;
|
|
16
|
-
|
|
16
|
+
var trigUnit = (0, _trigUnit.createTrigUnit)({
|
|
17
|
+
typed: typed
|
|
18
|
+
});
|
|
17
19
|
/**
|
|
18
20
|
* Calculate the tangent of a value. `tan(x)` is equal to `sin(x) / cos(x)`.
|
|
19
21
|
*
|
|
20
|
-
*
|
|
22
|
+
* To avoid confusion with the matrix tangent, this function does not apply
|
|
23
|
+
* to matrices.
|
|
21
24
|
*
|
|
22
25
|
* Syntax:
|
|
23
26
|
*
|
|
@@ -34,28 +37,15 @@ var createTan = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functio
|
|
|
34
37
|
*
|
|
35
38
|
* atan, sin, cos
|
|
36
39
|
*
|
|
37
|
-
* @param {number | BigNumber | Complex | Unit
|
|
38
|
-
* @return {number | BigNumber | Complex
|
|
40
|
+
* @param {number | BigNumber | Complex | Unit} x Function input
|
|
41
|
+
* @return {number | BigNumber | Complex} Tangent of x
|
|
39
42
|
*/
|
|
43
|
+
|
|
40
44
|
return typed(name, {
|
|
41
45
|
number: Math.tan,
|
|
42
|
-
Complex: function
|
|
46
|
+
'Complex | BigNumber': function ComplexBigNumber(x) {
|
|
43
47
|
return x.tan();
|
|
44
|
-
},
|
|
45
|
-
BigNumber: function BigNumber(x) {
|
|
46
|
-
return x.tan();
|
|
47
|
-
},
|
|
48
|
-
Unit: function Unit(x) {
|
|
49
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
50
|
-
throw new TypeError('Unit in function tan is no angle');
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
return this(x.value);
|
|
54
|
-
},
|
|
55
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
56
|
-
// deep map collection, skip zeros since tan(0) = 0
|
|
57
|
-
return (0, _collection.deepMap)(x, this, true);
|
|
58
48
|
}
|
|
59
|
-
});
|
|
49
|
+
}, trigUnit);
|
|
60
50
|
});
|
|
61
51
|
exports.createTan = createTan;
|
|
@@ -7,8 +7,6 @@ exports.createTanh = 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 _number = require("../../utils/number.js");
|
|
13
11
|
|
|
14
12
|
var name = 'tanh';
|
|
@@ -20,7 +18,8 @@ var createTanh = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
20
18
|
* Calculate the hyperbolic tangent of a value,
|
|
21
19
|
* defined as `tanh(x) = (exp(2 * x) - 1) / (exp(2 * x) + 1)`.
|
|
22
20
|
*
|
|
23
|
-
*
|
|
21
|
+
* To avoid confusion with matrix hyperbolic tangent, this function does
|
|
22
|
+
* not apply to matrices.
|
|
24
23
|
*
|
|
25
24
|
* Syntax:
|
|
26
25
|
*
|
|
@@ -37,27 +36,13 @@ var createTanh = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
|
37
36
|
*
|
|
38
37
|
* sinh, cosh, coth
|
|
39
38
|
*
|
|
40
|
-
* @param {number | BigNumber | Complex
|
|
41
|
-
* @return {number | BigNumber | Complex
|
|
39
|
+
* @param {number | BigNumber | Complex} x Function input
|
|
40
|
+
* @return {number | BigNumber | Complex} Hyperbolic tangent of x
|
|
42
41
|
*/
|
|
43
42
|
return typed('tanh', {
|
|
44
43
|
number: _number.tanh,
|
|
45
|
-
Complex: function
|
|
46
|
-
return x.tanh();
|
|
47
|
-
},
|
|
48
|
-
BigNumber: function BigNumber(x) {
|
|
44
|
+
'Complex | BigNumber': function ComplexBigNumber(x) {
|
|
49
45
|
return x.tanh();
|
|
50
|
-
},
|
|
51
|
-
Unit: function Unit(x) {
|
|
52
|
-
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
53
|
-
throw new TypeError('Unit in function tanh is no angle');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return this(x.value);
|
|
57
|
-
},
|
|
58
|
-
'Array | Matrix': function ArrayMatrix(x) {
|
|
59
|
-
// deep map collection, skip zeros since tanh(0) = 0
|
|
60
|
-
return (0, _collection.deepMap)(x, this, true);
|
|
61
46
|
}
|
|
62
47
|
});
|
|
63
48
|
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createTrigUnit = void 0;
|
|
7
|
+
|
|
8
|
+
var _factory = require("../../utils/factory.js");
|
|
9
|
+
|
|
10
|
+
var createTrigUnit = /* #__PURE__ */(0, _factory.factory)('trigUnit', ['typed'], function (_ref) {
|
|
11
|
+
var typed = _ref.typed;
|
|
12
|
+
return {
|
|
13
|
+
Unit: typed.referToSelf(function (self) {
|
|
14
|
+
return function (x) {
|
|
15
|
+
if (!x.hasBase(x.constructor.BASE_UNITS.ANGLE)) {
|
|
16
|
+
throw new TypeError('Unit in function cot is no angle');
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return typed.find(self, x.valueType())(x.value);
|
|
20
|
+
};
|
|
21
|
+
})
|
|
22
|
+
};
|
|
23
|
+
});
|
|
24
|
+
exports.createTrigUnit = createTrigUnit;
|
|
@@ -7,20 +7,16 @@ exports.createTo = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _factory = require("../../utils/factory.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
var _algorithm2 = require("../../type/matrix/utils/algorithm14.js");
|
|
10
|
+
var _matrixAlgorithmSuite = require("../../type/matrix/utils/matrixAlgorithmSuite.js");
|
|
13
11
|
|
|
14
12
|
var name = 'to';
|
|
15
13
|
var dependencies = ['typed', 'matrix'];
|
|
16
14
|
var createTo = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
|
17
15
|
var typed = _ref.typed,
|
|
18
16
|
matrix = _ref.matrix;
|
|
19
|
-
var
|
|
20
|
-
typed: typed
|
|
21
|
-
|
|
22
|
-
var algorithm14 = (0, _algorithm2.createAlgorithm14)({
|
|
23
|
-
typed: typed
|
|
17
|
+
var matrixAlgorithmSuite = (0, _matrixAlgorithmSuite.createMatrixAlgorithmSuite)({
|
|
18
|
+
typed: typed,
|
|
19
|
+
matrix: matrix
|
|
24
20
|
});
|
|
25
21
|
/**
|
|
26
22
|
* Change the unit of a value.
|
|
@@ -50,39 +46,9 @@ var createTo = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function
|
|
|
50
46
|
return typed(name, {
|
|
51
47
|
'Unit, Unit | string': function UnitUnitString(x, unit) {
|
|
52
48
|
return x.to(unit);
|
|
53
|
-
},
|
|
54
|
-
'Matrix, Matrix': function MatrixMatrix(x, y) {
|
|
55
|
-
// SparseMatrix does not support Units
|
|
56
|
-
return algorithm13(x, y, this);
|
|
57
|
-
},
|
|
58
|
-
'Array, Array': function ArrayArray(x, y) {
|
|
59
|
-
// use matrix implementation
|
|
60
|
-
return this(matrix(x), matrix(y)).valueOf();
|
|
61
|
-
},
|
|
62
|
-
'Array, Matrix': function ArrayMatrix(x, y) {
|
|
63
|
-
// use matrix implementation
|
|
64
|
-
return this(matrix(x), y);
|
|
65
|
-
},
|
|
66
|
-
'Matrix, Array': function MatrixArray(x, y) {
|
|
67
|
-
// use matrix implementation
|
|
68
|
-
return this(x, matrix(y));
|
|
69
|
-
},
|
|
70
|
-
'Matrix, any': function MatrixAny(x, y) {
|
|
71
|
-
// SparseMatrix does not support Units
|
|
72
|
-
return algorithm14(x, y, this, false);
|
|
73
|
-
},
|
|
74
|
-
'any, Matrix': function anyMatrix(x, y) {
|
|
75
|
-
// SparseMatrix does not support Units
|
|
76
|
-
return algorithm14(y, x, this, true);
|
|
77
|
-
},
|
|
78
|
-
'Array, any': function ArrayAny(x, y) {
|
|
79
|
-
// use matrix implementation
|
|
80
|
-
return algorithm14(matrix(x), y, this, false).valueOf();
|
|
81
|
-
},
|
|
82
|
-
'any, Array': function anyArray(x, y) {
|
|
83
|
-
// use matrix implementation
|
|
84
|
-
return algorithm14(matrix(y), x, this, true).valueOf();
|
|
85
49
|
}
|
|
86
|
-
}
|
|
50
|
+
}, matrixAlgorithmSuite({
|
|
51
|
+
Ds: true
|
|
52
|
+
}));
|
|
87
53
|
});
|
|
88
54
|
exports.createTo = createTo;
|
|
@@ -31,6 +31,7 @@ var createHasNumericValue = /* #__PURE__ */(0, _factory.factory)(name, dependenc
|
|
|
31
31
|
* math.hasNumericValue(math.bignumber(500)) // returns true
|
|
32
32
|
* math.hasNumericValue(math.fraction(4)) // returns true
|
|
33
33
|
* math.hasNumericValue(math.complex('2-4i') // returns false
|
|
34
|
+
* math.hasNumericValue(false) // returns true
|
|
34
35
|
* math.hasNumericValue([2.3, 'foo', false]) // returns [true, false, true]
|
|
35
36
|
*
|
|
36
37
|
* See also:
|
|
@@ -43,6 +44,9 @@ var createHasNumericValue = /* #__PURE__ */(0, _factory.factory)(name, dependenc
|
|
|
43
44
|
* Throws an error in case of unknown types.
|
|
44
45
|
*/
|
|
45
46
|
return typed(name, {
|
|
47
|
+
"boolean": function boolean() {
|
|
48
|
+
return true;
|
|
49
|
+
},
|
|
46
50
|
string: function string(x) {
|
|
47
51
|
return x.trim().length > 0 && !isNaN(Number(x));
|
|
48
52
|
},
|
|
@@ -54,9 +54,11 @@ var createIsInteger = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
|
54
54
|
Fraction: function Fraction(x) {
|
|
55
55
|
return x.d === 1 && isFinite(x.n);
|
|
56
56
|
},
|
|
57
|
-
'Array | Matrix': function
|
|
58
|
-
return
|
|
59
|
-
|
|
57
|
+
'Array | Matrix': typed.referToSelf(function (self) {
|
|
58
|
+
return function (x) {
|
|
59
|
+
return (0, _collection.deepMap)(x, self);
|
|
60
|
+
};
|
|
61
|
+
})
|
|
60
62
|
});
|
|
61
63
|
});
|
|
62
64
|
exports.createIsInteger = createIsInteger;
|