Package org.jscience.mathematics.vector
Class SparseVector<F extends Field<F>>
java.lang.Object
org.jscience.mathematics.vector.Vector<F>
org.jscience.mathematics.vector.SparseVector<F>
- All Implemented Interfaces:
javolution.lang.Immutable
,javolution.lang.Realtime
,javolution.lang.ValueType
,GroupAdditive<Vector<F>>
,Structure<Vector<F>>
,VectorSpace<Vector<F>,
F>
This class represents a sparse vector.
Sparse vectors can be created using an index-to-element mapping or by adding single elements sparse vectors together.
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final javolution.xml.XMLFormat<SparseVector>
Holds the default XML representation for sparse vectors. -
Method Summary
Modifier and TypeMethodDescriptioncopy()
Returns a copy of this vectorallocated
by the calling thread (possibly on the stack).get
(int i) Returns a single element from this vector.int
Returns the number of elements held by this vector.getZero()
Returns the value of the non-set elements for this sparse vector.opposite()
Returns the negation of this vector.Returns the sum of this vector with the one specified.Returns the product of this vector with the specified coefficient.Returns the dot product of this vector with the one specified.static <F extends Field<F>>
SparseVector<F>valueOf
(int dimension, F zero, int i, F element) Returns a sparse vector having a single element at the specified index.static <F extends Field<F>>
SparseVector<F>Returns a sparse vector from the specified index to element mapping.static <F extends Field<F>>
SparseVector<F>Returns a sparse vector equivalent to the specified vector but with the zero elements removed removed using a default object equality comparator.static <F extends Field<F>>
SparseVector<F>Returns a sparse vector equivalent to the specified vector but with the zero elements removed using the specified object equality comparator.
-
Field Details
-
XML
Holds the default XML representation for sparse vectors. For example:[code]
-
-
Method Details
-
valueOf
Returns a sparse vector having a single element at the specified index.- Parameters:
dimension
- this vector dimension.zero
- the element representing zero.i
- the index value of this vector single element.element
- the element at the specified index.- Returns:
- the corresponding vector.
-
valueOf
public static <F extends Field<F>> SparseVector<F> valueOf(int dimension, F zero, Map<javolution.util.Index, F> elements) Returns a sparse vector from the specified index to element mapping.- Parameters:
dimension
- this vector dimension.zero
- the element representing zero.elements
- the index to element mapping.- Returns:
- the corresponding vector.
-
valueOf
Returns a sparse vector equivalent to the specified vector but with the zero elements removed removed using a default object equality comparator.- Parameters:
that
- the vector to convert.zero
- the zero element for the sparse vector to return.- Returns:
SparseVector.valueOf(that, zero, FastComparator.DEFAULT)
-
valueOf
public static <F extends Field<F>> SparseVector<F> valueOf(Vector<F> that, F zero, javolution.util.FastComparator<? super F> comparator) Returns a sparse vector equivalent to the specified vector but with the zero elements removed using the specified object equality comparator. This method can be used to clean up sparse vectors (to remove elements close to zero).- Parameters:
that
- the vector to convert.zero
- the zero element for the sparse vector to return.comparator
- the comparator used to determinate zero equality.- Returns:
- a sparse vector with zero elements removed.
-
getZero
Returns the value of the non-set elements for this sparse vector.- Returns:
- the element corresponding to zero.
-
getDimension
public int getDimension()Description copied from class:Vector
Returns the number of elements held by this vector.- Specified by:
getDimension
in classVector<F extends Field<F>>
- Returns:
- this vector dimension.
-
get
Description copied from class:Vector
Returns a single element from this vector. -
opposite
Description copied from class:Vector
Returns the negation of this vector. -
plus
Description copied from class:Vector
Returns the sum of this vector with the one specified. -
times
Description copied from class:Vector
Returns the product of this vector with the specified coefficient. -
times
Description copied from class:Vector
Returns the dot product of this vector with the one specified. -
copy
Description copied from class:Vector
Returns a copy of this vectorallocated
by the calling thread (possibly on the stack).
-