mathjs 11.8.2 → 11.9.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.
Files changed (87) hide show
  1. package/HISTORY.md +24 -0
  2. package/lib/browser/math.js +1 -1
  3. package/lib/browser/math.js.LICENSE.txt +2 -2
  4. package/lib/browser/math.js.map +1 -1
  5. package/lib/cjs/entry/dependenciesAny/dependenciesFreqz.generated.js +28 -0
  6. package/lib/cjs/entry/dependenciesAny/dependenciesRange.generated.js +4 -0
  7. package/lib/cjs/entry/dependenciesAny/dependenciesRangeTransform.generated.js +4 -0
  8. package/lib/cjs/entry/dependenciesAny/dependenciesSolveODE.generated.js +46 -0
  9. package/lib/cjs/entry/dependenciesAny/dependenciesZpk2tf.generated.js +26 -0
  10. package/lib/cjs/entry/dependenciesAny.generated.js +21 -0
  11. package/lib/cjs/entry/dependenciesNumber/dependenciesRange.generated.js +4 -0
  12. package/lib/cjs/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +4 -0
  13. package/lib/cjs/entry/impureFunctionsAny.generated.js +35 -30
  14. package/lib/cjs/entry/impureFunctionsNumber.generated.js +2 -0
  15. package/lib/cjs/entry/pureFunctionsAny.generated.js +82 -45
  16. package/lib/cjs/entry/pureFunctionsNumber.generated.js +2 -0
  17. package/lib/cjs/expression/embeddedDocs/core/typed.js +1 -1
  18. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +11 -3
  19. package/lib/cjs/expression/embeddedDocs/function/{matrix → algebra}/lyap.js +2 -2
  20. package/lib/cjs/expression/embeddedDocs/function/algebra/polynomialRoot.js +1 -1
  21. package/lib/cjs/expression/embeddedDocs/function/{matrix → algebra}/schur.js +2 -2
  22. package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyConstant.js +1 -1
  23. package/lib/cjs/expression/embeddedDocs/function/{matrix → algebra}/sylvester.js +2 -2
  24. package/lib/cjs/expression/embeddedDocs/function/arithmetic/invmod.js +1 -1
  25. package/lib/cjs/expression/embeddedDocs/function/expression/evaluate.js +2 -2
  26. package/lib/cjs/expression/embeddedDocs/function/matrix/diff.js +1 -1
  27. package/lib/cjs/expression/embeddedDocs/function/matrix/range.js +1 -1
  28. package/lib/cjs/expression/embeddedDocs/function/numeric/solveODE.js +15 -0
  29. package/lib/cjs/expression/embeddedDocs/function/signal/freqz.js +15 -0
  30. package/lib/cjs/expression/embeddedDocs/function/signal/zpk2tf.js +15 -0
  31. package/lib/cjs/expression/embeddedDocs/function/utils/numeric.js +1 -1
  32. package/lib/cjs/expression/node/FunctionNode.js +5 -6
  33. package/lib/cjs/expression/node/ObjectNode.js +5 -7
  34. package/lib/cjs/expression/node/SymbolNode.js +1 -1
  35. package/lib/cjs/expression/transform/range.transform.js +7 -3
  36. package/lib/cjs/factoriesAny.js +21 -0
  37. package/lib/cjs/function/algebra/simplify.js +3 -0
  38. package/lib/cjs/function/matrix/range.js +34 -110
  39. package/lib/cjs/function/numeric/solveODE.js +315 -0
  40. package/lib/cjs/function/signal/freqz.js +117 -0
  41. package/lib/cjs/function/signal/zpk2tf.js +95 -0
  42. package/lib/cjs/header.js +2 -2
  43. package/lib/cjs/type/unit/Unit.js +15 -13
  44. package/lib/cjs/utils/customs.js +4 -3
  45. package/lib/cjs/version.js +1 -1
  46. package/lib/esm/entry/dependenciesAny/dependenciesFreqz.generated.js +20 -0
  47. package/lib/esm/entry/dependenciesAny/dependenciesRange.generated.js +4 -0
  48. package/lib/esm/entry/dependenciesAny/dependenciesRangeTransform.generated.js +4 -0
  49. package/lib/esm/entry/dependenciesAny/dependenciesSolveODE.generated.js +38 -0
  50. package/lib/esm/entry/dependenciesAny/dependenciesZpk2tf.generated.js +18 -0
  51. package/lib/esm/entry/dependenciesAny.generated.js +3 -0
  52. package/lib/esm/entry/dependenciesNumber/dependenciesRange.generated.js +4 -0
  53. package/lib/esm/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +4 -0
  54. package/lib/esm/entry/impureFunctionsAny.generated.js +34 -29
  55. package/lib/esm/entry/impureFunctionsNumber.generated.js +2 -0
  56. package/lib/esm/entry/pureFunctionsAny.generated.js +70 -36
  57. package/lib/esm/entry/pureFunctionsNumber.generated.js +2 -0
  58. package/lib/esm/expression/embeddedDocs/core/typed.js +1 -1
  59. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +11 -3
  60. package/lib/esm/expression/embeddedDocs/function/{matrix → algebra}/lyap.js +2 -2
  61. package/lib/esm/expression/embeddedDocs/function/algebra/polynomialRoot.js +1 -1
  62. package/lib/esm/expression/embeddedDocs/function/{matrix → algebra}/schur.js +2 -2
  63. package/lib/esm/expression/embeddedDocs/function/algebra/simplifyConstant.js +1 -1
  64. package/lib/esm/expression/embeddedDocs/function/{matrix → algebra}/sylvester.js +2 -2
  65. package/lib/esm/expression/embeddedDocs/function/arithmetic/invmod.js +1 -1
  66. package/lib/esm/expression/embeddedDocs/function/expression/evaluate.js +2 -2
  67. package/lib/esm/expression/embeddedDocs/function/matrix/diff.js +1 -1
  68. package/lib/esm/expression/embeddedDocs/function/matrix/range.js +1 -1
  69. package/lib/esm/expression/embeddedDocs/function/numeric/solveODE.js +8 -0
  70. package/lib/esm/expression/embeddedDocs/function/signal/freqz.js +8 -0
  71. package/lib/esm/expression/embeddedDocs/function/signal/zpk2tf.js +8 -0
  72. package/lib/esm/expression/embeddedDocs/function/utils/numeric.js +1 -1
  73. package/lib/esm/expression/node/FunctionNode.js +6 -7
  74. package/lib/esm/expression/node/ObjectNode.js +5 -7
  75. package/lib/esm/expression/node/SymbolNode.js +1 -1
  76. package/lib/esm/expression/transform/range.transform.js +7 -3
  77. package/lib/esm/factoriesAny.js +3 -0
  78. package/lib/esm/function/algebra/simplify.js +3 -0
  79. package/lib/esm/function/matrix/range.js +34 -110
  80. package/lib/esm/function/numeric/solveODE.js +284 -0
  81. package/lib/esm/function/signal/freqz.js +115 -0
  82. package/lib/esm/function/signal/zpk2tf.js +82 -0
  83. package/lib/esm/type/unit/Unit.js +15 -13
  84. package/lib/esm/utils/customs.js +4 -3
  85. package/lib/esm/version.js +1 -1
  86. package/package.json +15 -15
  87. package/types/index.d.ts +51 -6
