Class VectorUtil

• ```public final class VectorUtil
extends Object```
Utilities for computations with numeric arrays
• Method Summary

All Methods
Modifier and Type Method Description
`static void` ```add​(float[] u, float[] v)```
Adds the second argument to the first
`static float` ```cosine​(float[] v1, float[] v2)```
Returns the cosine similarity between the two vectors.
`static float` ```dotProduct​(float[] a, float[] b)```
Returns the vector dot product of the two vectors.
`static float[]` `l2normalize​(float[] v)`
Modifies the argument to be unit length, dividing by its l2-norm.
`static float[]` ```l2normalize​(float[] v, boolean throwOnZero)```
Modifies the argument to be unit length, dividing by its l2-norm.
`static float` ```squareDistance​(float[] v1, float[] v2)```
Returns the sum of squared differences of the two vectors.
• Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• Method Detail

• dotProduct

```public static float dotProduct​(float[] a,
float[] b)```
Returns the vector dot product of the two vectors.
Throws:
`IllegalArgumentException` - if the vectors' dimensions differ.
• cosine

```public static float cosine​(float[] v1,
float[] v2)```
Returns the cosine similarity between the two vectors.
Throws:
`IllegalArgumentException` - if the vectors' dimensions differ.
• squareDistance

```public static float squareDistance​(float[] v1,
float[] v2)```
Returns the sum of squared differences of the two vectors.
Throws:
`IllegalArgumentException` - if the vectors' dimensions differ.
• l2normalize

`public static float[] l2normalize​(float[] v)`
Modifies the argument to be unit length, dividing by its l2-norm. IllegalArgumentException is thrown for zero vectors.
Returns:
the input array after normalization
• l2normalize

```public static float[] l2normalize​(float[] v,
boolean throwOnZero)```
Modifies the argument to be unit length, dividing by its l2-norm.
Parameters:
`v` - the vector to normalize
`throwOnZero` - whether to throw an exception when `v` has all zeros
Returns:
the input array after normalization
Throws:
`IllegalArgumentException` - when the vector is all zero and throwOnZero is true
```public static void add​(float[] u,
`u` - the destination
`v` - the vector to add to the destination