UNPKG

@thi.ng/vectors

Version:

Optimized 2d/3d/4d and arbitrary length vector operations, support for memory mapping/layouts

19 lines (18 loc) 462 B
import { add } from "./add.js"; import { __ensureInputs } from "./ensure.js"; import { mulN } from "./muln.js"; import { set } from "./set.js"; import { sum } from "./sum.js"; const mean = (out, src) => { __ensureInputs(src); out = set(out || [], src[0]); for (let i = src.length; i-- > 1; ) { add(out, out, src[i]); } return mulN(out, out, 1 / src.length); }; const vmean = (a) => a.length > 0 ? sum(a) / a.length : 0; export { mean, vmean };