1 #ifndef NPSTAT_MULTIVARIATECOSINE_HH_
2 #define NPSTAT_MULTIVARIATECOSINE_HH_
20 template<
typename Real>
21 long double multivariateCosine(
const Real* x,
const unsigned long strideX,
22 const Real* y,
const unsigned long strideY,
23 const unsigned long len)
29 long double sumX = 0.0L, sumY = 0.0L, sumSprod = 0.0L;
30 for (
unsigned long i=0; i<len; ++i, x+=strideX, y+=strideY)
36 if (sumX == 0.0L || sumY == 0.0L)
throw std::domain_error(
37 "In npstat::multivariateCosine: zero vector norm encountered");
38 long double c = sumSprod/sqrtl(sumX)/sqrtl(sumY);
Definition: AbsArrayProjector.hh:14