dotVV method
Returns scalar product vec1
dot vec2
.
Implementation
double dotVV(List<double> vec1, List<double> vec2) {
int i, n = vec1.length, i1;
double ret = vec1[n - 1] * vec2[n - 1];
for (i = n - 2; i >= 1; i -= 2) {
i1 = i - 1;
ret += vec1[i] * vec2[i] + vec1[i1] * vec2[i1];
}
if (i == 0) {
ret += vec1[0] * vec2[0];
}
return ret;
}