@danielsimonjr/mathts-functions 0.6.0 → 0.8.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/dist/cas-integration.d.ts +10 -0
- package/dist/cas-integration.d.ts.map +1 -0
- package/dist/clustering-extra.d.ts +27 -0
- package/dist/clustering-extra.d.ts.map +1 -0
- package/dist/descriptive-stats.d.ts +1 -1
- package/dist/descriptive-stats.d.ts.map +1 -1
- package/dist/geometry-extra.d.ts.map +1 -1
- package/dist/hypothesis-extra.d.ts +21 -0
- package/dist/hypothesis-extra.d.ts.map +1 -1
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1366 -706
- package/dist/linalg-extra.d.ts +13 -0
- package/dist/linalg-extra.d.ts.map +1 -1
- package/dist/numeric-extra.d.ts.map +1 -1
- package/dist/optimization-extra.d.ts +41 -0
- package/dist/optimization-extra.d.ts.map +1 -0
- package/dist/regression-extra.d.ts.map +1 -1
- package/dist/signal-filter-extra.d.ts +35 -0
- package/dist/signal-filter-extra.d.ts.map +1 -0
- package/dist/timeseries-extra.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/linalg-extra.d.ts
CHANGED
|
@@ -54,5 +54,18 @@ export declare function logdet(A: readonly number[][]): {
|
|
|
54
54
|
sign: number;
|
|
55
55
|
value: number;
|
|
56
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Generalized (QZ) Schur decomposition of the pencil `(A, B)` with `B` nonsingular:
|
|
59
|
+
* returns orthogonal `Q`, `Z` and upper-(quasi-)triangular `AA`, `BB` with
|
|
60
|
+
* `A = Q·AA·Zᵀ` and `B = Q·BB·Zᵀ`. Built from the real Schur of `B⁻¹A` (= Z S Zᵀ) and
|
|
61
|
+
* the QR of `B·Z` (= Q·BB): then `AA = Qᵀ·A·Z`. Robust for real spectra; matches the
|
|
62
|
+
* decomposition contract of `scipy.linalg.qz` (the factors are not unique).
|
|
63
|
+
*/
|
|
64
|
+
export declare function qz(A: readonly number[][], B: readonly number[][]): {
|
|
65
|
+
AA: number[][];
|
|
66
|
+
BB: number[][];
|
|
67
|
+
Q: number[][];
|
|
68
|
+
Z: number[][];
|
|
69
|
+
};
|
|
57
70
|
export {};
|
|
58
71
|
//# sourceMappingURL=linalg-extra.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linalg-extra.d.ts","sourceRoot":"","sources":["../src/linalg-extra.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"linalg-extra.d.ts","sourceRoot":"","sources":["../src/linalg-extra.ts"],"names":[],"mappings":"AA0EA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAG5C;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,EACtB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,GACrB;IAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,CAIhF;AAED,+EAA+E;AAC/E,wBAAgB,IAAI,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAI,GAAG,MAAM,EAAE,EAAE,CAE9D;AAED,+EAA+E;AAC/E,wBAAgB,IAAI,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAI,GAAG,MAAM,EAAE,EAAE,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,MAAM,EAAE,EAAE,CAMzE;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,EAAE,CAQpD;AAED,2EAA2E;AAC3E,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,EAAE,CAM5C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,EAAE,CASjD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,EAC9B,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,MAAM,EAAE,EAAE,CAYZ;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CA2B9E;AAED;;;;;;GAMG;AACH,wBAAgB,EAAE,CAChB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,EACtB,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,GACrB;IAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;CAAE,CASlE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numeric-extra.d.ts","sourceRoot":"","sources":["../src/numeric-extra.ts"],"names":[],"mappings":"AAUA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"numeric-extra.d.ts","sourceRoot":"","sources":["../src/numeric-extra.ts"],"names":[],"mappings":"AAUA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAe5C,oEAAoE;AACpE,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;AACjE,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;AAM9E,gFAAgF;AAChF,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;AAC3C,wBAAgB,OAAO,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;AAMxD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAQxC;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAOxC;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CASxC;AAED,wCAAwC;AACxC,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CASvC;AAED,wCAAwC;AACxC,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CASvC;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,MAAM,EAAE,CAoB3D"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export interface OptimizeResult {
|
|
2
|
+
x: number[];
|
|
3
|
+
fx: number;
|
|
4
|
+
iterations: number;
|
|
5
|
+
converged: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Nelder–Mead downhill-simplex minimization of `f: ℝⁿ → ℝ` from `x0`. Derivative-free.
|
|
9
|
+
* Matches `scipy.optimize.minimize(method='Nelder-Mead')` to the requested tolerance.
|
|
10
|
+
*/
|
|
11
|
+
export declare function nelderMead(f: (x: number[]) => number, x0: readonly number[], opts?: {
|
|
12
|
+
maxIter?: number;
|
|
13
|
+
tol?: number;
|
|
14
|
+
step?: number;
|
|
15
|
+
}): OptimizeResult;
|
|
16
|
+
/**
|
|
17
|
+
* Gradient-descent minimization with optional backtracking line search. `grad` may
|
|
18
|
+
* be supplied; otherwise a central-difference gradient is used.
|
|
19
|
+
*/
|
|
20
|
+
export declare function gradientDescent(f: (x: number[]) => number, x0: readonly number[], opts?: {
|
|
21
|
+
grad?: (x: number[]) => number[];
|
|
22
|
+
rate?: number;
|
|
23
|
+
maxIter?: number;
|
|
24
|
+
tol?: number;
|
|
25
|
+
}): OptimizeResult;
|
|
26
|
+
export interface LMResult {
|
|
27
|
+
x: number[];
|
|
28
|
+
residualNorm: number;
|
|
29
|
+
iterations: number;
|
|
30
|
+
converged: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Levenberg–Marquardt nonlinear least squares: minimize ½‖r(x)‖² for a vector
|
|
34
|
+
* residual `r`. Numeric Jacobian; damped normal equations `(JᵀJ + λI)δ = Jᵀr`
|
|
35
|
+
* solved via the matrix `inv`. Mirrors `scipy.optimize.least_squares(method='lm')`.
|
|
36
|
+
*/
|
|
37
|
+
export declare function levenbergMarquardt(residual: (x: number[]) => number[], x0: readonly number[], opts?: {
|
|
38
|
+
maxIter?: number;
|
|
39
|
+
tol?: number;
|
|
40
|
+
}): LMResult;
|
|
41
|
+
//# sourceMappingURL=optimization-extra.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimization-extra.d.ts","sourceRoot":"","sources":["../src/optimization-extra.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACxB,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAC1B,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAC3D,cAAc,CA8DhB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAC1B,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7F,cAAc,CA6BhB;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,EACnC,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC5C,QAAQ,CAwEV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regression-extra.d.ts","sourceRoot":"","sources":["../src/regression-extra.ts"],"names":[],"mappings":"AAQA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAI5C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"regression-extra.d.ts","sourceRoot":"","sources":["../src/regression-extra.ts"],"names":[],"mappings":"AAQA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAI5C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,gBAAgB,CA6BjE"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
type Vec = readonly number[] | Float64Array;
|
|
2
|
+
/**
|
|
3
|
+
* FIR lowpass filter coefficients by the windowed-sinc method (Hamming window,
|
|
4
|
+
* normalized to unit DC gain) — `scipy.signal.firwin(numtaps, cutoff)` with the
|
|
5
|
+
* default window. `cutoff` is normalized to Nyquist (1 = Nyquist).
|
|
6
|
+
*/
|
|
7
|
+
export declare function firwin(numtaps: number, cutoff: number): number[];
|
|
8
|
+
/**
|
|
9
|
+
* Apply an IIR/FIR filter with coefficients `b` (numerator), `a` (denominator) to
|
|
10
|
+
* `x` (direct form II transposed). `a[0]` normalizes. Matches `scipy.signal.lfilter`.
|
|
11
|
+
*/
|
|
12
|
+
export declare function lfilter(b: Vec, a: Vec, x: Vec): number[];
|
|
13
|
+
/**
|
|
14
|
+
* Steady-state initial conditions for `lfilter` so a constant input is unchanged at
|
|
15
|
+
* the boundary — `scipy.signal.lfilter_zi`. Solves `(I − Aᵀ) zi = B` where `A` is the
|
|
16
|
+
* companion matrix of `a` and `B = b[1:] − a[1:]·b[0]`. Reuses `companion` + `inv`.
|
|
17
|
+
*/
|
|
18
|
+
export declare function lfilterZi(b: Vec, a: Vec): number[];
|
|
19
|
+
/**
|
|
20
|
+
* Zero-phase forward–backward filtering (`scipy.signal.filtfilt`), with odd
|
|
21
|
+
* reflection padding (default pad length `3·max(len a, len b)`). The squared
|
|
22
|
+
* magnitude response is applied with no phase distortion.
|
|
23
|
+
*/
|
|
24
|
+
export declare function filtfilt(b: Vec, a: Vec, x: Vec): number[];
|
|
25
|
+
/**
|
|
26
|
+
* Butterworth IIR filter design — returns `{ b, a }` transfer-function coefficients.
|
|
27
|
+
* `N` is the order, `Wn` the cutoff normalized to Nyquist (0..1). Lowpass only
|
|
28
|
+
* (`btype='low'`, the common case). Matches `scipy.signal.butter(N, Wn)`.
|
|
29
|
+
*/
|
|
30
|
+
export declare function butter(N: number, Wn: number): {
|
|
31
|
+
b: number[];
|
|
32
|
+
a: number[];
|
|
33
|
+
};
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=signal-filter-extra.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signal-filter-extra.d.ts","sourceRoot":"","sources":["../src/signal-filter-extra.ts"],"names":[],"mappings":"AAYA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAK5C;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAahE;AAkCD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAExD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAqBlD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAqBzD;AAuBD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CA4B1E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeseries-extra.d.ts","sourceRoot":"","sources":["../src/timeseries-extra.ts"],"names":[],"mappings":"AAQA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAI5C;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAWzD;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"timeseries-extra.d.ts","sourceRoot":"","sources":["../src/timeseries-extra.ts"],"names":[],"mappings":"AAQA,KAAK,GAAG,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAI5C;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAWzD;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAYpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,GAAE,QAAQ,GAAG,UAAqB,GAAG,MAAM,EAAE,CAuBhF;AAED;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBnD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@danielsimonjr/mathts-functions",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Mathematical functions for MathTS - arithmetic, algebra, trigonometry, statistics, and more",
|
|
5
5
|
"author": "Daniel Simon Jr.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"build:prod": "tsup src/index.ts --format esm --clean --minify --treeshake"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@danielsimonjr/mathts-core": "^0.3.
|
|
36
|
+
"@danielsimonjr/mathts-core": "^0.3.1",
|
|
37
37
|
"@danielsimonjr/mathts-expression": "^0.4.2",
|
|
38
38
|
"@danielsimonjr/mathts-matrix": "^0.1.12",
|
|
39
39
|
"@danielsimonjr/mathts-parallel": "^0.3.0",
|