Package ucar.ma2
Class MAVector
java.lang.Object
ucar.ma2.MAVector
Abstraction for vector operations.
A vector is a rank-1 Array.
All operations done in double precision
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncopy()Create a new MAVector that is the same as this one, with a copy of the backing store.doubleCos between two vectors = dot(v) / norm() * norm(v)doubleDot product of 2 vectorsdoublegetDouble(int i) intdoublenorm()Get the L2 norm of this vector.voidNormalize this vector, so it has norm = 1.0.voidsetDouble(int i, double val)
-
Constructor Details
-
MAVector
public MAVector(double[] values) Create an MAVector out of a double array -
MAVector
public MAVector(int nelems) Create an MAVector of the given length. -
MAVector
Create an MAVector using the given rank-1 array.- Parameters:
a- rank-1 array- Throws:
IllegalArgumentException- is a is not rank 1
-
-
Method Details
-
getNelems
public int getNelems() -
getDouble
public double getDouble(int i) -
setDouble
public void setDouble(int i, double val) -
copy
Create a new MAVector that is the same as this one, with a copy of the backing store. -
cos
Cos between two vectors = dot(v) / norm() * norm(v)- Parameters:
v- cosine with this vector- Returns:
- double result: cos between this and v
- Throws:
IllegalArgumentException- if nelems != v.getNelems().
-
dot
Dot product of 2 vectors- Parameters:
v- dot product with this vector- Returns:
- double result: dot product
- Throws:
IllegalArgumentException- if nelems != v.getNelems().
-
norm
public double norm()Get the L2 norm of this vector.- Returns:
- double norm
-
normalize
public void normalize()Normalize this vector, so it has norm = 1.0.
-