Project the vector v into the vector u (in-place) */
| 60 | |
| 61 | /* Project the vector v into the vector u (in-place) */ |
| 62 | static void __project(MappedColumnVector& u, MutableNativeColumnVector& v){ |
| 63 | double uu = u.dot(u); |
| 64 | double uv = u.dot(v); |
| 65 | |
| 66 | double coef; |
| 67 | if (uu <= ZERO_THRESHOLD) { // if u is the zero vector, we have a division by zero problem |
| 68 | coef = 0; |
| 69 | } else |
| 70 | coef = uv / uu; |
| 71 | v = coef * u; |
| 72 | } |
| 73 | |
| 74 | |
| 75 | /** |