Package org.hipparchus.geometry
Interface Vector<S extends Space>

 Type Parameters:
S
 Type of the space.
 All Superinterfaces:
Point<S>
,Serializable
public interface Vector<S extends Space> extends Point<S>
This interface represents a generic vector in a vectorial space or a point in an affine space.


Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Vector<S>
add(double factor, Vector<S> v)
Add a scaled vector to the instance.Vector<S>
add(Vector<S> v)
Add a vector to the instance.double
distance1(Vector<S> v)
Compute the distance between the instance and another vector according to the L_{1} norm.double
distanceInf(Vector<S> v)
Compute the distance between the instance and another vector according to the L_{∞} norm.double
distanceSq(Vector<S> v)
Compute the square of the distance between the instance and another vector.double
dotProduct(Vector<S> v)
Compute the dotproduct of the instance and another vector.double
getNorm()
Get the L_{2} norm for the vector.double
getNorm1()
Get the L_{1} norm for the vector.double
getNormInf()
Get the L_{∞} norm for the vector.double
getNormSq()
Get the square of the norm for the vector.Vector<S>
getZero()
Get the null vector of the vectorial space or origin point of the affine space.boolean
isInfinite()
Returns true if any coordinate of this vector is infinite and none are NaN; false otherwiseVector<S>
negate()
Get the opposite of the instance.Vector<S>
normalize()
Get a normalized vector aligned with the instance.Vector<S>
scalarMultiply(double a)
Multiply the instance by a scalar.Vector<S>
subtract(double factor, Vector<S> v)
Subtract a scaled vector from the instance.Vector<S>
subtract(Vector<S> v)
Subtract a vector from the instance.String
toString(NumberFormat format)
Get a string representation of this vector.



Method Detail

getZero
Vector<S> getZero()
Get the null vector of the vectorial space or origin point of the affine space. Returns:
 null vector of the vectorial space or origin point of the affine space

getNorm1
double getNorm1()
Get the L_{1} norm for the vector. Returns:
 L_{1} norm for the vector

getNorm
double getNorm()
Get the L_{2} norm for the vector. Returns:
 Euclidean norm for the vector

getNormSq
double getNormSq()
Get the square of the norm for the vector. Returns:
 square of the Euclidean norm for the vector

getNormInf
double getNormInf()
Get the L_{∞} norm for the vector. Returns:
 L_{∞} norm for the vector

add
Vector<S> add(Vector<S> v)
Add a vector to the instance. Parameters:
v
 vector to add Returns:
 a new vector

add
Vector<S> add(double factor, Vector<S> v)
Add a scaled vector to the instance. Parameters:
factor
 scale factor to apply to v before adding itv
 vector to add Returns:
 a new vector

subtract
Vector<S> subtract(Vector<S> v)
Subtract a vector from the instance. Parameters:
v
 vector to subtract Returns:
 a new vector

subtract
Vector<S> subtract(double factor, Vector<S> v)
Subtract a scaled vector from the instance. Parameters:
factor
 scale factor to apply to v before subtracting itv
 vector to subtract Returns:
 a new vector

negate
Vector<S> negate()
Get the opposite of the instance. Returns:
 a new vector which is opposite to the instance

normalize
Vector<S> normalize() throws MathRuntimeException
Get a normalized vector aligned with the instance. Returns:
 a new normalized vector
 Throws:
MathRuntimeException
 if the norm is zero

scalarMultiply
Vector<S> scalarMultiply(double a)
Multiply the instance by a scalar. Parameters:
a
 scalar Returns:
 a new vector

isInfinite
boolean isInfinite()
Returns true if any coordinate of this vector is infinite and none are NaN; false otherwise Returns:
 true if any coordinate of this vector is infinite and none are NaN; false otherwise

distance1
double distance1(Vector<S> v)
Compute the distance between the instance and another vector according to the L_{1} norm.Calling this method is equivalent to calling:
q.subtract(p).getNorm1()
except that no intermediate vector is built Parameters:
v
 second vector Returns:
 the distance between the instance and p according to the L_{1} norm

distanceInf
double distanceInf(Vector<S> v)
Compute the distance between the instance and another vector according to the L_{∞} norm.Calling this method is equivalent to calling:
q.subtract(p).getNormInf()
except that no intermediate vector is built Parameters:
v
 second vector Returns:
 the distance between the instance and p according to the L_{∞} norm

distanceSq
double distanceSq(Vector<S> v)
Compute the square of the distance between the instance and another vector.Calling this method is equivalent to calling:
q.subtract(p).getNormSq()
except that no intermediate vector is built Parameters:
v
 second vector Returns:
 the square of the distance between the instance and p

dotProduct
double dotProduct(Vector<S> v)
Compute the dotproduct of the instance and another vector. Parameters:
v
 second vector Returns:
 the dot product this.v

toString
String toString(NumberFormat format)
Get a string representation of this vector. Parameters:
format
 the custom format for components Returns:
 a string representation of this vector

