Package no.uib.cipr.matrix
Class DenseVector
- java.lang.Object
-
- no.uib.cipr.matrix.AbstractVector
-
- no.uib.cipr.matrix.DenseVector
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Iterable<VectorEntry>
,Vector
public class DenseVector extends AbstractVector implements java.io.Serializable
Dense vector. Stored by adouble[]
array of the same length as the vector itself.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface no.uib.cipr.matrix.Vector
Vector.Norm
-
-
Field Summary
-
Fields inherited from class no.uib.cipr.matrix.AbstractVector
size
-
-
Constructor Summary
Constructors Constructor Description DenseVector(double[] x)
Constructor for DenseVectorDenseVector(double[] x, boolean deep)
Constructor for DenseVectorDenseVector(int size)
Constructor for DenseVectorDenseVector(MatrixVectorReader r)
Constructor for DenseVectorDenseVector(Vector x)
Constructor for DenseVectorDenseVector(Vector x, boolean deep)
Constructor for DenseVector
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Vector
add(double alpha, Vector y)
x = alpha*y + x
void
add(int index, double value)
x(index) += value
Vector
add(Vector y)
x = y + x
DenseVector
copy()
Creates a deep copy of the vectordouble
dot(Vector y)
xT*y
double
get(int index)
Returnsx(index)
double[]
getData()
Returns the internal vector contents.protected double
norm1()
protected double
norm2()
protected double
norm2_robust()
protected double
normInf()
DenseVector
scale(double alpha)
x=alpha*x
Vector
set(double alpha, Vector y)
x=alpha*y
void
set(int index, double value)
x(index) = value
Vector
set(Vector y)
x=y
DenseVector
zero()
Zeros all the entries in the vector, while preserving any underlying structure-
Methods inherited from class no.uib.cipr.matrix.AbstractVector
check, checkSize, iterator, norm, size, toString
-
-
-
-
Constructor Detail
-
DenseVector
public DenseVector(MatrixVectorReader r) throws java.io.IOException
Constructor for DenseVector- Parameters:
r
- Reader to get vector from- Throws:
java.io.IOException
-
DenseVector
public DenseVector(int size)
Constructor for DenseVector- Parameters:
size
- Size of the vector
-
DenseVector
public DenseVector(Vector x)
Constructor for DenseVector- Parameters:
x
- Copies contents from this vector. A deep copy is made
-
DenseVector
public DenseVector(Vector x, boolean deep)
Constructor for DenseVector- Parameters:
x
- Copies contents from this vectordeep
- True for a deep copy. For a shallow copy,x
must be aDenseVector
-
DenseVector
public DenseVector(double[] x, boolean deep)
Constructor for DenseVector- Parameters:
x
- Copies contents from this arraydeep
- True for a deep copy. For a shallow copy,x
is aliased with the internal storage
-
DenseVector
public DenseVector(double[] x)
Constructor for DenseVector- Parameters:
x
- Copies contents from this array in a deep copy
-
-
Method Detail
-
set
public void set(int index, double value)
Description copied from interface:Vector
x(index) = value
- Specified by:
set
in interfaceVector
- Overrides:
set
in classAbstractVector
-
add
public void add(int index, double value)
Description copied from interface:Vector
x(index) += value
- Specified by:
add
in interfaceVector
- Overrides:
add
in classAbstractVector
-
get
public double get(int index)
Description copied from interface:Vector
Returnsx(index)
- Specified by:
get
in interfaceVector
- Overrides:
get
in classAbstractVector
-
copy
public DenseVector copy()
Description copied from interface:Vector
Creates a deep copy of the vector- Specified by:
copy
in interfaceVector
- Overrides:
copy
in classAbstractVector
-
zero
public DenseVector zero()
Description copied from interface:Vector
Zeros all the entries in the vector, while preserving any underlying structure- Specified by:
zero
in interfaceVector
- Overrides:
zero
in classAbstractVector
-
scale
public DenseVector scale(double alpha)
Description copied from interface:Vector
x=alpha*x
- Specified by:
scale
in interfaceVector
- Overrides:
scale
in classAbstractVector
- Returns:
- x
-
set
public Vector set(Vector y)
Description copied from interface:Vector
x=y
- Specified by:
set
in interfaceVector
- Overrides:
set
in classAbstractVector
- Returns:
- x
-
set
public Vector set(double alpha, Vector y)
Description copied from interface:Vector
x=alpha*y
- Specified by:
set
in interfaceVector
- Overrides:
set
in classAbstractVector
- Returns:
- x
-
add
public Vector add(Vector y)
Description copied from interface:Vector
x = y + x
- Specified by:
add
in interfaceVector
- Overrides:
add
in classAbstractVector
- Returns:
- x
-
add
public Vector add(double alpha, Vector y)
Description copied from interface:Vector
x = alpha*y + x
- Specified by:
add
in interfaceVector
- Overrides:
add
in classAbstractVector
- Returns:
- x
-
dot
public double dot(Vector y)
Description copied from interface:Vector
xT*y
- Specified by:
dot
in interfaceVector
- Overrides:
dot
in classAbstractVector
-
norm1
protected double norm1()
- Overrides:
norm1
in classAbstractVector
-
norm2
protected double norm2()
- Overrides:
norm2
in classAbstractVector
-
norm2_robust
protected double norm2_robust()
- Overrides:
norm2_robust
in classAbstractVector
-
normInf
protected double normInf()
- Overrides:
normInf
in classAbstractVector
-
getData
public double[] getData()
Returns the internal vector contents. The array indices correspond to the vector indices
-
-