@thi.ng/vectors
Version:
Optimized 2d/3d/4d and arbitrary length vector operations, support for memory mapping/layouts
17 lines (16 loc) • 314 B
JavaScript
const distCosine = (a, b) => {
let asum = 0;
let bsum = 0;
let dot = 0;
for (let i = a.length; i-- > 0; ) {
const aa = a[i];
const bb = b[i];
asum += aa * aa;
bsum += bb * bb;
dot += aa * bb;
}
return dot ? dot / (Math.sqrt(asum) * Math.sqrt(bsum)) : 0;
};
export {
distCosine
};