|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.math.linear.AbstractRealVector
org.apache.commons.math.linear.ArrayRealVector
public class ArrayRealVector
This class implements the RealVector interface with a double array.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.apache.commons.math.linear.AbstractRealVector |
|---|
AbstractRealVector.EntryImpl, AbstractRealVector.SparseEntryIterator |
| Nested classes/interfaces inherited from interface org.apache.commons.math.linear.RealVector |
|---|
RealVector.Entry |
| Field Summary | |
|---|---|
protected double[] |
data
Entries of the vector. |
| Constructor Summary | |
|---|---|
ArrayRealVector()
Build a 0-length vector. |
|
ArrayRealVector(ArrayRealVector v)
Construct a vector from another vector, using a deep copy. |
|
ArrayRealVector(ArrayRealVector v1,
ArrayRealVector v2)
Construct a vector by appending one vector to another vector. |
|
ArrayRealVector(ArrayRealVector v,
boolean deep)
Construct a vector from another vector. |
|
ArrayRealVector(ArrayRealVector v1,
double[] v2)
Construct a vector by appending one vector to another vector. |
|
ArrayRealVector(ArrayRealVector v1,
RealVector v2)
Construct a vector by appending one vector to another vector. |
|
ArrayRealVector(double[] d)
Construct a vector from an array, copying the input array. |
|
ArrayRealVector(Double[] d)
Construct a vector from an array. |
|
ArrayRealVector(double[] v1,
ArrayRealVector v2)
Construct a vector by appending one vector to another vector. |
|
ArrayRealVector(double[] d,
boolean copyArray)
Create a new ArrayRealVector using the input array as the underlying data array. |
|
ArrayRealVector(double[] v1,
double[] v2)
Construct a vector by appending one vector to another vector. |
|
ArrayRealVector(double[] d,
int pos,
int size)
Construct a vector from part of a array. |
|
ArrayRealVector(Double[] d,
int pos,
int size)
Construct a vector from part of a Double array |
|
ArrayRealVector(int size)
Construct a (size)-length vector of zeros. |
|
ArrayRealVector(int size,
double preset)
Construct an (size)-length vector with preset values. |
|
ArrayRealVector(RealVector v)
Construct a vector from another vector, using a deep copy. |
|
ArrayRealVector(RealVector v1,
ArrayRealVector v2)
Construct a vector by appending one vector to another vector. |
|
| Method Summary | |
|---|---|
ArrayRealVector |
add(ArrayRealVector v)
Compute the sum of this and v. |
RealVector |
add(double[] v)
Compute the sum of this and v. |
RealVector |
add(RealVector v)
Compute the sum of this and v. |
ArrayRealVector |
append(ArrayRealVector v)
Construct a vector by appending a vector to this vector. |
RealVector |
append(double in)
Construct a vector by appending a double to this vector. |
RealVector |
append(double[] in)
Construct a vector by appending a double array to this vector. |
RealVector |
append(RealVector v)
Construct a vector by appending a vector to this vector. |
protected void |
checkVectorDimensions(int n)
Check if instance dimension is equal to some expected value. |
protected void |
checkVectorDimensions(RealVector v)
Check if instance and specified vectors have the same dimension. |
AbstractRealVector |
copy()
Returns a (deep) copy of this. |
double |
dotProduct(ArrayRealVector v)
Compute the dot product. |
double |
dotProduct(double[] v)
Compute the dot product. |
double |
dotProduct(RealVector v)
Compute the dot product. |
ArrayRealVector |
ebeDivide(ArrayRealVector v)
Element-by-element division. |
RealVector |
ebeDivide(double[] v)
Element-by-element division. |
RealVector |
ebeDivide(RealVector v)
Element-by-element division. |
ArrayRealVector |
ebeMultiply(ArrayRealVector v)
Element-by-element multiplication. |
RealVector |
ebeMultiply(double[] v)
Element-by-element multiplication. |
RealVector |
ebeMultiply(RealVector v)
Element-by-element multiplication. |
boolean |
equals(Object other)
Test for the equality of two real vectors. |
double[] |
getData()
Returns vector entries as a double array. |
double[] |
getDataRef()
Returns a reference to the underlying data array. |
int |
getDimension()
Returns the size of the vector. |
double |
getDistance(ArrayRealVector v)
Distance between two vectors. |
double |
getDistance(double[] v)
Distance between two vectors. |
double |
getDistance(RealVector v)
Distance between two vectors. |
double |
getEntry(int index)
Returns the entry in the specified index. |
double |
getL1Distance(ArrayRealVector v)
Distance between two vectors. |
double |
getL1Distance(double[] v)
Distance between two vectors. |
double |
getL1Distance(RealVector v)
Distance between two vectors. |
double |
getL1Norm()
Returns the L1 norm of the vector. |
double |
getLInfDistance(ArrayRealVector v)
Distance between two vectors. |
double |
getLInfDistance(double[] v)
Distance between two vectors. |
double |
getLInfDistance(RealVector v)
Distance between two vectors. |
double |
getLInfNorm()
Returns the L∞ norm of the vector. |
double |
getNorm()
Returns the L2 norm of the vector. |
RealVector |
getSubVector(int index,
int n)
Get a subvector from consecutive elements. |
int |
hashCode()
Get a hashCode for the real vector. |
boolean |
isInfinite()
Returns true if any coordinate of this vector is infinite and none are NaN; false otherwise |
boolean |
isNaN()
Returns true if any coordinate of this vector is NaN; false otherwise |
RealVector |
mapAbsToSelf()
Map the Math.abs(double) function to each entry. |
RealVector |
mapAcosToSelf()
Map the Math.acos(double) function to each entry. |
RealVector |
mapAddToSelf(double d)
Map an addition operation to each entry. |
RealVector |
mapAsinToSelf()
Map the Math.asin(double) function to each entry. |
RealVector |
mapAtanToSelf()
Map the Math.atan(double) function to each entry. |
RealVector |
mapCbrtToSelf()
Map the Math.cbrt(double) function to each entry. |
RealVector |
mapCeilToSelf()
Map the Math.ceil(double) function to each entry. |
RealVector |
mapCoshToSelf()
Map the Math.cosh(double) function to each entry. |
RealVector |
mapCosToSelf()
Map the Math.cos(double) function to each entry. |
RealVector |
mapDivideToSelf(double d)
Map a division operation to each entry. |
RealVector |
mapExpm1ToSelf()
Map the Math.expm1(double) function to each entry. |
RealVector |
mapExpToSelf()
Map the Math.exp(double) function to each entry. |
RealVector |
mapFloorToSelf()
Map the Math.floor(double) function to each entry. |
RealVector |
mapInvToSelf()
Map the 1/x function to each entry. |
RealVector |
mapLog10ToSelf()
Map the Math.log10(double) function to each entry. |
RealVector |
mapLog1pToSelf()
Map the Math.log1p(double) function to each entry. |
RealVector |
mapLogToSelf()
Map the Math.log(double) function to each entry. |
RealVector |
mapMultiplyToSelf(double d)
Map a multiplication operation to each entry. |
RealVector |
mapPowToSelf(double d)
Map a power operation to each entry. |
RealVector |
mapRintToSelf()
Map the Math.rint(double) function to each entry. |
RealVector |
mapSignumToSelf()
Map the Math.signum(double) function to each entry. |
RealVector |
mapSinhToSelf()
Map the Math.sinh(double) function to each entry. |
RealVector |
mapSinToSelf()
Map the Math.sin(double) function to each entry. |
RealVector |
mapSqrtToSelf()
Map the Math.sqrt(double) function to each entry. |
RealVector |
mapSubtractToSelf(double d)
Map a subtraction operation to each entry. |
RealVector |
mapTanhToSelf()
Map the Math.tanh(double) function to each entry. |
RealVector |
mapTanToSelf()
Map the Math.tan(double) function to each entry. |
RealVector |
mapUlpToSelf()
Map the Math.ulp(double) function to each entry. |
RealMatrix |
outerProduct(ArrayRealVector v)
Compute the outer product. |
RealMatrix |
outerProduct(double[] v)
Compute the outer product. |
RealMatrix |
outerProduct(RealVector v)
Compute the outer product. |
ArrayRealVector |
projection(ArrayRealVector v)
Find the orthogonal projection of this vector onto another vector. |
RealVector |
projection(double[] v)
Find the orthogonal projection of this vector onto another vector. |
RealVector |
projection(RealVector v)
Find the orthogonal projection of this vector onto another vector. |
void |
set(double value)
Set all elements to a single value. |
void |
set(int index,
ArrayRealVector v)
Set a set of consecutive elements. |
void |
setEntry(int index,
double value)
Set a single element. |
void |
setSubVector(int index,
double[] v)
Set a set of consecutive elements. |
void |
setSubVector(int index,
RealVector v)
Set a set of consecutive elements. |
ArrayRealVector |
subtract(ArrayRealVector v)
Compute this minus v. |
RealVector |
subtract(double[] v)
Compute this minus v. |
RealVector |
subtract(RealVector v)
Compute this minus v. |
double[] |
toArray()
Convert the vector to a double array. |
String |
toString()
|
void |
unitize()
Converts this vector into a unit vector. |
RealVector |
unitVector()
Creates a unit vector pointing in the direction of this vector. |
| Methods inherited from class org.apache.commons.math.linear.AbstractRealVector |
|---|
checkIndex, getMaxIndex, getMaxValue, getMinIndex, getMinValue, iterator, map, mapAbs, mapAcos, mapAdd, mapAsin, mapAtan, mapCbrt, mapCeil, mapCos, mapCosh, mapDivide, mapExp, mapExpm1, mapFloor, mapInv, mapLog, mapLog10, mapLog1p, mapMultiply, mapPow, mapRint, mapSignum, mapSin, mapSinh, mapSqrt, mapSubtract, mapTan, mapTanh, mapToSelf, mapUlp, sparseIterator |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected double[] data
| Constructor Detail |
|---|
public ArrayRealVector()
Zero-length vectors may be used to initialized construction of vectors
by data gathering. We start with zero-length and use either the ArrayRealVector(ArrayRealVector, ArrayRealVector) constructor
or one of the append method (append(double), append(double[]), append(ArrayRealVector)) to gather data
into this vector.
public ArrayRealVector(int size)
size - size of the vector
public ArrayRealVector(int size,
double preset)
size - size of the vectorpreset - fill the vector with this scalar valuepublic ArrayRealVector(double[] d)
d - array of doubles.
public ArrayRealVector(double[] d,
boolean copyArray)
throws NullPointerException,
IllegalArgumentException
If an array is built specially in order to be embedded in a
ArrayRealVector and not used directly, the
copyArray may be
set to false
d - data for new vectorcopyArray - if true, the input array will be copied, otherwise
it will be referenced
IllegalArgumentException - if d is empty
NullPointerException - if d is nullArrayRealVector(double[])
public ArrayRealVector(double[] d,
int pos,
int size)
d - array of doubles.pos - position of first entrysize - number of entries to copypublic ArrayRealVector(Double[] d)
d - array of Doubles.
public ArrayRealVector(Double[] d,
int pos,
int size)
d - array of Doubles.pos - position of first entrysize - number of entries to copypublic ArrayRealVector(RealVector v)
v - vector to copypublic ArrayRealVector(ArrayRealVector v)
v - vector to copy
public ArrayRealVector(ArrayRealVector v,
boolean deep)
v - vector to copydeep - if true perform a deep copy otherwise perform a shallow copy
public ArrayRealVector(ArrayRealVector v1,
ArrayRealVector v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)
public ArrayRealVector(ArrayRealVector v1,
RealVector v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)
public ArrayRealVector(RealVector v1,
ArrayRealVector v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)
public ArrayRealVector(ArrayRealVector v1,
double[] v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)
public ArrayRealVector(double[] v1,
ArrayRealVector v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)
public ArrayRealVector(double[] v1,
double[] v2)
v1 - first vector (will be put in front of the new vector)v2 - second vector (will be put at back of the new vector)| Method Detail |
|---|
public AbstractRealVector copy()
copy in interface RealVectorcopy in class AbstractRealVector
public RealVector add(RealVector v)
throws IllegalArgumentException
add in interface RealVectoradd in class AbstractRealVectorv - vector to be added
IllegalArgumentException - if v is not the same size as this
public RealVector add(double[] v)
throws IllegalArgumentException
add in interface RealVectoradd in class AbstractRealVectorv - vector to be added
IllegalArgumentException - if v is not the same size as this
public ArrayRealVector add(ArrayRealVector v)
throws IllegalArgumentException
v - vector to be added
IllegalArgumentException - if v is not the same size as this
public RealVector subtract(RealVector v)
throws IllegalArgumentException
subtract in interface RealVectorsubtract in class AbstractRealVectorv - vector to be subtracted
IllegalArgumentException - if v is not the same size as this
public RealVector subtract(double[] v)
throws IllegalArgumentException
subtract in interface RealVectorsubtract in class AbstractRealVectorv - vector to be subtracted
IllegalArgumentException - if v is not the same size as this
public ArrayRealVector subtract(ArrayRealVector v)
throws IllegalArgumentException
v - vector to be subtracted
IllegalArgumentException - if v is not the same size as thispublic RealVector mapAddToSelf(double d)
The instance is changed by this method.
mapAddToSelf in interface RealVectormapAddToSelf in class AbstractRealVectord - value to be added to each entry
public RealVector mapSubtractToSelf(double d)
The instance is changed by this method.
mapSubtractToSelf in interface RealVectormapSubtractToSelf in class AbstractRealVectord - value to be subtracted to each entry
public RealVector mapMultiplyToSelf(double d)
The instance is changed by this method.
mapMultiplyToSelf in interface RealVectormapMultiplyToSelf in class AbstractRealVectord - value to multiply all entries by
public RealVector mapDivideToSelf(double d)
The instance is changed by this method.
mapDivideToSelf in interface RealVectormapDivideToSelf in class AbstractRealVectord - value to divide all entries by
public RealVector mapPowToSelf(double d)
The instance is changed by this method.
mapPowToSelf in interface RealVectormapPowToSelf in class AbstractRealVectord - value to raise all entries to
public RealVector mapExpToSelf()
Math.exp(double) function to each entry.
The instance is changed by this method.
mapExpToSelf in interface RealVectormapExpToSelf in class AbstractRealVectorpublic RealVector mapExpm1ToSelf()
Math.expm1(double) function to each entry.
The instance is changed by this method.
mapExpm1ToSelf in interface RealVectormapExpm1ToSelf in class AbstractRealVectorpublic RealVector mapLogToSelf()
Math.log(double) function to each entry.
The instance is changed by this method.
mapLogToSelf in interface RealVectormapLogToSelf in class AbstractRealVectorpublic RealVector mapLog10ToSelf()
Math.log10(double) function to each entry.
The instance is changed by this method.
mapLog10ToSelf in interface RealVectormapLog10ToSelf in class AbstractRealVectorpublic RealVector mapLog1pToSelf()
Math.log1p(double) function to each entry.
The instance is changed by this method.
mapLog1pToSelf in interface RealVectormapLog1pToSelf in class AbstractRealVectorpublic RealVector mapCoshToSelf()
Math.cosh(double) function to each entry.
The instance is changed by this method.
mapCoshToSelf in interface RealVectormapCoshToSelf in class AbstractRealVectorpublic RealVector mapSinhToSelf()
Math.sinh(double) function to each entry.
The instance is changed by this method.
mapSinhToSelf in interface RealVectormapSinhToSelf in class AbstractRealVectorpublic RealVector mapTanhToSelf()
Math.tanh(double) function to each entry.
The instance is changed by this method.
mapTanhToSelf in interface RealVectormapTanhToSelf in class AbstractRealVectorpublic RealVector mapCosToSelf()
Math.cos(double) function to each entry.
The instance is changed by this method.
mapCosToSelf in interface RealVectormapCosToSelf in class AbstractRealVectorpublic RealVector mapSinToSelf()
Math.sin(double) function to each entry.
The instance is changed by this method.
mapSinToSelf in interface RealVectormapSinToSelf in class AbstractRealVectorpublic RealVector mapTanToSelf()
Math.tan(double) function to each entry.
The instance is changed by this method.
mapTanToSelf in interface RealVectormapTanToSelf in class AbstractRealVectorpublic RealVector mapAcosToSelf()
Math.acos(double) function to each entry.
The instance is changed by this method.
mapAcosToSelf in interface RealVectormapAcosToSelf in class AbstractRealVectorpublic RealVector mapAsinToSelf()
Math.asin(double) function to each entry.
The instance is changed by this method.
mapAsinToSelf in interface RealVectormapAsinToSelf in class AbstractRealVectorpublic RealVector mapAtanToSelf()
Math.atan(double) function to each entry.
The instance is changed by this method.
mapAtanToSelf in interface RealVectormapAtanToSelf in class AbstractRealVectorpublic RealVector mapInvToSelf()
The instance is changed by this method.
mapInvToSelf in interface RealVectormapInvToSelf in class AbstractRealVectorpublic RealVector mapAbsToSelf()
Math.abs(double) function to each entry.
The instance is changed by this method.
mapAbsToSelf in interface RealVectormapAbsToSelf in class AbstractRealVectorpublic RealVector mapSqrtToSelf()
Math.sqrt(double) function to each entry.
The instance is changed by this method.
mapSqrtToSelf in interface RealVectormapSqrtToSelf in class AbstractRealVectorpublic RealVector mapCbrtToSelf()
Math.cbrt(double) function to each entry.
The instance is changed by this method.
mapCbrtToSelf in interface RealVectormapCbrtToSelf in class AbstractRealVectorpublic RealVector mapCeilToSelf()
Math.ceil(double) function to each entry.
The instance is changed by this method.
mapCeilToSelf in interface RealVectormapCeilToSelf in class AbstractRealVectorpublic RealVector mapFloorToSelf()
Math.floor(double) function to each entry.
The instance is changed by this method.
mapFloorToSelf in interface RealVectormapFloorToSelf in class AbstractRealVectorpublic RealVector mapRintToSelf()
Math.rint(double) function to each entry.
The instance is changed by this method.
mapRintToSelf in interface RealVectormapRintToSelf in class AbstractRealVectorpublic RealVector mapSignumToSelf()
Math.signum(double) function to each entry.
The instance is changed by this method.
mapSignumToSelf in interface RealVectormapSignumToSelf in class AbstractRealVectorpublic RealVector mapUlpToSelf()
Math.ulp(double) function to each entry.
The instance is changed by this method.
mapUlpToSelf in interface RealVectormapUlpToSelf in class AbstractRealVector
public RealVector ebeMultiply(RealVector v)
throws IllegalArgumentException
ebeMultiply in interface RealVectorv - vector by which instance elements must be multiplied
IllegalArgumentException - if v is not the same size as this
public RealVector ebeMultiply(double[] v)
throws IllegalArgumentException
ebeMultiply in interface RealVectorebeMultiply in class AbstractRealVectorv - vector by which instance elements must be multiplied
IllegalArgumentException - if v is not the same size as this
public ArrayRealVector ebeMultiply(ArrayRealVector v)
throws IllegalArgumentException
v - vector by which instance elements must be multiplied
IllegalArgumentException - if v is not the same size as this
public RealVector ebeDivide(RealVector v)
throws IllegalArgumentException
ebeDivide in interface RealVectorv - vector by which instance elements must be divided
IllegalArgumentException - if v is not the same size as this
public RealVector ebeDivide(double[] v)
throws IllegalArgumentException
ebeDivide in interface RealVectorebeDivide in class AbstractRealVectorv - vector by which instance elements must be divided
IllegalArgumentException - if v is not the same size as this
public ArrayRealVector ebeDivide(ArrayRealVector v)
throws IllegalArgumentException
v - vector by which instance elements must be divided
IllegalArgumentException - if v is not the same size as thispublic double[] getData()
getData in interface RealVectorgetData in class AbstractRealVectorpublic double[] getDataRef()
Does not make a fresh copy of the underlying data.
public double dotProduct(RealVector v)
throws IllegalArgumentException
dotProduct in interface RealVectordotProduct in class AbstractRealVectorv - vector with which dot product should be computed
IllegalArgumentException - if v is not the same size as this
public double dotProduct(double[] v)
throws IllegalArgumentException
dotProduct in interface RealVectordotProduct in class AbstractRealVectorv - vector with which dot product should be computed
IllegalArgumentException - if v is not the same size as this
public double dotProduct(ArrayRealVector v)
throws IllegalArgumentException
v - vector with which dot product should be computed
IllegalArgumentException - if v is not the same size as thispublic double getNorm()
The L2 norm is the root of the sum of the squared elements.
getNorm in interface RealVectorgetNorm in class AbstractRealVectorRealVector.getL1Norm(),
RealVector.getLInfNorm(),
RealVector.getDistance(RealVector)public double getL1Norm()
The L1 norm is the sum of the absolute values of elements.
getL1Norm in interface RealVectorgetL1Norm in class AbstractRealVectorRealVector.getNorm(),
RealVector.getLInfNorm(),
RealVector.getL1Distance(RealVector)public double getLInfNorm()
The L∞ norm is the max of the absolute values of elements.
getLInfNorm in interface RealVectorgetLInfNorm in class AbstractRealVectorRealVector.getNorm(),
RealVector.getL1Norm(),
RealVector.getLInfDistance(RealVector)
public double getDistance(RealVector v)
throws IllegalArgumentException
This method computes the distance consistent with the L2 norm, i.e. the square root of the sum of elements differences, or euclidian distance.
getDistance in interface RealVectorgetDistance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getL1Distance(RealVector),
RealVector.getLInfDistance(RealVector),
RealVector.getNorm()
public double getDistance(double[] v)
throws IllegalArgumentException
This method computes the distance consistent with the L2 norm, i.e. the square root of the sum of elements differences, or euclidian distance.
getDistance in interface RealVectorgetDistance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getL1Distance(double[]),
RealVector.getLInfDistance(double[]),
RealVector.getNorm()
public double getDistance(ArrayRealVector v)
throws IllegalArgumentException
This method computes the distance consistent with the L2 norm, i.e. the square root of the sum of elements differences, or euclidian distance.
v - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisgetDistance(RealVector),
getL1Distance(ArrayRealVector),
getLInfDistance(ArrayRealVector),
getNorm()
public double getL1Distance(RealVector v)
throws IllegalArgumentException
This method computes the distance consistent with L1 norm, i.e. the sum of the absolute values of elements differences.
getL1Distance in interface RealVectorgetL1Distance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getDistance(RealVector),
RealVector.getLInfDistance(RealVector),
RealVector.getL1Norm()
public double getL1Distance(double[] v)
throws IllegalArgumentException
This method computes the distance consistent with L1 norm, i.e. the sum of the absolute values of elements differences.
getL1Distance in interface RealVectorgetL1Distance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getDistance(double[]),
RealVector.getLInfDistance(double[]),
RealVector.getL1Norm()
public double getL1Distance(ArrayRealVector v)
throws IllegalArgumentException
This method computes the distance consistent with L1 norm, i.e. the sum of the absolute values of elements differences.
v - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisgetDistance(RealVector),
getL1Distance(ArrayRealVector),
getLInfDistance(ArrayRealVector),
getNorm()
public double getLInfDistance(RealVector v)
throws IllegalArgumentException
This method computes the distance consistent with L∞ norm, i.e. the max of the absolute values of elements differences.
getLInfDistance in interface RealVectorgetLInfDistance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getDistance(RealVector),
RealVector.getL1Distance(RealVector),
RealVector.getLInfNorm()
public double getLInfDistance(double[] v)
throws IllegalArgumentException
This method computes the distance consistent with L∞ norm, i.e. the max of the absolute values of elements differences.
getLInfDistance in interface RealVectorgetLInfDistance in class AbstractRealVectorv - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisRealVector.getDistance(double[]),
RealVector.getL1Distance(double[]),
RealVector.getLInfNorm()
public double getLInfDistance(ArrayRealVector v)
throws IllegalArgumentException
This method computes the distance consistent with L∞ norm, i.e. the max of the absolute values of elements differences.
v - vector to which distance is requested
IllegalArgumentException - if v is not the same size as thisgetDistance(RealVector),
getL1Distance(ArrayRealVector),
getLInfDistance(ArrayRealVector),
getNorm()
public RealVector unitVector()
throws ArithmeticException
The instance is not changed by this method.
unitVector in interface RealVectorunitVector in class AbstractRealVectorArithmeticException - if the norm is null
public void unitize()
throws ArithmeticException
The instance itself is changed by this method.
unitize in interface RealVectorunitize in class AbstractRealVectorArithmeticException - if the norm is nullpublic RealVector projection(RealVector v)
projection in interface RealVectorv - vector onto which instance must be projected
public RealVector projection(double[] v)
projection in interface RealVectorprojection in class AbstractRealVectorv - vector onto which instance must be projected
public ArrayRealVector projection(ArrayRealVector v)
v - vector onto which instance must be projected
IllegalArgumentException - if v is not the same size as this
public RealMatrix outerProduct(RealVector v)
throws IllegalArgumentException
outerProduct in interface RealVectorouterProduct in class AbstractRealVectorv - vector with which outer product should be computed
IllegalArgumentException - if v is not the same size as this
public RealMatrix outerProduct(ArrayRealVector v)
throws IllegalArgumentException
v - vector with which outer product should be computed
IllegalArgumentException - if v is not the same size as this
public RealMatrix outerProduct(double[] v)
throws IllegalArgumentException
outerProduct in interface RealVectorouterProduct in class AbstractRealVectorv - vector with which outer product should be computed
IllegalArgumentException - if v is not the same size as this
public double getEntry(int index)
throws MatrixIndexException
The index start at 0 and must be lesser than the size,
otherwise a MatrixIndexException is thrown.
getEntry in interface RealVectorindex - index location of entry to be fetched
MatrixIndexException - if the index is not validRealVector.setEntry(int, double)public int getDimension()
getDimension in interface RealVectorpublic RealVector append(RealVector v)
append in interface RealVectorv - vector to append to this one.
public ArrayRealVector append(ArrayRealVector v)
v - vector to append to this one.
public RealVector append(double in)
append in interface RealVectorin - double to append.
public RealVector append(double[] in)
append in interface RealVectorin - double array to append.
public RealVector getSubVector(int index,
int n)
getSubVector in interface RealVectorindex - index of first element.n - number of elements to be retrieved.
public void setEntry(int index,
double value)
setEntry in interface RealVectorindex - element index.value - new value for the element.RealVector.getEntry(int)
public void setSubVector(int index,
RealVector v)
setSubVector in interface RealVectorsetSubVector in class AbstractRealVectorindex - index of first element to be set.v - vector containing the values to set.RealVector.setSubVector(int, double[])
public void setSubVector(int index,
double[] v)
setSubVector in interface RealVectorsetSubVector in class AbstractRealVectorindex - index of first element to be set.v - vector containing the values to set.RealVector.setSubVector(int, RealVector)
public void set(int index,
ArrayRealVector v)
throws MatrixIndexException
index - index of first element to be set.v - vector containing the values to set.
MatrixIndexException - if the index is
inconsistent with vector sizepublic void set(double value)
set in interface RealVectorset in class AbstractRealVectorvalue - single value to set for all elementspublic double[] toArray()
The array is independent from vector data, it's elements are copied.
toArray in interface RealVectortoArray in class AbstractRealVectorpublic String toString()
toString in class Object
protected void checkVectorDimensions(RealVector v)
throws IllegalArgumentException
checkVectorDimensions in class AbstractRealVectorv - vector to compare instance with
IllegalArgumentException - if the vectors do not
have the same dimension
protected void checkVectorDimensions(int n)
throws IllegalArgumentException
checkVectorDimensions in class AbstractRealVectorn - expected dimension.
IllegalArgumentException - if the dimension is
inconsistent with vector sizepublic boolean isNaN()
isNaN in interface RealVectorpublic boolean isInfinite()
isInfinite in interface RealVectorpublic boolean equals(Object other)
If all coordinates of two real vectors are exactly the same, and none are
Double.NaN, the two real vectors are considered to be equal.
NaN coordinates are considered to affect globally the vector
and be equals to each other - i.e, if either (or all) coordinates of the
real vector are equal to Double.NaN, the real vector is equal to
a vector with all Double.NaN coordinates.
equals in class Objectother - Object to test for equality to this
public int hashCode()
All NaN values have the same hash code.
hashCode in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||