UNPKG

dsp-collection

Version:

A collection of JavaScript modules for digital signal processing (written in TypeScript)

69 lines 1.44 kB
export function max(a) { if (a.length == 0) { return NaN; } let maxVal = a[0]; for (let p = 1; p < a.length; p++) { if (a[p] > maxVal) { maxVal = a[p]; } } return maxVal; } export function argMax(a) { if (a.length == 0) { return NaN; } let maxPos = 0; let maxVal = a[0]; for (let p = 1; p < a.length; p++) { if (a[p] > maxVal) { maxPos = p; maxVal = a[p]; } } return maxPos; } export function argGte(a, v) { for (let p = 0; p < a.length; p++) { if (a[p] >= v) { return p; } } return NaN; } export function multiply(a1, a2) { const n = a1.length; const a = new a1.constructor(n); for (let i = 0; i < n; i++) { a[i] = a1[i] * a2[i]; } return a; } export function divide(a1, a2) { const n = a1.length; const a = new a1.constructor(n); for (let i = 0; i < n; i++) { a[i] = a1[i] / a2[i]; } return a; } export function copy(a1, a2) { const n = Math.min(a1.length, a2.length); for (let i = 0; i < n; i++) { a2[i] = a1[i]; } } export function fill(a, value) { for (let i = 0; i < a.length; i++) { a[i] = value; } } export function sum(a) { let acc = 0; for (let i = 0; i < a.length; i++) { acc += a[i]; } return acc; } //# sourceMappingURL=ArrayUtils.js.map