mathjs 10.6.3 → 11.0.1
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 +25 -33
- package/lib/cjs/function/algebra/leafCount.js +0 -3
- package/lib/cjs/function/algebra/rationalize.js +78 -108
- package/lib/cjs/function/algebra/resolve.js +53 -16
- package/lib/cjs/function/algebra/simplify/util.js +1 -1
- package/lib/cjs/function/algebra/simplify.js +90 -115
- package/lib/cjs/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +44 -10
- package/lib/cjs/function/algebra/simplifyCore.js +196 -93
- package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
- package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
- package/lib/cjs/function/algebra/symbolicEqual.js +14 -32
- package/lib/cjs/function/arithmetic/abs.js +7 -14
- package/lib/cjs/function/arithmetic/add.js +26 -70
- package/lib/cjs/function/arithmetic/addScalar.js +17 -9
- package/lib/cjs/function/arithmetic/cbrt.js +7 -11
- package/lib/cjs/function/arithmetic/ceil.js +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 +34 -28
- package/lib/cjs/function/arithmetic/floor.js +57 -47
- package/lib/cjs/function/arithmetic/gcd.js +27 -68
- package/lib/cjs/function/arithmetic/hypot.js +9 -5
- package/lib/cjs/function/arithmetic/invmod.js +2 -2
- package/lib/cjs/function/arithmetic/lcm.js +27 -68
- package/lib/cjs/function/arithmetic/log.js +10 -12
- package/lib/cjs/function/arithmetic/log10.js +5 -3
- package/lib/cjs/function/arithmetic/log1p.js +11 -7
- package/lib/cjs/function/arithmetic/log2.js +5 -3
- package/lib/cjs/function/arithmetic/mod.js +22 -64
- package/lib/cjs/function/arithmetic/multiply.js +40 -35
- package/lib/cjs/function/arithmetic/multiplyScalar.js +2 -9
- package/lib/cjs/function/arithmetic/norm.js +1 -5
- package/lib/cjs/function/arithmetic/nthRoot.js +83 -95
- package/lib/cjs/function/arithmetic/nthRoots.js +2 -2
- package/lib/cjs/function/arithmetic/round.js +56 -42
- package/lib/cjs/function/arithmetic/sign.js +14 -10
- package/lib/cjs/function/arithmetic/sqrt.js +5 -9
- package/lib/cjs/function/arithmetic/square.js +6 -10
- package/lib/cjs/function/arithmetic/subtract.js +44 -100
- package/lib/cjs/function/arithmetic/unaryMinus.js +14 -16
- package/lib/cjs/function/arithmetic/unaryPlus.js +6 -4
- package/lib/cjs/function/bitwise/bitAnd.js +17 -61
- package/lib/cjs/function/bitwise/bitNot.js +6 -4
- package/lib/cjs/function/bitwise/bitOr.js +16 -60
- package/lib/cjs/function/bitwise/bitXor.js +17 -61
- package/lib/cjs/function/bitwise/leftShift.js +69 -82
- package/lib/cjs/function/bitwise/rightArithShift.js +69 -82
- package/lib/cjs/function/bitwise/rightLogShift.js +69 -82
- package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +36 -0
- package/lib/cjs/function/complex/arg.js +5 -3
- package/lib/cjs/function/complex/conj.js +6 -7
- package/lib/cjs/function/complex/im.js +7 -8
- package/lib/cjs/function/complex/re.js +6 -10
- package/lib/cjs/function/geometry/distance.js +2 -2
- package/lib/cjs/function/logical/and.js +74 -80
- package/lib/cjs/function/logical/not.js +13 -6
- package/lib/cjs/function/logical/or.js +21 -63
- package/lib/cjs/function/logical/xor.js +21 -63
- package/lib/cjs/function/matrix/diff.js +11 -8
- package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
- package/lib/cjs/function/matrix/fft.js +2 -2
- package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
- package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
- package/lib/cjs/function/matrix/ones.js +2 -1
- package/lib/cjs/function/matrix/rotate.js +5 -5
- package/lib/cjs/function/matrix/sqrtm.js +3 -2
- package/lib/cjs/function/matrix/transpose.js +47 -48
- package/lib/cjs/function/matrix/zeros.js +2 -1
- package/lib/cjs/function/probability/factorial.js +5 -3
- package/lib/cjs/function/probability/gamma.js +38 -40
- package/lib/cjs/function/probability/kldivergence.js +5 -2
- package/lib/cjs/function/probability/lgamma.js +30 -30
- package/lib/cjs/function/probability/util/seededRNG.js +2 -2
- package/lib/cjs/function/relational/compare.js +21 -67
- package/lib/cjs/function/relational/compareNatural.js +59 -54
- package/lib/cjs/function/relational/compareText.js +10 -43
- package/lib/cjs/function/relational/compareUnits.js +24 -0
- package/lib/cjs/function/relational/equal.js +19 -80
- package/lib/cjs/function/relational/equalScalar.js +7 -9
- package/lib/cjs/function/relational/larger.js +21 -67
- package/lib/cjs/function/relational/largerEq.js +21 -67
- package/lib/cjs/function/relational/smaller.js +21 -67
- package/lib/cjs/function/relational/smallerEq.js +21 -67
- package/lib/cjs/function/relational/unequal.js +19 -80
- package/lib/cjs/function/special/erf.js +5 -3
- package/lib/cjs/function/statistics/std.js +11 -2
- package/lib/cjs/function/string/format.js +2 -2
- package/lib/cjs/function/string/hex.js +1 -2
- package/lib/cjs/function/trigonometry/acos.js +4 -8
- package/lib/cjs/function/trigonometry/acosh.js +2 -7
- package/lib/cjs/function/trigonometry/acot.js +6 -11
- package/lib/cjs/function/trigonometry/acoth.js +4 -8
- package/lib/cjs/function/trigonometry/acsc.js +6 -11
- package/lib/cjs/function/trigonometry/acsch.js +4 -8
- package/lib/cjs/function/trigonometry/asec.js +6 -10
- package/lib/cjs/function/trigonometry/asech.js +4 -8
- package/lib/cjs/function/trigonometry/asin.js +5 -10
- package/lib/cjs/function/trigonometry/asinh.js +4 -9
- package/lib/cjs/function/trigonometry/atan.js +5 -11
- package/lib/cjs/function/trigonometry/atan2.js +25 -63
- package/lib/cjs/function/trigonometry/atanh.js +4 -9
- package/lib/cjs/function/trigonometry/cos.js +11 -20
- package/lib/cjs/function/trigonometry/cosh.js +5 -19
- package/lib/cjs/function/trigonometry/cot.js +9 -15
- package/lib/cjs/function/trigonometry/coth.js +4 -15
- package/lib/cjs/function/trigonometry/csc.js +11 -17
- package/lib/cjs/function/trigonometry/csch.js +4 -15
- package/lib/cjs/function/trigonometry/sec.js +11 -17
- package/lib/cjs/function/trigonometry/sech.js +4 -15
- package/lib/cjs/function/trigonometry/sin.js +11 -21
- package/lib/cjs/function/trigonometry/sinh.js +5 -20
- package/lib/cjs/function/trigonometry/tan.js +11 -21
- package/lib/cjs/function/trigonometry/tanh.js +5 -20
- package/lib/cjs/function/trigonometry/trigUnit.js +24 -0
- package/lib/cjs/function/unit/to.js +7 -41
- package/lib/cjs/function/utils/clone.js +1 -1
- package/lib/cjs/function/utils/hasNumericValue.js +5 -1
- package/lib/cjs/function/utils/isInteger.js +6 -4
- package/lib/cjs/function/utils/isNaN.js +1 -1
- package/lib/cjs/function/utils/isNegative.js +11 -7
- package/lib/cjs/function/utils/isNumeric.js +6 -4
- package/lib/cjs/function/utils/isPositive.js +11 -7
- package/lib/cjs/function/utils/isPrime.js +5 -3
- package/lib/cjs/function/utils/isZero.js +21 -17
- package/lib/cjs/function/utils/numeric.js +11 -4
- package/lib/cjs/function/utils/typeOf.js +38 -44
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/plain/bignumber/index.js +1 -1
- package/lib/cjs/type/bignumber/BigNumber.js +2 -2
- package/lib/cjs/type/bignumber/function/bignumber.js +6 -4
- package/lib/cjs/type/boolean.js +7 -5
- package/lib/cjs/type/chain/Chain.js +23 -3
- package/lib/cjs/type/complex/Complex.js +18 -14
- package/lib/cjs/type/complex/function/complex.js +6 -4
- package/lib/cjs/type/fraction/Fraction.js +10 -6
- package/lib/cjs/type/fraction/function/fraction.js +6 -4
- package/lib/cjs/type/matrix/DenseMatrix.js +21 -6
- package/lib/cjs/type/matrix/SparseMatrix.js +12 -2
- package/lib/cjs/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +4 -4
- package/lib/cjs/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +7 -7
- package/lib/cjs/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +6 -6
- package/lib/cjs/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +5 -5
- package/lib/cjs/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +5 -5
- package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +238 -0
- package/lib/cjs/type/number.js +6 -4
- package/lib/cjs/type/string.js +7 -5
- package/lib/cjs/type/unit/Unit.js +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 +25 -33
- package/lib/esm/function/algebra/leafCount.js +0 -3
- package/lib/esm/function/algebra/rationalize.js +83 -114
- package/lib/esm/function/algebra/resolve.js +25 -16
- package/lib/esm/function/algebra/simplify.js +85 -113
- package/lib/esm/function/algebra/{simplify/simplifyConstant.js → simplifyConstant.js} +39 -9
- package/lib/esm/function/algebra/simplifyCore.js +192 -91
- package/lib/esm/function/algebra/symbolicEqual.js +14 -32
- package/lib/esm/function/arithmetic/abs.js +3 -16
- package/lib/esm/function/arithmetic/add.js +21 -65
- package/lib/esm/function/arithmetic/addScalar.js +11 -5
- package/lib/esm/function/arithmetic/cbrt.js +7 -10
- package/lib/esm/function/arithmetic/ceil.js +25 -25
- package/lib/esm/function/arithmetic/cube.js +5 -9
- package/lib/esm/function/arithmetic/divide.js +7 -7
- package/lib/esm/function/arithmetic/divideScalar.js +2 -19
- package/lib/esm/function/arithmetic/dotDivide.js +22 -64
- package/lib/esm/function/arithmetic/dotMultiply.js +16 -60
- package/lib/esm/function/arithmetic/dotPow.js +30 -62
- package/lib/esm/function/arithmetic/exp.js +8 -11
- package/lib/esm/function/arithmetic/expm1.js +10 -9
- package/lib/esm/function/arithmetic/fix.js +18 -18
- package/lib/esm/function/arithmetic/floor.js +26 -26
- package/lib/esm/function/arithmetic/gcd.js +26 -70
- package/lib/esm/function/arithmetic/hypot.js +7 -6
- package/lib/esm/function/arithmetic/invmod.js +1 -1
- package/lib/esm/function/arithmetic/lcm.js +26 -70
- package/lib/esm/function/arithmetic/log.js +7 -10
- package/lib/esm/function/arithmetic/log10.js +1 -3
- package/lib/esm/function/arithmetic/log1p.js +4 -6
- package/lib/esm/function/arithmetic/log2.js +1 -3
- package/lib/esm/function/arithmetic/mod.js +21 -62
- package/lib/esm/function/arithmetic/multiply.js +23 -27
- package/lib/esm/function/arithmetic/multiplyScalar.js +2 -13
- package/lib/esm/function/arithmetic/norm.js +0 -4
- package/lib/esm/function/arithmetic/nthRoot.js +41 -76
- package/lib/esm/function/arithmetic/nthRoots.js +2 -2
- package/lib/esm/function/arithmetic/round.js +26 -28
- package/lib/esm/function/arithmetic/sign.js +5 -7
- package/lib/esm/function/arithmetic/sqrt.js +5 -8
- package/lib/esm/function/arithmetic/square.js +6 -9
- package/lib/esm/function/arithmetic/subtract.js +31 -95
- package/lib/esm/function/arithmetic/unaryMinus.js +6 -16
- package/lib/esm/function/arithmetic/unaryPlus.js +2 -4
- package/lib/esm/function/bitwise/bitAnd.js +16 -59
- package/lib/esm/function/bitwise/bitNot.js +2 -4
- package/lib/esm/function/bitwise/bitOr.js +16 -59
- package/lib/esm/function/bitwise/bitXor.js +16 -59
- package/lib/esm/function/bitwise/leftShift.js +39 -61
- package/lib/esm/function/bitwise/rightArithShift.js +39 -61
- package/lib/esm/function/bitwise/rightLogShift.js +39 -61
- package/lib/esm/function/bitwise/useMatrixForArrayScalar.js +13 -0
- package/lib/esm/function/complex/arg.js +1 -3
- package/lib/esm/function/complex/conj.js +3 -12
- package/lib/esm/function/complex/im.js +4 -15
- package/lib/esm/function/complex/re.js +3 -15
- package/lib/esm/function/geometry/distance.js +2 -2
- package/lib/esm/function/logical/and.js +35 -57
- package/lib/esm/function/logical/not.js +3 -6
- package/lib/esm/function/logical/or.js +16 -61
- package/lib/esm/function/logical/xor.js +16 -61
- package/lib/esm/function/matrix/diff.js +3 -8
- package/lib/esm/function/matrix/ones.js +2 -1
- package/lib/esm/function/matrix/rotate.js +5 -5
- package/lib/esm/function/matrix/sqrtm.js +3 -2
- package/lib/esm/function/matrix/transpose.js +47 -50
- package/lib/esm/function/matrix/zeros.js +2 -1
- package/lib/esm/function/probability/factorial.js +1 -3
- package/lib/esm/function/probability/gamma.js +38 -39
- package/lib/esm/function/probability/kldivergence.js +3 -2
- package/lib/esm/function/probability/lgamma.js +29 -29
- package/lib/esm/function/relational/compare.js +21 -67
- package/lib/esm/function/relational/compareNatural.js +54 -49
- package/lib/esm/function/relational/compareText.js +10 -42
- package/lib/esm/function/relational/compareUnits.js +15 -0
- package/lib/esm/function/relational/equal.js +19 -79
- package/lib/esm/function/relational/equalScalar.js +6 -9
- package/lib/esm/function/relational/larger.js +23 -73
- package/lib/esm/function/relational/largerEq.js +23 -73
- package/lib/esm/function/relational/smaller.js +23 -73
- package/lib/esm/function/relational/smallerEq.js +23 -73
- package/lib/esm/function/relational/unequal.js +19 -79
- package/lib/esm/function/special/erf.js +1 -3
- package/lib/esm/function/statistics/std.js +10 -2
- package/lib/esm/function/string/format.js +2 -2
- package/lib/esm/function/string/hex.js +1 -2
- package/lib/esm/function/trigonometry/acos.js +4 -7
- package/lib/esm/function/trigonometry/acosh.js +2 -6
- package/lib/esm/function/trigonometry/acot.js +6 -10
- package/lib/esm/function/trigonometry/acoth.js +4 -7
- package/lib/esm/function/trigonometry/acsc.js +6 -10
- package/lib/esm/function/trigonometry/acsch.js +4 -7
- package/lib/esm/function/trigonometry/asec.js +6 -9
- package/lib/esm/function/trigonometry/asech.js +4 -7
- package/lib/esm/function/trigonometry/asin.js +5 -9
- package/lib/esm/function/trigonometry/asinh.js +4 -8
- package/lib/esm/function/trigonometry/atan.js +5 -10
- package/lib/esm/function/trigonometry/atan2.js +26 -65
- package/lib/esm/function/trigonometry/atanh.js +4 -8
- package/lib/esm/function/trigonometry/cos.js +11 -22
- package/lib/esm/function/trigonometry/cosh.js +5 -20
- package/lib/esm/function/trigonometry/cot.js +10 -20
- package/lib/esm/function/trigonometry/coth.js +6 -20
- package/lib/esm/function/trigonometry/csc.js +12 -22
- package/lib/esm/function/trigonometry/csch.js +6 -20
- package/lib/esm/function/trigonometry/sec.js +12 -22
- package/lib/esm/function/trigonometry/sech.js +6 -20
- package/lib/esm/function/trigonometry/sin.js +11 -23
- package/lib/esm/function/trigonometry/sinh.js +5 -21
- package/lib/esm/function/trigonometry/tan.js +11 -23
- package/lib/esm/function/trigonometry/tanh.js +5 -21
- package/lib/esm/function/trigonometry/trigUnit.js +15 -0
- package/lib/esm/function/unit/to.js +8 -43
- package/lib/esm/function/utils/clone.js +1 -1
- package/lib/esm/function/utils/hasNumericValue.js +3 -1
- package/lib/esm/function/utils/isInteger.js +2 -4
- package/lib/esm/function/utils/isNaN.js +1 -1
- package/lib/esm/function/utils/isNegative.js +3 -7
- package/lib/esm/function/utils/isNumeric.js +4 -10
- package/lib/esm/function/utils/isPositive.js +3 -7
- package/lib/esm/function/utils/isPrime.js +1 -3
- package/lib/esm/function/utils/isZero.js +13 -17
- package/lib/esm/function/utils/numeric.js +11 -4
- package/lib/esm/function/utils/typeOf.js +38 -44
- package/lib/esm/type/bignumber/function/bignumber.js +1 -3
- package/lib/esm/type/boolean.js +1 -3
- package/lib/esm/type/chain/Chain.js +23 -3
- package/lib/esm/type/complex/Complex.js +4 -0
- package/lib/esm/type/complex/function/complex.js +1 -3
- package/lib/esm/type/fraction/Fraction.js +4 -0
- package/lib/esm/type/fraction/function/fraction.js +1 -3
- package/lib/esm/type/matrix/DenseMatrix.js +15 -1
- package/lib/esm/type/matrix/SparseMatrix.js +9 -0
- package/lib/esm/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +2 -2
- package/lib/esm/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +5 -5
- package/lib/esm/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +4 -4
- package/lib/esm/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +3 -3
- package/lib/esm/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +3 -3
- package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +168 -0
- package/lib/esm/type/number.js +1 -3
- package/lib/esm/type/string.js +1 -3
- package/lib/esm/type/unit/Unit.js +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 +215 -183
- package/types/index.ts +358 -144
- package/lib/cjs/utils/polyfills.js +0 -14
- package/lib/esm/utils/polyfills.js +0 -12
package/types/index.d.ts
CHANGED
|
@@ -161,6 +161,10 @@ declare namespace math {
|
|
|
161
161
|
isHexDigit(c: string): boolean
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
+
interface NodeCtor {
|
|
165
|
+
new (): MathNodeCommon
|
|
166
|
+
}
|
|
167
|
+
|
|
164
168
|
interface AccessorNode extends MathNodeCommon {
|
|
165
169
|
type: 'AccessorNode'
|
|
166
170
|
isAccessorNode: true
|
|
@@ -434,6 +438,7 @@ declare namespace math {
|
|
|
434
438
|
tau: number
|
|
435
439
|
|
|
436
440
|
// Class-like constructors
|
|
441
|
+
Node: NodeCtor
|
|
437
442
|
AccessorNode: AccessorNodeCtor
|
|
438
443
|
ArrayNode: ArrayNodeCtor
|
|
439
444
|
AssignmentNode: AssignmentNodeCtor
|
|
@@ -584,7 +589,7 @@ declare namespace math {
|
|
|
584
589
|
*/
|
|
585
590
|
createUnit(
|
|
586
591
|
name: string,
|
|
587
|
-
definition?: string | UnitDefinition,
|
|
592
|
+
definition?: string | UnitDefinition | Unit,
|
|
588
593
|
options?: CreateUnitOptions
|
|
589
594
|
): Unit
|
|
590
595
|
/**
|
|
@@ -594,7 +599,7 @@ declare namespace math {
|
|
|
594
599
|
* @returns The new unit
|
|
595
600
|
*/
|
|
596
601
|
createUnit(
|
|
597
|
-
units: Record<string, string | UnitDefinition>,
|
|
602
|
+
units: Record<string, string | UnitDefinition | Unit>,
|
|
598
603
|
options?: CreateUnitOptions
|
|
599
604
|
): Unit
|
|
600
605
|
|
|
@@ -642,7 +647,7 @@ declare namespace math {
|
|
|
642
647
|
* @returns The created Matrix
|
|
643
648
|
*/
|
|
644
649
|
matrix(
|
|
645
|
-
data: MathCollection,
|
|
650
|
+
data: MathCollection | string[],
|
|
646
651
|
format?: 'sparse' | 'dense',
|
|
647
652
|
dataType?: string
|
|
648
653
|
): Matrix
|
|
@@ -885,15 +890,26 @@ declare namespace math {
|
|
|
885
890
|
*/
|
|
886
891
|
simplify: Simplify
|
|
887
892
|
|
|
893
|
+
simplifyConstant(
|
|
894
|
+
expr: MathNode | string,
|
|
895
|
+
options?: SimplifyOptions
|
|
896
|
+
): MathNode
|
|
897
|
+
simplifyCore(expr: MathNode | string, options?: SimplifyOptions): MathNode
|
|
898
|
+
|
|
888
899
|
/**
|
|
889
900
|
* Replaces variable nodes with their scoped values
|
|
890
901
|
* @param node Tree to replace variable nodes in
|
|
891
902
|
* @param scope Scope to read/write variables
|
|
892
903
|
*/
|
|
893
904
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
894
|
-
resolve(node: MathNode, scope?: Record<string, any>): MathNode
|
|
905
|
+
resolve(node: MathNode | string, scope?: Record<string, any>): MathNode
|
|
906
|
+
resolve(
|
|
907
|
+
node: (MathNode | string)[],
|
|
908
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
909
|
+
scope?: Record<string, any>
|
|
910
|
+
): MathNode[]
|
|
895
911
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
896
|
-
resolve(node:
|
|
912
|
+
resolve(node: Matrix, scope?: Record<string, any>): Matrix
|
|
897
913
|
|
|
898
914
|
/**
|
|
899
915
|
* Calculate the Sparse Matrix LU decomposition with full pivoting.
|
|
@@ -955,8 +971,7 @@ declare namespace math {
|
|
|
955
971
|
add(x: MathType, y: MathType): MathType
|
|
956
972
|
|
|
957
973
|
/**
|
|
958
|
-
* Calculate the cubic root of a value.
|
|
959
|
-
* evaluated element wise.
|
|
974
|
+
* Calculate the cubic root of a value.
|
|
960
975
|
* @param x Value for which to calculate the cubic root.
|
|
961
976
|
* @param allRoots Optional, false by default. Only applicable when x is
|
|
962
977
|
* a number or complex number. If true, all complex roots are returned,
|
|
@@ -964,10 +979,9 @@ declare namespace math {
|
|
|
964
979
|
* @returns Returns the cubic root of x
|
|
965
980
|
*/
|
|
966
981
|
cbrt(x: number, allRoots?: boolean): number
|
|
967
|
-
cbrt(x: BigNumber
|
|
982
|
+
cbrt(x: BigNumber): BigNumber
|
|
968
983
|
cbrt(x: Complex, allRoots?: boolean): Complex
|
|
969
|
-
cbrt(x:
|
|
970
|
-
cbrt(x: Matrix, allRoots?: boolean): Matrix
|
|
984
|
+
cbrt(x: Unit): Unit
|
|
971
985
|
|
|
972
986
|
// Rounding functions, grouped for similarity, even though it breaks
|
|
973
987
|
// the alphabetic order among arithmetic functions.
|
|
@@ -1037,8 +1051,6 @@ declare namespace math {
|
|
|
1037
1051
|
cube(x: BigNumber): BigNumber
|
|
1038
1052
|
cube(x: Fraction): Fraction
|
|
1039
1053
|
cube(x: Complex): Complex
|
|
1040
|
-
cube(x: MathArray): MathArray
|
|
1041
|
-
cube(x: Matrix): Matrix
|
|
1042
1054
|
cube(x: Unit): Unit
|
|
1043
1055
|
|
|
1044
1056
|
/**
|
|
@@ -1088,8 +1100,6 @@ declare namespace math {
|
|
|
1088
1100
|
exp(x: number): number
|
|
1089
1101
|
exp(x: BigNumber): BigNumber
|
|
1090
1102
|
exp(x: Complex): Complex
|
|
1091
|
-
exp(x: MathArray): MathArray
|
|
1092
|
-
exp(x: Matrix): Matrix
|
|
1093
1103
|
|
|
1094
1104
|
/**
|
|
1095
1105
|
* Calculate the value of subtracting 1 from the exponential value. For
|
|
@@ -1100,8 +1110,6 @@ declare namespace math {
|
|
|
1100
1110
|
expm1(x: number): number
|
|
1101
1111
|
expm1(x: BigNumber): BigNumber
|
|
1102
1112
|
expm1(x: Complex): Complex
|
|
1103
|
-
expm1(x: MathArray): MathArray
|
|
1104
|
-
expm1(x: Matrix): Matrix
|
|
1105
1113
|
|
|
1106
1114
|
/**
|
|
1107
1115
|
* Calculate the greatest common divisor for two or more values or
|
|
@@ -1142,14 +1150,13 @@ declare namespace math {
|
|
|
1142
1150
|
lcm(a: Matrix, b: Matrix): Matrix
|
|
1143
1151
|
|
|
1144
1152
|
/**
|
|
1145
|
-
* Calculate the logarithm of a value.
|
|
1146
|
-
* evaluated element wise.
|
|
1153
|
+
* Calculate the logarithm of a value.
|
|
1147
1154
|
* @param x Value for which to calculate the logarithm.
|
|
1148
1155
|
* @param base Optional base for the logarithm. If not provided, the
|
|
1149
1156
|
* natural logarithm of x is calculated. Default value: e.
|
|
1150
1157
|
* @returns Returns the logarithm of x
|
|
1151
1158
|
*/
|
|
1152
|
-
log<T extends number | BigNumber | Complex
|
|
1159
|
+
log<T extends number | BigNumber | Complex>(
|
|
1153
1160
|
x: T,
|
|
1154
1161
|
base?: number | BigNumber | Complex
|
|
1155
1162
|
): NoLiteralType<T>
|
|
@@ -1211,9 +1218,13 @@ declare namespace math {
|
|
|
1211
1218
|
* @param y The second value to multiply
|
|
1212
1219
|
* @returns Multiplication of x and y
|
|
1213
1220
|
*/
|
|
1214
|
-
|
|
1221
|
+
|
|
1222
|
+
multiply<T extends Matrix>(x: T, y: MathType): Matrix
|
|
1223
|
+
multiply<T extends Matrix>(x: MathType, y: T): Matrix
|
|
1224
|
+
|
|
1215
1225
|
multiply(x: Unit, y: Unit): Unit
|
|
1216
1226
|
multiply(x: number, y: number): number
|
|
1227
|
+
multiply(x: MathArray, y: MathArray): MathArray
|
|
1217
1228
|
multiply(x: MathType, y: MathType): MathType
|
|
1218
1229
|
|
|
1219
1230
|
/**
|
|
@@ -1268,21 +1279,19 @@ declare namespace math {
|
|
|
1268
1279
|
sign(x: Unit): Unit
|
|
1269
1280
|
|
|
1270
1281
|
/**
|
|
1271
|
-
* Calculate the square root of a value. For matrices,
|
|
1272
|
-
*
|
|
1282
|
+
* Calculate the square root of a value. For matrices, use either
|
|
1283
|
+
* sqrtm for the matrix square root, or map(M, sqrt) to take the
|
|
1284
|
+
* square root element wise.
|
|
1273
1285
|
* @param x Value for which to calculate the square root
|
|
1274
1286
|
* @returns Returns the square root of x
|
|
1275
1287
|
*/
|
|
1276
|
-
sqrt(x: number): number
|
|
1288
|
+
sqrt(x: number): number | Complex
|
|
1277
1289
|
sqrt(x: BigNumber): BigNumber
|
|
1278
1290
|
sqrt(x: Complex): Complex
|
|
1279
|
-
sqrt(x: MathArray): MathArray
|
|
1280
|
-
sqrt(x: Matrix): Matrix
|
|
1281
1291
|
sqrt(x: Unit): Unit
|
|
1282
1292
|
|
|
1283
1293
|
/**
|
|
1284
|
-
* Compute the square of a value, x * x.
|
|
1285
|
-
* evaluated element wise.
|
|
1294
|
+
* Compute the square of a value, x * x.
|
|
1286
1295
|
* @param x Number for which to calculate the square
|
|
1287
1296
|
* @returns Squared value
|
|
1288
1297
|
*/
|
|
@@ -1290,8 +1299,6 @@ declare namespace math {
|
|
|
1290
1299
|
square(x: BigNumber): BigNumber
|
|
1291
1300
|
square(x: Fraction): Fraction
|
|
1292
1301
|
square(x: Complex): Complex
|
|
1293
|
-
square(x: MathArray): MathArray
|
|
1294
|
-
square(x: Matrix): Matrix
|
|
1295
1302
|
square(x: Unit): Unit
|
|
1296
1303
|
|
|
1297
1304
|
/**
|
|
@@ -1845,14 +1852,37 @@ declare namespace math {
|
|
|
1845
1852
|
* @param format The matrix storage format
|
|
1846
1853
|
* @returns A matrix filled with ones
|
|
1847
1854
|
*/
|
|
1848
|
-
ones(
|
|
1855
|
+
ones(
|
|
1856
|
+
size?: number | number[] | BigNumber | BigNumber[],
|
|
1857
|
+
format?: string
|
|
1858
|
+
): MathCollection
|
|
1849
1859
|
/**
|
|
1850
1860
|
* @param m The x dimension of the matrix
|
|
1851
|
-
* @param n The y dimension of the
|
|
1861
|
+
* @param n The y dimension of the matrix
|
|
1852
1862
|
* @param format The matrix storage format
|
|
1853
1863
|
* @returns A matrix filled with ones
|
|
1854
1864
|
*/
|
|
1855
|
-
ones(
|
|
1865
|
+
ones(
|
|
1866
|
+
m: number | BigNumber,
|
|
1867
|
+
n: number | BigNumber,
|
|
1868
|
+
format?: string
|
|
1869
|
+
): MathCollection
|
|
1870
|
+
/**
|
|
1871
|
+
* @param m The x dimension of the matrix
|
|
1872
|
+
* @param n The y dimension of the matrix
|
|
1873
|
+
* @param p The z dimension of the matrix
|
|
1874
|
+
* @param format The matrix storage format
|
|
1875
|
+
* @returns A matrix filled with ones
|
|
1876
|
+
*/
|
|
1877
|
+
ones(
|
|
1878
|
+
m: number | BigNumber,
|
|
1879
|
+
n: number | BigNumber,
|
|
1880
|
+
p: number | BigNumber,
|
|
1881
|
+
format?: string
|
|
1882
|
+
): MathCollection
|
|
1883
|
+
/** Actually ones can take an arbitrary number of dimensions before the
|
|
1884
|
+
** optional format, not sure how to write that in TypeScript
|
|
1885
|
+
**/
|
|
1856
1886
|
|
|
1857
1887
|
/**
|
|
1858
1888
|
* Partition-based selection of an array or 1D matrix. Will find the kth
|
|
@@ -2033,14 +2063,37 @@ declare namespace math {
|
|
|
2033
2063
|
* @param format The matrix storage format
|
|
2034
2064
|
* @returns A matrix filled with zeros
|
|
2035
2065
|
*/
|
|
2036
|
-
zeros(
|
|
2066
|
+
zeros(
|
|
2067
|
+
size?: number | number[] | BigNumber | BigNumber[],
|
|
2068
|
+
format?: string
|
|
2069
|
+
): MathCollection
|
|
2070
|
+
/**
|
|
2071
|
+
* @param m The x dimension of the matrix
|
|
2072
|
+
* @param n The y dimension of the matrix
|
|
2073
|
+
* @param format The matrix storage format
|
|
2074
|
+
* @returns A matrix filled with zeros
|
|
2075
|
+
*/
|
|
2076
|
+
zeros(
|
|
2077
|
+
m: number | BigNumber,
|
|
2078
|
+
n: number | BigNumber,
|
|
2079
|
+
format?: string
|
|
2080
|
+
): MathCollection
|
|
2037
2081
|
/**
|
|
2038
2082
|
* @param m The x dimension of the matrix
|
|
2039
2083
|
* @param n The y dimension of the matrix
|
|
2084
|
+
* @param p The z dimension of the matrix
|
|
2040
2085
|
* @param format The matrix storage format
|
|
2041
2086
|
* @returns A matrix filled with zeros
|
|
2042
2087
|
*/
|
|
2043
|
-
zeros(
|
|
2088
|
+
zeros(
|
|
2089
|
+
m: number | BigNumber,
|
|
2090
|
+
n: number | BigNumber,
|
|
2091
|
+
p: number | BigNumber,
|
|
2092
|
+
format?: string
|
|
2093
|
+
): MathCollection
|
|
2094
|
+
/** Actually zeros can take any number of dimensions before the
|
|
2095
|
+
** optional format, not sure how to write that in TypeScript
|
|
2096
|
+
**/
|
|
2044
2097
|
|
|
2045
2098
|
/**
|
|
2046
2099
|
* Calculate N-dimensional fourier transform
|
|
@@ -2087,13 +2140,11 @@ declare namespace math {
|
|
|
2087
2140
|
/**
|
|
2088
2141
|
* Compute the gamma function of a value using Lanczos approximation for
|
|
2089
2142
|
* small values, and an extended Stirling approximation for large
|
|
2090
|
-
* values.
|
|
2143
|
+
* values.
|
|
2091
2144
|
* @param n A real or complex number
|
|
2092
2145
|
* @returns The gamma of n
|
|
2093
2146
|
*/
|
|
2094
|
-
gamma<T extends number | BigNumber | Complex
|
|
2095
|
-
n: T
|
|
2096
|
-
): NoLiteralType<T>
|
|
2147
|
+
gamma<T extends number | BigNumber | Complex>(n: T): NoLiteralType<T>
|
|
2097
2148
|
|
|
2098
2149
|
/**
|
|
2099
2150
|
* Calculate the Kullback-Leibler (KL) divergence between two
|
|
@@ -2649,6 +2700,13 @@ declare namespace math {
|
|
|
2649
2700
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2650
2701
|
sum(array: MathCollection): any
|
|
2651
2702
|
|
|
2703
|
+
/**
|
|
2704
|
+
* Count the number of elements of a matrix, array or string.
|
|
2705
|
+
* @param x A matrix, array or string.
|
|
2706
|
+
* @returns The number of members passed in parameters
|
|
2707
|
+
*/
|
|
2708
|
+
count(x: MathCollection | string): number
|
|
2709
|
+
|
|
2652
2710
|
/**
|
|
2653
2711
|
* Compute the cumulative sum of a matrix or a list with values.
|
|
2654
2712
|
* In case of a (multi dimensional) array or matrix, the cumulative sums
|
|
@@ -2765,133 +2823,108 @@ declare namespace math {
|
|
|
2765
2823
|
************************************************************************/
|
|
2766
2824
|
|
|
2767
2825
|
/**
|
|
2768
|
-
* Calculate the inverse cosine of a value.
|
|
2769
|
-
* is evaluated element wise.
|
|
2826
|
+
* Calculate the inverse cosine of a value.
|
|
2770
2827
|
* @param x Function input
|
|
2771
2828
|
* @returns The arc cosine of x
|
|
2772
2829
|
*/
|
|
2773
|
-
acos(x: number): number
|
|
2830
|
+
acos(x: number): number | Complex
|
|
2774
2831
|
acos(x: BigNumber): BigNumber
|
|
2775
2832
|
acos(x: Complex): Complex
|
|
2776
|
-
acos(x: MathArray): MathArray
|
|
2777
|
-
acos(x: Matrix): Matrix
|
|
2778
2833
|
|
|
2779
2834
|
/**
|
|
2780
2835
|
* Calculate the hyperbolic arccos of a value, defined as acosh(x) =
|
|
2781
|
-
* ln(sqrt(x^2 - 1) + x).
|
|
2782
|
-
* element wise.
|
|
2836
|
+
* ln(sqrt(x^2 - 1) + x).
|
|
2783
2837
|
* @param x Function input
|
|
2784
2838
|
* @returns The hyperbolic arccosine of x
|
|
2785
2839
|
*/
|
|
2786
|
-
acosh(x: number): number
|
|
2840
|
+
acosh(x: number): number | Complex
|
|
2787
2841
|
acosh(x: BigNumber): BigNumber
|
|
2788
2842
|
acosh(x: Complex): Complex
|
|
2789
|
-
acosh(x: MathArray): MathArray
|
|
2790
|
-
acosh(x: Matrix): Matrix
|
|
2791
2843
|
|
|
2792
2844
|
/**
|
|
2793
|
-
* Calculate the inverse cotangent of a value.
|
|
2794
|
-
* function is evaluated element wise.
|
|
2845
|
+
* Calculate the inverse cotangent of a value.
|
|
2795
2846
|
* @param x Function input
|
|
2796
2847
|
* @returns The arc cotangent of x
|
|
2797
2848
|
*/
|
|
2798
2849
|
acot(x: number): number
|
|
2799
2850
|
acot(x: BigNumber): BigNumber
|
|
2800
|
-
acot(x:
|
|
2801
|
-
acot(x: Matrix): Matrix
|
|
2851
|
+
acot(x: Complex): Complex
|
|
2802
2852
|
|
|
2803
2853
|
/**
|
|
2804
2854
|
* Calculate the hyperbolic arccotangent of a value, defined as acoth(x)
|
|
2805
|
-
* = (ln((x+1)/x) + ln(x/(x-1))) / 2.
|
|
2806
|
-
* evaluated element wise.
|
|
2855
|
+
* = (ln((x+1)/x) + ln(x/(x-1))) / 2.
|
|
2807
2856
|
* @param x Function input
|
|
2808
2857
|
* @returns The hyperbolic arccotangent of x
|
|
2809
2858
|
*/
|
|
2810
2859
|
acoth(x: number): number
|
|
2811
2860
|
acoth(x: BigNumber): BigNumber
|
|
2812
|
-
acoth(x:
|
|
2813
|
-
acoth(x: Matrix): Matrix
|
|
2861
|
+
acoth(x: Complex): Complex
|
|
2814
2862
|
|
|
2815
2863
|
/**
|
|
2816
|
-
* Calculate the inverse cosecant of a value.
|
|
2817
|
-
* is evaluated element wise.
|
|
2864
|
+
* Calculate the inverse cosecant of a value.
|
|
2818
2865
|
* @param x Function input
|
|
2819
2866
|
* @returns The arc cosecant of x
|
|
2820
2867
|
*/
|
|
2821
|
-
acsc(x: number): number
|
|
2868
|
+
acsc(x: number): number | Complex
|
|
2822
2869
|
acsc(x: BigNumber): BigNumber
|
|
2823
|
-
acsc(x:
|
|
2824
|
-
acsc(x: Matrix): Matrix
|
|
2870
|
+
acsc(x: Complex): Complex
|
|
2825
2871
|
|
|
2826
2872
|
/**
|
|
2827
2873
|
* Calculate the hyperbolic arccosecant of a value, defined as acsch(x)
|
|
2828
|
-
* = ln(1/x + sqrt(1/x^2 + 1)).
|
|
2829
|
-
* element wise.
|
|
2874
|
+
* = ln(1/x + sqrt(1/x^2 + 1)).
|
|
2830
2875
|
* @param x Function input
|
|
2831
2876
|
* @returns The hyperbolic arccosecant of x
|
|
2832
2877
|
*/
|
|
2833
2878
|
acsch(x: number): number
|
|
2834
2879
|
acsch(x: BigNumber): BigNumber
|
|
2835
|
-
acsch(x:
|
|
2836
|
-
acsch(x: Matrix): Matrix
|
|
2880
|
+
acsch(x: Complex): Complex
|
|
2837
2881
|
|
|
2838
2882
|
/**
|
|
2839
|
-
* Calculate the inverse secant of a value.
|
|
2840
|
-
* is evaluated element wise.
|
|
2883
|
+
* Calculate the inverse secant of a value.
|
|
2841
2884
|
* @param x Function input
|
|
2842
2885
|
* @returns The arc secant of x
|
|
2843
2886
|
*/
|
|
2844
|
-
asec(x: number): number
|
|
2887
|
+
asec(x: number): number | Complex
|
|
2845
2888
|
asec(x: BigNumber): BigNumber
|
|
2846
|
-
asec(x:
|
|
2847
|
-
asec(x: Matrix): Matrix
|
|
2889
|
+
asec(x: Complex): Complex
|
|
2848
2890
|
|
|
2849
2891
|
/**
|
|
2850
2892
|
* Calculate the hyperbolic arcsecant of a value, defined as asech(x) =
|
|
2851
|
-
* ln(sqrt(1/x^2 - 1) + 1/x).
|
|
2852
|
-
* element wise.
|
|
2893
|
+
* ln(sqrt(1/x^2 - 1) + 1/x).
|
|
2853
2894
|
* @param x Function input
|
|
2854
2895
|
* @returns The hyperbolic arcsecant of x
|
|
2855
2896
|
*/
|
|
2856
|
-
asech(x: number): number
|
|
2897
|
+
asech(x: number): number | Complex
|
|
2857
2898
|
asech(x: BigNumber): BigNumber
|
|
2858
|
-
asech(x:
|
|
2859
|
-
asech(x: Matrix): Matrix
|
|
2899
|
+
asech(x: Complex): Complex
|
|
2860
2900
|
|
|
2861
2901
|
/**
|
|
2862
|
-
* Calculate the inverse sine of a value.
|
|
2863
|
-
* evaluated element wise.
|
|
2902
|
+
* Calculate the inverse sine of a value.
|
|
2864
2903
|
* @param x Function input
|
|
2865
2904
|
* @returns The arc sine of x
|
|
2866
2905
|
*/
|
|
2867
|
-
asin(x: number): number
|
|
2906
|
+
asin(x: number): number | Complex
|
|
2868
2907
|
asin(x: BigNumber): BigNumber
|
|
2869
2908
|
asin(x: Complex): Complex
|
|
2870
|
-
asin(x: MathArray): MathArray
|
|
2871
|
-
asin(x: Matrix): Matrix
|
|
2872
2909
|
|
|
2873
2910
|
/**
|
|
2874
2911
|
* Calculate the hyperbolic arcsine of a value, defined as asinh(x) =
|
|
2875
|
-
* ln(x + sqrt(x^2 + 1)).
|
|
2876
|
-
* element wise.
|
|
2912
|
+
* ln(x + sqrt(x^2 + 1)).
|
|
2877
2913
|
* @param x Function input
|
|
2878
2914
|
* @returns The hyperbolic arcsine of x
|
|
2879
2915
|
*/
|
|
2880
2916
|
asinh(x: number): number
|
|
2881
2917
|
asinh(x: BigNumber): BigNumber
|
|
2882
|
-
asinh(x:
|
|
2883
|
-
asinh(x: Matrix): Matrix
|
|
2918
|
+
asinh(x: Complex): Complex
|
|
2884
2919
|
|
|
2885
2920
|
/**
|
|
2886
|
-
* Calculate the inverse tangent of a value.
|
|
2887
|
-
* is evaluated element wise.
|
|
2921
|
+
* Calculate the inverse tangent of a value.
|
|
2888
2922
|
* @param x Function input
|
|
2889
2923
|
* @returns The arc tangent of x
|
|
2890
2924
|
*/
|
|
2891
2925
|
atan(x: number): number
|
|
2892
2926
|
atan(x: BigNumber): BigNumber
|
|
2893
|
-
atan(x:
|
|
2894
|
-
atan(x: Matrix): Matrix
|
|
2927
|
+
atan(x: Complex): Complex
|
|
2895
2928
|
|
|
2896
2929
|
/**
|
|
2897
2930
|
* Calculate the inverse tangent function with two arguments, y/x. By
|
|
@@ -2905,156 +2938,127 @@ declare namespace math {
|
|
|
2905
2938
|
|
|
2906
2939
|
/**
|
|
2907
2940
|
* Calculate the hyperbolic arctangent of a value, defined as atanh(x) =
|
|
2908
|
-
* ln((1 + x)/(1 - x)) / 2.
|
|
2909
|
-
* element wise.
|
|
2941
|
+
* ln((1 + x)/(1 - x)) / 2.
|
|
2910
2942
|
* @param x Function input
|
|
2911
2943
|
* @returns The hyperbolic arctangent of x
|
|
2912
2944
|
*/
|
|
2913
|
-
atanh(x: number): number
|
|
2945
|
+
atanh(x: number): number | Complex
|
|
2914
2946
|
atanh(x: BigNumber): BigNumber
|
|
2915
|
-
atanh(x:
|
|
2916
|
-
atanh(x: Matrix): Matrix
|
|
2947
|
+
atanh(x: Complex): Complex
|
|
2917
2948
|
|
|
2918
2949
|
/**
|
|
2919
|
-
* Calculate the cosine of a value.
|
|
2920
|
-
* evaluated element wise.
|
|
2950
|
+
* Calculate the cosine of a value.
|
|
2921
2951
|
* @param x Function input
|
|
2922
2952
|
* @returns The cosine of x
|
|
2923
2953
|
*/
|
|
2924
2954
|
cos(x: number | Unit): number
|
|
2925
2955
|
cos(x: BigNumber): BigNumber
|
|
2926
2956
|
cos(x: Complex): Complex
|
|
2927
|
-
cos(x: MathArray): MathArray
|
|
2928
|
-
cos(x: Matrix): Matrix
|
|
2929
2957
|
|
|
2930
2958
|
/**
|
|
2931
2959
|
* Calculate the hyperbolic cosine of a value, defined as cosh(x) = 1/2
|
|
2932
|
-
* * (exp(x) + exp(-x)).
|
|
2933
|
-
* wise.
|
|
2960
|
+
* * (exp(x) + exp(-x)).
|
|
2934
2961
|
* @param x Function input
|
|
2935
2962
|
* @returns The hyperbolic cosine of x
|
|
2936
2963
|
*/
|
|
2937
2964
|
cosh(x: number | Unit): number
|
|
2938
2965
|
cosh(x: BigNumber): BigNumber
|
|
2939
2966
|
cosh(x: Complex): Complex
|
|
2940
|
-
cosh(x: MathArray): MathArray
|
|
2941
|
-
cosh(x: Matrix): Matrix
|
|
2942
2967
|
|
|
2943
2968
|
/**
|
|
2944
2969
|
* Calculate the cotangent of a value. cot(x) is defined as 1 / tan(x).
|
|
2945
|
-
* For matrices, the function is evaluated element wise.
|
|
2946
2970
|
* @param x Function input
|
|
2947
2971
|
* @returns The cotangent of x
|
|
2948
2972
|
*/
|
|
2949
2973
|
cot(x: number | Unit): number
|
|
2974
|
+
cot(x: BigNumber): BigNumber
|
|
2950
2975
|
cot(x: Complex): Complex
|
|
2951
|
-
cot(x: MathArray): MathArray
|
|
2952
|
-
cot(x: Matrix): Matrix
|
|
2953
2976
|
|
|
2954
2977
|
/**
|
|
2955
2978
|
* Calculate the hyperbolic cotangent of a value, defined as coth(x) = 1
|
|
2956
|
-
* / tanh(x).
|
|
2979
|
+
* / tanh(x).
|
|
2957
2980
|
* @param x Function input
|
|
2958
2981
|
* @returns The hyperbolic cotangent of x
|
|
2959
2982
|
*/
|
|
2960
2983
|
coth(x: number | Unit): number
|
|
2984
|
+
coth(x: BigNumber): BigNumber
|
|
2961
2985
|
coth(x: Complex): Complex
|
|
2962
|
-
coth(x: MathArray): MathArray
|
|
2963
|
-
coth(x: Matrix): Matrix
|
|
2964
2986
|
|
|
2965
2987
|
/**
|
|
2966
|
-
* Calculate the cosecant of a value, defined as csc(x) = 1/sin(x).
|
|
2967
|
-
* matrices, the function is evaluated element wise.
|
|
2988
|
+
* Calculate the cosecant of a value, defined as csc(x) = 1/sin(x).
|
|
2968
2989
|
* @param x Function input
|
|
2969
2990
|
* @returns The cosecant hof x
|
|
2970
2991
|
*/
|
|
2971
2992
|
csc(x: number | Unit): number
|
|
2993
|
+
csc(x: BigNumber): BigNumber
|
|
2972
2994
|
csc(x: Complex): Complex
|
|
2973
|
-
csc(x: MathArray): MathArray
|
|
2974
|
-
csc(x: Matrix): Matrix
|
|
2975
2995
|
|
|
2976
2996
|
/**
|
|
2977
2997
|
* Calculate the hyperbolic cosecant of a value, defined as csch(x) = 1
|
|
2978
|
-
* / sinh(x).
|
|
2998
|
+
* / sinh(x).
|
|
2979
2999
|
* @param x Function input
|
|
2980
3000
|
* @returns The hyperbolic cosecant of x
|
|
2981
3001
|
*/
|
|
2982
3002
|
csch(x: number | Unit): number
|
|
3003
|
+
csch(x: BigNumber): BigNumber
|
|
2983
3004
|
csch(x: Complex): Complex
|
|
2984
|
-
csch(x: MathArray): MathArray
|
|
2985
|
-
csch(x: Matrix): Matrix
|
|
2986
3005
|
|
|
2987
3006
|
/**
|
|
2988
|
-
* Calculate the secant of a value, defined as sec(x) = 1/cos(x).
|
|
2989
|
-
* matrices, the function is evaluated element wise.
|
|
3007
|
+
* Calculate the secant of a value, defined as sec(x) = 1/cos(x).
|
|
2990
3008
|
* @param x Function input
|
|
2991
3009
|
* @returns The secant of x
|
|
2992
3010
|
*/
|
|
2993
3011
|
sec(x: number | Unit): number
|
|
3012
|
+
sec(x: BigNumber): BigNumber
|
|
2994
3013
|
sec(x: Complex): Complex
|
|
2995
|
-
sec(x: MathArray): MathArray
|
|
2996
|
-
sec(x: Matrix): Matrix
|
|
2997
3014
|
|
|
2998
3015
|
/**
|
|
2999
3016
|
* Calculate the hyperbolic secant of a value, defined as sech(x) = 1 /
|
|
3000
|
-
* cosh(x).
|
|
3017
|
+
* cosh(x).
|
|
3001
3018
|
* @param x Function input
|
|
3002
3019
|
* @returns The hyperbolic secant of x
|
|
3003
3020
|
*/
|
|
3004
3021
|
sech(x: number | Unit): number
|
|
3022
|
+
sech(x: BigNumber): BigNumber
|
|
3005
3023
|
sech(x: Complex): Complex
|
|
3006
|
-
sech(x: MathArray): MathArray
|
|
3007
|
-
sech(x: Matrix): Matrix
|
|
3008
3024
|
|
|
3009
3025
|
/**
|
|
3010
|
-
* Calculate the sine of a value.
|
|
3011
|
-
* evaluated element wise.
|
|
3026
|
+
* Calculate the sine of a value.
|
|
3012
3027
|
* @param x Function input
|
|
3013
3028
|
* @returns The sine of x
|
|
3014
3029
|
*/
|
|
3015
3030
|
sin(x: number | Unit): number
|
|
3016
3031
|
sin(x: BigNumber): BigNumber
|
|
3017
3032
|
sin(x: Complex): Complex
|
|
3018
|
-
sin(x: MathArray): MathArray
|
|
3019
|
-
sin(x: Matrix): Matrix
|
|
3020
3033
|
|
|
3021
3034
|
/**
|
|
3022
3035
|
* Calculate the hyperbolic sine of a value, defined as sinh(x) = 1/2 *
|
|
3023
|
-
* (exp(x) - exp(-x)).
|
|
3024
|
-
* wise.
|
|
3036
|
+
* (exp(x) - exp(-x)).
|
|
3025
3037
|
* @param x Function input
|
|
3026
3038
|
* @returns The hyperbolic sine of x
|
|
3027
3039
|
*/
|
|
3028
3040
|
sinh(x: number | Unit): number
|
|
3029
3041
|
sinh(x: BigNumber): BigNumber
|
|
3030
3042
|
sinh(x: Complex): Complex
|
|
3031
|
-
sinh(x: MathArray): MathArray
|
|
3032
|
-
sinh(x: Matrix): Matrix
|
|
3033
3043
|
|
|
3034
3044
|
/**
|
|
3035
3045
|
* Calculate the tangent of a value. tan(x) is equal to sin(x) / cos(x).
|
|
3036
|
-
* For matrices, the function is evaluated element wise.
|
|
3037
3046
|
* @param x Function input
|
|
3038
3047
|
* @returns The tangent of x
|
|
3039
3048
|
*/
|
|
3040
3049
|
tan(x: number | Unit): number
|
|
3041
3050
|
tan(x: BigNumber): BigNumber
|
|
3042
3051
|
tan(x: Complex): Complex
|
|
3043
|
-
tan(x: MathArray): MathArray
|
|
3044
|
-
tan(x: Matrix): Matrix
|
|
3045
3052
|
|
|
3046
3053
|
/**
|
|
3047
3054
|
* Calculate the hyperbolic tangent of a value, defined as tanh(x) =
|
|
3048
|
-
* (exp(2 * x) - 1) / (exp(2 * x) + 1).
|
|
3049
|
-
* evaluated element wise.
|
|
3055
|
+
* (exp(2 * x) - 1) / (exp(2 * x) + 1).
|
|
3050
3056
|
* @param x Function input
|
|
3051
3057
|
* @returns The hyperbolic tangent of x
|
|
3052
3058
|
*/
|
|
3053
3059
|
tanh(x: number | Unit): number
|
|
3054
3060
|
tanh(x: BigNumber): BigNumber
|
|
3055
3061
|
tanh(x: Complex): Complex
|
|
3056
|
-
tanh(x: MathArray): MathArray
|
|
3057
|
-
tanh(x: Matrix): Matrix
|
|
3058
3062
|
|
|
3059
3063
|
/*************************************************************************
|
|
3060
3064
|
* Unit functions
|
|
@@ -3288,10 +3292,12 @@ declare namespace math {
|
|
|
3288
3292
|
factories: FactoryFunctionMap,
|
|
3289
3293
|
config?: ConfigOptions
|
|
3290
3294
|
) => MathJsStatic
|
|
3291
|
-
factory: <T>(
|
|
3295
|
+
factory: <T, TDeps extends readonly MathJsFunctionName[]>(
|
|
3292
3296
|
name: string,
|
|
3293
|
-
dependencies:
|
|
3294
|
-
create: (
|
|
3297
|
+
dependencies: TDeps,
|
|
3298
|
+
create: (
|
|
3299
|
+
injected: Pick<MathJsStatic, Extract<MathJsFunctionName, TDeps[number]>>
|
|
3300
|
+
) => T,
|
|
3295
3301
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3296
3302
|
meta?: any
|
|
3297
3303
|
) => FactoryFunction<T>
|
|
@@ -3759,6 +3765,18 @@ declare namespace math {
|
|
|
3759
3765
|
override?: boolean
|
|
3760
3766
|
}
|
|
3761
3767
|
|
|
3768
|
+
type SimplifyContext = Partial<
|
|
3769
|
+
Record<
|
|
3770
|
+
OperatorNodeFn,
|
|
3771
|
+
{
|
|
3772
|
+
trivial: boolean
|
|
3773
|
+
total: boolean
|
|
3774
|
+
commutative: boolean
|
|
3775
|
+
associative: boolean
|
|
3776
|
+
}
|
|
3777
|
+
>
|
|
3778
|
+
>
|
|
3779
|
+
|
|
3762
3780
|
interface SimplifyOptions {
|
|
3763
3781
|
/** A boolean which is `true` by default. */
|
|
3764
3782
|
exactFractions?: boolean
|
|
@@ -3768,23 +3786,46 @@ declare namespace math {
|
|
|
3768
3786
|
* Default value is 10000.
|
|
3769
3787
|
*/
|
|
3770
3788
|
fractionsLimit?: number
|
|
3789
|
+
/** A boolean which is `false` by default. */
|
|
3790
|
+
consoleDebug?: boolean
|
|
3791
|
+
/**
|
|
3792
|
+
* gives properties of each operator, which determine what simplifications
|
|
3793
|
+
* are allowed. Properties are commutative, associative, total (whether
|
|
3794
|
+
* the operation is defined for all arguments), and trivial (whether
|
|
3795
|
+
* the operation applied to a single argument leaves that argument
|
|
3796
|
+
* unchanged).
|
|
3797
|
+
*/
|
|
3798
|
+
context?: SimplifyContext
|
|
3771
3799
|
}
|
|
3772
3800
|
|
|
3773
3801
|
type SimplifyRule =
|
|
3774
|
-
| {
|
|
3802
|
+
| {
|
|
3803
|
+
l: string
|
|
3804
|
+
r: string
|
|
3805
|
+
repeat?: boolean
|
|
3806
|
+
assuming?: SimplifyContext
|
|
3807
|
+
imposeContext?: SimplifyContext
|
|
3808
|
+
}
|
|
3809
|
+
| {
|
|
3810
|
+
s: string
|
|
3811
|
+
repeat?: boolean
|
|
3812
|
+
assuming?: SimplifyContext
|
|
3813
|
+
imposeContext?: SimplifyContext
|
|
3814
|
+
}
|
|
3775
3815
|
| string
|
|
3776
3816
|
| ((node: MathNode) => MathNode)
|
|
3777
3817
|
|
|
3778
3818
|
interface Simplify {
|
|
3819
|
+
(expr: MathNode | string): MathNode
|
|
3779
3820
|
(
|
|
3780
3821
|
expr: MathNode | string,
|
|
3781
|
-
rules
|
|
3822
|
+
rules: SimplifyRule[],
|
|
3782
3823
|
scope?: object,
|
|
3783
3824
|
options?: SimplifyOptions
|
|
3784
3825
|
): MathNode
|
|
3785
3826
|
(
|
|
3786
3827
|
expr: MathNode | string,
|
|
3787
|
-
scope
|
|
3828
|
+
scope: object,
|
|
3788
3829
|
options?: SimplifyOptions
|
|
3789
3830
|
): MathNode
|
|
3790
3831
|
|
|
@@ -4104,7 +4145,7 @@ declare namespace math {
|
|
|
4104
4145
|
*/
|
|
4105
4146
|
createUnit(
|
|
4106
4147
|
this: MathJsChain<string>,
|
|
4107
|
-
definition?: string | UnitDefinition,
|
|
4148
|
+
definition?: string | UnitDefinition | Unit,
|
|
4108
4149
|
options?: CreateUnitOptions
|
|
4109
4150
|
): MathJsChain<Unit>
|
|
4110
4151
|
/**
|
|
@@ -4118,7 +4159,7 @@ declare namespace math {
|
|
|
4118
4159
|
* 0.
|
|
4119
4160
|
*/
|
|
4120
4161
|
createUnit(
|
|
4121
|
-
this: MathJsChain<Record<string, string | UnitDefinition>>,
|
|
4162
|
+
this: MathJsChain<Record<string, string | UnitDefinition | Unit>>,
|
|
4122
4163
|
options?: CreateUnitOptions
|
|
4123
4164
|
): MathJsChain<Unit>
|
|
4124
4165
|
|
|
@@ -4369,15 +4410,23 @@ declare namespace math {
|
|
|
4369
4410
|
* pass a custom set of rules to the function as second argument. A rule
|
|
4370
4411
|
* can be specified as an object, string, or function.
|
|
4371
4412
|
* @param scope Scope to variables
|
|
4413
|
+
* @param options Options to configure the behavior of simplify
|
|
4372
4414
|
*/
|
|
4373
4415
|
simplify(
|
|
4374
4416
|
this: MathJsChain<MathNode | string>,
|
|
4375
4417
|
rules?: SimplifyRule[],
|
|
4376
|
-
scope?: object
|
|
4418
|
+
scope?: Map<string, MathType> | object,
|
|
4419
|
+
options?: SimplifyOptions
|
|
4377
4420
|
): MathJsChain<MathNode>
|
|
4378
4421
|
|
|
4379
|
-
|
|
4380
|
-
|
|
4422
|
+
simplifyConstant(
|
|
4423
|
+
this: MathJsChain<MathNode | string>,
|
|
4424
|
+
options?: SimplifyOptions
|
|
4425
|
+
): MathJsChain<MathNode>
|
|
4426
|
+
simplifyCore(
|
|
4427
|
+
this: MathJsChain<MathNode | string>,
|
|
4428
|
+
options?: SimplifyOptions
|
|
4429
|
+
): MathJsChain<MathNode>
|
|
4381
4430
|
|
|
4382
4431
|
/**
|
|
4383
4432
|
* Calculate the Sparse Matrix LU decomposition with full pivoting.
|
|
@@ -4461,16 +4510,9 @@ declare namespace math {
|
|
|
4461
4510
|
* if false (default) the principal root is returned.
|
|
4462
4511
|
*/
|
|
4463
4512
|
cbrt(this: MathJsChain<number>, allRoots?: boolean): MathJsChain<number>
|
|
4464
|
-
cbrt(
|
|
4465
|
-
this: MathJsChain<BigNumber>,
|
|
4466
|
-
allRoots?: boolean
|
|
4467
|
-
): MathJsChain<BigNumber>
|
|
4513
|
+
cbrt(this: MathJsChain<BigNumber>): MathJsChain<BigNumber>
|
|
4468
4514
|
cbrt(this: MathJsChain<Complex>, allRoots?: boolean): MathJsChain<Complex>
|
|
4469
|
-
cbrt(
|
|
4470
|
-
this: MathJsChain<MathArray>,
|
|
4471
|
-
allRoots?: boolean
|
|
4472
|
-
): MathJsChain<MathArray>
|
|
4473
|
-
cbrt(this: MathJsChain<Matrix>, allRoots?: boolean): MathJsChain<Matrix>
|
|
4515
|
+
cbrt(this: MathJsChain<Unit>, allRoots?: boolean): MathJsChain<Unit>
|
|
4474
4516
|
|
|
4475
4517
|
// Rounding functions grouped for similarity
|
|
4476
4518
|
|
|
@@ -4541,8 +4583,6 @@ declare namespace math {
|
|
|
4541
4583
|
cube(this: MathJsChain<BigNumber>): MathJsChain<BigNumber>
|
|
4542
4584
|
cube(this: MathJsChain<Fraction>): MathJsChain<Fraction>
|
|
4543
4585
|
cube(this: MathJsChain<Complex>): MathJsChain<Complex>
|
|
4544
|
-
cube(this: MathJsChain<MathArray>): MathJsChain<MathArray>
|
|
4545
|
-
cube(this: MathJsChain<Matrix>): MathJsChain<Matrix>
|
|
4546
4586
|
cube(this: MathJsChain<Unit>): MathJsChain<Unit>
|
|
4547
4587
|
|
|
4548
4588
|
/**
|
|
@@ -4582,8 +4622,6 @@ declare namespace math {
|
|
|
4582
4622
|
exp(this: MathJsChain<number>): MathJsChain<number>
|
|
4583
4623
|
exp(this: MathJsChain<BigNumber>): MathJsChain<BigNumber>
|
|
4584
4624
|
exp(this: MathJsChain<Complex>): MathJsChain<Complex>
|
|
4585
|
-
exp(this: MathJsChain<MathArray>): MathJsChain<MathArray>
|
|
4586
|
-
exp(this: MathJsChain<Matrix>): MathJsChain<Matrix>
|
|
4587
4625
|
|
|
4588
4626
|
/**
|
|
4589
4627
|
* Calculate the value of subtracting 1 from the exponential value. For
|
|
@@ -4592,8 +4630,6 @@ declare namespace math {
|
|
|
4592
4630
|
expm1(this: MathJsChain<number>): MathJsChain<number>
|
|
4593
4631
|
expm1(this: MathJsChain<BigNumber>): MathJsChain<BigNumber>
|
|
4594
4632
|
expm1(this: MathJsChain<Complex>): MathJsChain<Complex>
|
|
4595
|
-
expm1(this: MathJsChain<MathArray>): MathJsChain<MathArray>
|
|
4596
|
-
expm1(this: MathJsChain<Matrix>): MathJsChain<Matrix>
|
|
4597
4633
|
|
|
4598
4634
|
/**
|
|
4599
4635
|
* Calculate the greatest common divisor for two or more values or
|
|
@@ -4835,6 +4871,21 @@ declare namespace math {
|
|
|
4835
4871
|
b: number | BigNumber
|
|
4836
4872
|
): MathJsChain<MathArray>
|
|
4837
4873
|
|
|
4874
|
+
/**
|
|
4875
|
+
* Count the number of elements of a matrix, array or string.
|
|
4876
|
+
*/
|
|
4877
|
+
count(this: MathJsChain<MathCollection>): MathJsChain<number>
|
|
4878
|
+
count(this: MathJsChain<string>): MathJsChain<number>
|
|
4879
|
+
|
|
4880
|
+
/**
|
|
4881
|
+
* Compute the sum of a matrix or a list with values. In case of a
|
|
4882
|
+
* (multi dimensional) array or matrix, the sum of all elements will be
|
|
4883
|
+
* calculated.
|
|
4884
|
+
*/
|
|
4885
|
+
sum(
|
|
4886
|
+
this: MathJsChain<Array<number | BigNumber | Fraction>>
|
|
4887
|
+
): MathJsChain<number>
|
|
4888
|
+
sum(this: MathJsChain<MathCollection>): MathJsChain<number>
|
|
4838
4889
|
/*************************************************************************
|
|
4839
4890
|
* Bitwise functions
|
|
4840
4891
|
************************************************************************/
|
|
@@ -5248,16 +5299,7 @@ declare namespace math {
|
|
|
5248
5299
|
* @param format The matrix storage format
|
|
5249
5300
|
*/
|
|
5250
5301
|
ones(
|
|
5251
|
-
this: MathJsChain<number | number[]>,
|
|
5252
|
-
format?: string
|
|
5253
|
-
): MathJsChain<MathCollection>
|
|
5254
|
-
|
|
5255
|
-
/**
|
|
5256
|
-
* @param format The matrix storage format
|
|
5257
|
-
*/
|
|
5258
|
-
ones(
|
|
5259
|
-
this: MathJsChain<number>,
|
|
5260
|
-
n: number,
|
|
5302
|
+
this: MathJsChain<number | number[] | BigNumber | BigNumber[]>,
|
|
5261
5303
|
format?: string
|
|
5262
5304
|
): MathJsChain<MathCollection>
|
|
5263
5305
|
|
|
@@ -5396,17 +5438,7 @@ declare namespace math {
|
|
|
5396
5438
|
* @returns A matrix filled with zeros
|
|
5397
5439
|
*/
|
|
5398
5440
|
zeros(
|
|
5399
|
-
this: MathJsChain<number | number[]>,
|
|
5400
|
-
format?: string
|
|
5401
|
-
): MathJsChain<MathCollection>
|
|
5402
|
-
|
|
5403
|
-
/**
|
|
5404
|
-
* @param n The y dimension of the matrix
|
|
5405
|
-
* @param format The matrix storage format
|
|
5406
|
-
*/
|
|
5407
|
-
zeros(
|
|
5408
|
-
this: MathJsChain<number>,
|
|
5409
|
-
n: number,
|
|
5441
|
+
this: MathJsChain<number | number[] | BigNumber | BigNumber[]>,
|
|
5410
5442
|
format?: string
|
|
5411
5443
|
): MathJsChain<MathCollection>
|
|
5412
5444
|
|