Package wsh.opt
Class VectUtil
- java.lang.Object
-
- wsh.opt.VectUtil
-
public class VectUtil extends java.lang.Object
Implements convenience methods for Vect.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static Almost
ALMOST_DOT
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
areSame(VectConst v1, VectConst v2)
See if two vectors are the same.static Vect
cloneZero(VectConst v)
Clone a vector and initialized to zero, so that out.dot(out) == 0.static void
copy(Vect to, VectConst from)
Copy the state of one vector onto another.static int
getTransposePrecision(VectConst data, VectConst model, LinearTransform transform)
Return the number of significant digits in the dot product when calculated with and without the transpose.static int
getTransposePrecision(VectConst data, VectConst model, Transform transform)
Return the number of significant digits in the dot product when calculated with and without the transpose.static void
scale(Vect v, double scalar)
Scale a vector by a scalar constant.static void
test(VectConst vect)
Exercise all methods of Vect.static void
zero(Vect v)
Set the magnitude of this vector to zero, so that this.dot(this) == 0.
-
-
-
Field Detail
-
ALMOST_DOT
static final Almost ALMOST_DOT
-
-
Method Detail
-
scale
public static void scale(Vect v, double scalar)
Scale a vector by a scalar constant.- Parameters:
v
- Vector to scale.scalar
- Factor to scale the vector.
-
zero
public static void zero(Vect v)
Set the magnitude of this vector to zero, so that this.dot(this) == 0.- Parameters:
v
- Vector to zero
-
copy
public static void copy(Vect to, VectConst from)
Copy the state of one vector onto another.- Parameters:
to
- Vector whose state should be initialized with the state of from.from
- Vector whose state should be copied.
-
cloneZero
public static Vect cloneZero(VectConst v)
Clone a vector and initialized to zero, so that out.dot(out) == 0.- Parameters:
v
- Vect to clone- Returns:
- A cloned copy of the vector set to zero magnitude.
-
areSame
public static boolean areSame(VectConst v1, VectConst v2)
See if two vectors are the same. Useful for test code.- Parameters:
v1
- First vectorv2
- Second vector- Returns:
- true if vectors appear to be the same, within floating precision.
-
test
public static void test(VectConst vect)
Exercise all methods of Vect.- Parameters:
vect
- An instance of a Vect to test. Should be initialized to random non-zero values. A vector of zero magnitude will fail.
-
getTransposePrecision
public static int getTransposePrecision(VectConst data, VectConst model, LinearTransform transform)
Return the number of significant digits in the dot product when calculated with and without the transpose.- Parameters:
data
- Nonzero sample datamodel
- A nonzero sample model.transform
- The transform to test.- Returns:
- number of digits in precision.
-
getTransposePrecision
public static int getTransposePrecision(VectConst data, VectConst model, Transform transform)
Return the number of significant digits in the dot product when calculated with and without the transpose.- Parameters:
data
- Nonzero sample datamodel
- A nonzero sample model.transform
- The transform to test.- Returns:
- number of digits in precision.
-
-