1 |
tim |
3 |
#include "utils/Utility.hpp" |
2 |
gezelter |
2 |
#include <vector> |
3 |
|
|
#include <iostream> |
4 |
|
|
#include <math.h> |
5 |
|
|
using namespace std; |
6 |
|
|
|
7 |
|
|
double dotProduct(vector<double>& v1, vector<double>& v2){ |
8 |
|
|
double sum; |
9 |
|
|
|
10 |
|
|
sum = 0; |
11 |
|
|
|
12 |
|
|
if(v1.size() != v2.size()){ |
13 |
|
|
cerr << "Utility Error: dimension of two vectors are not matched" << endl; |
14 |
|
|
exit(-1); |
15 |
|
|
} |
16 |
|
|
|
17 |
|
|
for(int i = 0; i < v1.size(); i++) |
18 |
|
|
sum += v1[i]*v2[i]; |
19 |
|
|
return sum; |
20 |
|
|
} |
21 |
|
|
|
22 |
|
|
double norm2(vector<double>& x){ |
23 |
|
|
return sqrt(dotProduct(x, x)); |
24 |
|
|
} |