package/types/index.d.ts CHANGED
@@ -1989,9 +1989,9 @@ declare namespace math {
1989
1989
  includeEnd?: boolean
1990
1990
  ): Matrix
1991
1991
  range(
1992
- start: number | BigNumber,
1993
- end: number | BigNumber,
1994
- step: number | BigNumber,
1992
+ start: number | BigNumber | Unit,
1993
+ end: number | BigNumber | Unit,
1994
+ step: number | BigNumber | Unit,
1995
1995
  includeEnd?: boolean
1996
1996
  ): Matrix
1997
1997
 
@@ -2566,6 +2566,28 @@ declare namespace math {
2566
2566
  */
2567
2567
  setUnion<T extends MathCollection>(a1: T, a2: MathCollection): T
2568
2568
 
2569
+ /*************************************************************************
2570
+ * Signal functions
2571
+ ************************************************************************/
2572
+ /**
2573
+ * Compute the transfer function of a zero-pole-gain model.
2574
+ * @param z Zeroes of the model
2575
+ * @param p Poles of the model
2576
+ * @param k Gain of the model
2577
+ * @returns The transfer function as array of numerator and denominator
2578
+ */
2579
+ zpk2tf<T extends MathCollection>(z: T, p: T, k?: number): T
2580
+
2581
+ /**
2582
+ * Calculates the frequency response of a filter given its numerator and denominator coefficients.
2583
+ * @param b The numerator polynomial of the filter
2584
+ * @param a The denominator polynomial of the filter
2585
+ * @param w The range of frequencies in which the response is to be calculated
2586
+ * @returns The frequency response
2587
+ *
2588
+ */
2589
+ freqz<T extends MathCollection>(b: T, a: T, w?: number | T): { w: T; h: T }
2590
+
2569
2591
  /*************************************************************************
2570
2592
  * Special functions
2571
2593
  ************************************************************************/
@@ -3611,6 +3633,8 @@ declare namespace math {
3611
3633
  setSizeDependencies: FactoryFunctionMap
3612
3634
  setSymDifferenceDependencies: FactoryFunctionMap
3613
3635
  setUnionDependencies: FactoryFunctionMap
3636
+ zpk2tfDependencies: FactoryFunctionMap
3637
+ freqzDependencies: FactoryFunctionMap
3614
3638
  addDependencies: FactoryFunctionMap
3615
3639
  hypotDependencies: FactoryFunctionMap
3616
3640
  normDependencies: FactoryFunctionMap
@@ -5453,9 +5477,9 @@ declare namespace math {
5453
5477
  includeEnd?: boolean
5454
5478
  ): MathJsChain<Matrix>
5455
5479
  range(
5456
- this: MathJsChain<number | BigNumber>,
5457
- end: number | BigNumber,
5458
- step: number | BigNumber,
5480
+ this: MathJsChain<number | BigNumber | Unit>,
5481
+ end: number | BigNumber | Unit,
5482
+ step: number | BigNumber | Unit,
5459
5483
  includeEnd?: boolean
5460
5484
  ): MathJsChain<Matrix>
5461
5485
 
@@ -5920,6 +5944,27 @@ declare namespace math {
5920
5944
  a2: MathCollection
5921
5945
  ): MathJsChain<T>
5922
5946
 
5947
+ /*************************************************************************
5948
+ * Signal functions
5949
+ ************************************************************************/
5950
+ /**
5951
+ * Compute the transfer function of a zero-pole-gain model.
5952
+ */
5953
+ zpk2tf<T extends MathCollection>(
5954
+ this: MathJsChain<T>, // chained variable will be used as z
5955
+ p: T,
5956
+ k?: number
5957
+ ): MathJsChain<T>
5958
+
5959
+ /**
5960
+ * Calculates the frequency response of a filter given its numerator and denominator coefficients.
5961
+ */
5962
+ freqz<T extends number | MathArray | MathArray[]>(
5963
+ this: MathJsChain<T>,
5964
+ a: T,
5965
+ w?: T | number
5966
+ ): MathJsChain<{ w: T; h: T }>
5967
+
5923
5968
  /*************************************************************************
5924
5969
  * Special functions
5925
5970
  ************************************************************************/