Package cc.mallet.types
Class SparseMatrixn
- java.lang.Object
-
- cc.mallet.types.SparseMatrixn
-
- All Implemented Interfaces:
ConstantMatrix,Matrix,java.io.Serializable,java.lang.Cloneable
public class SparseMatrixn extends java.lang.Object implements Matrix, java.lang.Cloneable, java.io.Serializable
Implementation of Matrix that allows arbitrary number of dimensions. This implementation simply uses a flat array. Created: Tue Sep 16 14:52:37 2003- Version:
- $Id: SparseMatrixn.java,v 1.1 2007/10/22 21:37:39 mccallum Exp $
- Author:
- Charles Sutton
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SparseMatrixn(double[] vals)Create a 1-d dense matrix with the given values.SparseMatrixn(int[] szs)Create a dense matrix with the given dimensions.SparseMatrixn(int[] szs, double[] vals)SparseMatrixn(int[] szs, int[] idxs, double[] vals)Create a sparse matrix with the given dimensions and the given values.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description doubleabsNorm()doubleabsNormalize()java.lang.Objectclone()ConstantMatrixcloneMatrix()voiddivideEquals(double factor)doubledotProduct(ConstantMatrix m)voidelementwiseDivideEquals(ConstantMatrix m)voidelementwiseDivideEquals(ConstantMatrix m, double factor)voidelementwiseTimesEquals(ConstantMatrix m)voidelementwiseTimesEquals(ConstantMatrix m, double factor)booleanequals(java.lang.Object o)voidequalsPlus(double factor, ConstantMatrix m)intgetDimensions(int[] szs)int[]getIndices()Returns an array of all the present indices.intgetNumDimensions()inthashCode()voidincrementSingleValue(int i, double delta)intindexAtLocation(int location)doubleinfinityNorm()doubleinfinityNormalize()booleanisNaN()intlocation(int index)intnumLocations()doubleoneNorm()doubleoneNormalize()voidplusEquals(ConstantMatrix m)voidplusEquals(ConstantMatrix m, double factor)voidprint()voidset(ConstantMatrix m)voidsetAll(double v)voidsetSingleValue(int i, double value)voidsetValue(int[] indices, double value)voidsetValueAtLocation(int location, double value)voidsetWithAddend(ConstantMatrix m, double addend)voidsetWithFactor(ConstantMatrix m, double factor)intsingleIndex(int[] indices)static intsingleIndex(int[] szs, int[] indices)intsingleSize()voidsingleToIndices(int single, int[] indices)doublesingleValue(int i)voidtimesEquals(double factor)double[]toArray()Returns a one-dimensional array representation of the matrix.doubletwoNorm()doubletwoNormalize()doublevalue(int[] indices)doublevalueAtLocation(int location)
-
-
-
Constructor Detail
-
SparseMatrixn
public SparseMatrixn(double[] vals)
Create a 1-d dense matrix with the given values.
-
SparseMatrixn
public SparseMatrixn(int[] szs)
Create a dense matrix with the given dimensions.- Parameters:
szs- An array containing the maximum for each dimension.
-
SparseMatrixn
public SparseMatrixn(int[] szs, double[] vals)
-
SparseMatrixn
public SparseMatrixn(int[] szs, int[] idxs, double[] vals)Create a sparse matrix with the given dimensions and the given values.- Parameters:
szs- An array containing the maximum for each dimension.idxs- An array containing the single index for each entry of the matrix. A single index is an integer computed from the indices of each dimension. as returned byMatrixn.singleIndex(int[]).vals- A flat array of the entries of the matrix, in row-major order.
-
-
Method Detail
-
getNumDimensions
public int getNumDimensions()
- Specified by:
getNumDimensionsin interfaceConstantMatrix
-
getDimensions
public int getDimensions(int[] szs)
- Specified by:
getDimensionsin interfaceConstantMatrix
-
value
public double value(int[] indices)
- Specified by:
valuein interfaceConstantMatrix
-
setValue
public void setValue(int[] indices, double value)
-
getIndices
public int[] getIndices()
Returns an array of all the present indices. Callers must not modify the return value.
-
cloneMatrix
public ConstantMatrix cloneMatrix()
- Specified by:
cloneMatrixin interfaceConstantMatrix
-
clone
public java.lang.Object clone()
- Overrides:
clonein classjava.lang.Object
-
singleIndex
public int singleIndex(int[] indices)
- Specified by:
singleIndexin interfaceConstantMatrix
-
singleIndex
public static int singleIndex(int[] szs, int[] indices)
-
singleToIndices
public void singleToIndices(int single, int[] indices)- Specified by:
singleToIndicesin interfaceConstantMatrix
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
toArray
public double[] toArray()
Returns a one-dimensional array representation of the matrix. Caller must not modify the return value.- Returns:
- An array of the values where index 0 is the major index, etc.
-
singleValue
public double singleValue(int i)
- Specified by:
singleValuein interfaceConstantMatrix
-
singleSize
public int singleSize()
- Specified by:
singleSizein interfaceConstantMatrix
-
numLocations
public int numLocations()
- Specified by:
numLocationsin interfaceConstantMatrix
-
location
public int location(int index)
- Specified by:
locationin interfaceConstantMatrix
-
valueAtLocation
public double valueAtLocation(int location)
- Specified by:
valueAtLocationin interfaceConstantMatrix
-
setValueAtLocation
public void setValueAtLocation(int location, double value)- Specified by:
setValueAtLocationin interfaceMatrix
-
indexAtLocation
public int indexAtLocation(int location)
- Specified by:
indexAtLocationin interfaceConstantMatrix
-
dotProduct
public double dotProduct(ConstantMatrix m)
- Specified by:
dotProductin interfaceConstantMatrix
-
absNorm
public double absNorm()
- Specified by:
absNormin interfaceConstantMatrix
-
oneNorm
public double oneNorm()
- Specified by:
oneNormin interfaceConstantMatrix
-
twoNorm
public double twoNorm()
- Specified by:
twoNormin interfaceConstantMatrix
-
infinityNorm
public double infinityNorm()
- Specified by:
infinityNormin interfaceConstantMatrix
-
print
public void print()
- Specified by:
printin interfaceConstantMatrix
-
isNaN
public boolean isNaN()
- Specified by:
isNaNin interfaceConstantMatrix
-
setSingleValue
public void setSingleValue(int i, double value)- Specified by:
setSingleValuein interfaceMatrix
-
incrementSingleValue
public void incrementSingleValue(int i, double delta)- Specified by:
incrementSingleValuein interfaceMatrix
-
set
public void set(ConstantMatrix m)
-
setWithAddend
public void setWithAddend(ConstantMatrix m, double addend)
- Specified by:
setWithAddendin interfaceMatrix
-
setWithFactor
public void setWithFactor(ConstantMatrix m, double factor)
- Specified by:
setWithFactorin interfaceMatrix
-
plusEquals
public void plusEquals(ConstantMatrix m)
- Specified by:
plusEqualsin interfaceMatrix
-
plusEquals
public void plusEquals(ConstantMatrix m, double factor)
- Specified by:
plusEqualsin interfaceMatrix
-
equalsPlus
public void equalsPlus(double factor, ConstantMatrix m)- Specified by:
equalsPlusin interfaceMatrix
-
timesEquals
public void timesEquals(double factor)
- Specified by:
timesEqualsin interfaceMatrix
-
elementwiseTimesEquals
public void elementwiseTimesEquals(ConstantMatrix m)
- Specified by:
elementwiseTimesEqualsin interfaceMatrix
-
elementwiseTimesEquals
public void elementwiseTimesEquals(ConstantMatrix m, double factor)
- Specified by:
elementwiseTimesEqualsin interfaceMatrix
-
divideEquals
public void divideEquals(double factor)
- Specified by:
divideEqualsin interfaceMatrix
-
elementwiseDivideEquals
public void elementwiseDivideEquals(ConstantMatrix m)
- Specified by:
elementwiseDivideEqualsin interfaceMatrix
-
elementwiseDivideEquals
public void elementwiseDivideEquals(ConstantMatrix m, double factor)
- Specified by:
elementwiseDivideEqualsin interfaceMatrix
-
oneNormalize
public double oneNormalize()
- Specified by:
oneNormalizein interfaceMatrix
-
twoNormalize
public double twoNormalize()
- Specified by:
twoNormalizein interfaceMatrix
-
absNormalize
public double absNormalize()
- Specified by:
absNormalizein interfaceMatrix
-
infinityNormalize
public double infinityNormalize()
- Specified by:
infinityNormalizein interfaceMatrix
-
-