org.ujmp.core.graphmatrix
Class AbstractGraphMatrix<N,E>

java.lang.Object
  extended by java.lang.Number
      extended by org.ujmp.core.matrix.AbstractMatrix
          extended by org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix<A>
              extended by org.ujmp.core.genericmatrix.stub.AbstractSparseGenericMatrix<A>
                  extended by org.ujmp.core.genericmatrix.stub.AbstractSparseGenericMatrix2D<E>
                      extended by org.ujmp.core.graphmatrix.AbstractGraphMatrix<N,E>
All Implemented Interfaces:
Serializable, Cloneable, Comparable<Matrix>, HasAnnotation, BooleanCalculations, CanPerformCalculations, BasicDoubleCalculations, DoubleCalculations, BasicEntrywiseDoubleCalculations, CreatorDoubleCalculations, EntrywiseDoubleCalculations, HyperbolicDoubleCalculations, MiscEntrywiseDoubleCalculations, RoundingDoubleCalculations, TrigonometricDoubleCalculations, DecompositionDoubleCalculations, DiscretizeCalculations, GeneralDoubleCalculations, MiscGeneralDoubleCalculations, MissingValueDoubleCalculations, StatisticalDoubleCalculations, GenericMatrix<E>, GenericMatrix2D<E>, SparseGenericMatrix<E>, SparseGenericMatrix2D<E>, GenericGraph<N,E>, GraphMatrix<N,E>, BasicMatrixProperties, Clearable, Conversions, CoordinateFunctions, CoreObject, DistanceMeasures, GettersAndSetters, HasGUIObject, HasLabel, IntCalculations, ExportMatrixInterface, Matrix, Matrix2D, SparseMatrix, SparseMatrix2D, ObjectCalculations, StringCalculations
Direct Known Subclasses:
DefaultGraphMatrix

public abstract class AbstractGraphMatrix<N,E>
extends AbstractSparseGenericMatrix2D<E>
implements GraphMatrix<N,E>

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.ujmp.core.Matrix
Matrix.StorageType
 
Field Summary
 
Fields inherited from class org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix
factory
 
Fields inherited from interface org.ujmp.core.Matrix
ALL, chol, COLUMN, divideMatrix, divideScalar, eig, factory, inv, LINK, lu, minusMatrix, minusScalar, mtimes, NEW, NONE, ORIG, plusMatrix, plusScalar, qr, ROW, solve, svd, timesMatrix, timesScalar, transpose, X, Y, Z
 
Fields inherited from interface org.ujmp.core.matrix.SparseMatrix
factory
 
Constructor Summary
AbstractGraphMatrix()
           
 
Method Summary
 void addChild(long nodeIndex, long childIndex)
           
abstract  void addDirectedEdge(long node1, long node2)
           
 void addDirectedEdge(N node1, N node2)
           
 void addParent(long nodeIndex, long parentIndex)
           
 void addParent(N node, N parent)
           
abstract  void addUndirectedEdge(long node1, long node2)
           
 void addUndirectedEdge(N node1, N node2)
           
 Iterable<long[]> availableCoordinates()
          Returns an Iterator that only goes over the coordinates in the Matrix that are stored.
abstract  void clear()
           
 boolean contains(long... coordinates)
          Determines if the given Coordinates are part of the Matrix.
 int getChildCount(N node)
           
 List<Long> getChildIndices(N node)
           
 List<N> getChildren(long index)
           
 List<N> getChildren(N node)
           
 int getDegree(long nodeIndex)
           
 int getDegree(N node)
           
 E getEdgeValue(N node1, N node2)
           
 SparseObjectMatrix2DFactory getFactory()
           
 long getIndexOfNode(N o)
           
 E getObject(int row, int column)
           
 E getObject(long row, long column)
           
 int getParentCount(N node)
           
 List<Long> getParentIndices(N node)
           
 List<N> getParents(long index)
           
 List<N> getParents(N node)
           
 long[] getSize()
           
 Matrix.StorageType getStorageType()
           
 long getValueCount()
           
 boolean isConnected(long node1, long node2)
           
 boolean isConnected(N node1, N node2)
           
 void removeDirectedEdge(N node1, N node2)
           
 void removeUndirectedEdge(long nodeIndex1, long nodeIndex2)
           
 void removeUndirectedEdge(N node1, N node2)
           
 void setDirectedEdge(E edgeObject, N node1, N node2)
           
 void setUndirectedEdge(E value, long node1, long node2)
           
 void setUndirectedEdge(E edgeObject, N node1, N node2)
           
 
Methods inherited from class org.ujmp.core.genericmatrix.stub.AbstractSparseGenericMatrix2D
getObject, setObject
 
Methods inherited from class org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix
getAsObject, setAsObject
 
Methods inherited from class org.ujmp.core.matrix.AbstractMatrix
abs, addMissing, allCoordinates, allValues, and, and, append, appendHorizontally, appendVertically, atimes, bigDecimalValue, bigIntegerValue, booleanValue, bootstrap, bootstrap, ceil, center, charValue, chebyshevDistanceTo, chol, clone, compareTo, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, convert, copy, corrcoef, cos, cosh, countMissing, cov, cumprod, cumsum, dateValue, delete, delete, delete, deleteColumns, deleteColumns, deleteColumnsWithMissingValues, deleteRows, deleteRows, deleteRowsWithMissingValues, det, diff, discretize, discretizeToColumns, divide, divide, divide, divide, doubleValue, eig, eigSymm, eq, eq, equals, equalsAnnotation, equalsContent, euklideanDistanceTo, exp, exportToClipboard, exportToFile, exportToFile, exportToFile, exportToFile, exportToStream, exportToString, exportToWriter, extractAnnotation, eye, fadeIn, fadeOut, fill, flipdim, floatValue, floor, ge, ge, getAbsoluteValueMean, getAbsoluteValueSum, getAnnotation, getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsChar, getAsDate, getAsDouble, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsShort, getAsString, getAxisAnnotation, getAxisAnnotation, getColumnCount, getColumnForLabel, getColumnLabel, getColumnObject, getCoordinatesOfMaximum, getCoordinatesOfMinimum, getCoreObjectId, getDimensionCount, getEuklideanValue, getGUIObject, getLabel, getMatrixAnnotation, getMaxValue, getMeanValue, getMinValue, getPositionForLabel, getPreferredObject, getRMS, getRowCount, getRowForLabel, getRowLabel, getRowObject, getSize, getStdValue, getValueSum, getValueType, getZCount, ginv, gt, gt, impute, includeAnnotation, indexOfMax, indexOfMin, intValue, inv, invSPD, invSymm, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSparse, isSPD, isSquare, isSymmetric, isTransient, le, le, log, log10, log2, longValue, lowerCase, lt, lt, lu, manhattenDistanceTo, max, mean, min, minkowskiDistanceTo, minus, minus, minus, minus, mtimes, mtimes, mtimes, mtimes, mutualInf, ne, ne, nonZeroCoordinates, norm1, norm2, normalize, normF, normInf, not, notifyGUIObject, ones, or, or, pairedTTest, pinv, plus, plus, plus, plus, power, power, princomp, prod, qr, rand, randn, rank, removePunctuation, removeWords, replace, replaceMissingBy, replaceRegex, replaceRegex, reshape, round, select, select, select, selectColumns, selectColumns, selectedCoordinates, selectedCoordinates, selectRows, selectRows, setAnnotation, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsChar, setAsDate, setAsDouble, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsShort, setAsString, setAxisAnnotation, setAxisAnnotation, setColumnLabel, setColumnObject, setLabel, setMatrixAnnotation, setRowLabel, setRowObject, setSize, showGUI, shuffle, sign, sin, sinh, solve, solveSPD, solveSymm, sortrows, sqrt, squeeze, standardize, std, stem, stringValue, subMatrix, sum, svd, swap, tan, tanh, tfIdf, times, times, times, times, toBigDecimalArray, toBigDecimalMatrix, toBigIntegerArray, toBigIntegerMatrix, toBooleanArray, toBooleanMatrix, toByteArray, toByteMatrix, toCharArray, toCharMatrix, toColumnVector, toDateArray, toDateMatrix, toDoubleArray, toDoubleMatrix, toFloatArray, toFloatMatrix, toIntArray, toIntMatrix, toListMatrix, toLongArray, toLongMatrix, toMapMatrix, toObjectArray, toObjectMatrix, toRowVector, toSetMatrix, toShortArray, toShortMatrix, toString, toStringArray, toStringMatrix, trace, transpose, transpose, transpose, tril, triu, unique, uniqueValueCount, upperCase, var, xor, xor, zeros
 
Methods inherited from class java.lang.Number
byteValue, shortValue
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.ujmp.core.genericmatrix.GenericMatrix2D
setObject, setObject
 
Methods inherited from interface org.ujmp.core.genericmatrix.GenericMatrix
getObject, setObject
 
Methods inherited from interface org.ujmp.core.Matrix
clone
 
Methods inherited from interface org.ujmp.core.interfaces.CoreObject
getCoreObjectId
 
Methods inherited from interface org.ujmp.core.interfaces.HasGUIObject
getGUIObject, notifyGUIObject, showGUI
 
Methods inherited from interface org.ujmp.core.interfaces.HasLabel
getLabel, setLabel
 
Methods inherited from interface org.ujmp.core.io.ExportMatrixInterface
exportToClipboard, exportToFile, exportToFile, exportToFile, exportToFile, exportToStream, exportToString, exportToWriter
 
Methods inherited from interface org.ujmp.core.interfaces.CoordinateFunctions
allCoordinates, getCoordinatesOfMaximum, getCoordinatesOfMinimum, nonZeroCoordinates, selectedCoordinates, selectedCoordinates
 
Methods inherited from interface org.ujmp.core.interfaces.GettersAndSetters
getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsChar, getAsDate, getAsDouble, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsObject, getAsShort, getAsString, getPreferredObject, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsChar, setAsDate, setAsDouble, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsObject, setAsShort, setAsString, toBigDecimalArray, toBigIntegerArray, toBooleanArray, toByteArray, toCharArray, toDateArray, toDoubleArray, toFloatArray, toIntArray, toLongArray, toObjectArray, toShortArray, toStringArray
 
Methods inherited from interface org.ujmp.core.interfaces.BasicMatrixProperties
allValues, bigDecimalValue, bigIntegerValue, booleanValue, byteValue, charValue, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, dateValue, det, doubleValue, equals, equalsAnnotation, equalsContent, floatValue, getAbsoluteValueMean, getAbsoluteValueSum, getColumnCount, getDimensionCount, getEuklideanValue, getMaxValue, getMeanValue, getMinValue, getRMS, getRowCount, getSize, getStdValue, getValueSum, getValueType, getZCount, intValue, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSparse, isSPD, isSquare, isSymmetric, isTransient, longValue, norm1, norm2, normF, normInf, rank, setSize, shortValue, stringValue, toString, trace
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.basic.BasicDoubleCalculations
atimes, divide, divide, divide, divide, minus, minus, minus, minus, mtimes, mtimes, mtimes, mtimes, plus, plus, plus, plus, times, times, times, times
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.basic.BasicEntrywiseDoubleCalculations
abs, exp, log, log10, log2, power, power, sign, sqrt
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.rounding.RoundingDoubleCalculations
ceil, floor, round
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.hyperbolic.HyperbolicDoubleCalculations
cosh, sinh, tanh
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.trigonometric.TrigonometricDoubleCalculations
cos, sin, tan
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.creators.CreatorDoubleCalculations
eye, ones, rand, randn, zeros
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.statistical.StatisticalDoubleCalculations
corrcoef, cov, cumprod, cumsum, diff, indexOfMax, indexOfMin, max, mean, min, mutualInf, pairedTTest, prod, std, sum, var
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.decomposition.DecompositionDoubleCalculations
chol, eig, eigSymm, ginv, inv, invSPD, invSymm, lu, pinv, princomp, qr, solve, solveSPD, solveSymm, svd
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.missingvalues.MissingValueDoubleCalculations
addMissing, countMissing, deleteColumnsWithMissingValues, deleteRowsWithMissingValues, impute
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.misc.MiscGeneralDoubleCalculations
append, appendHorizontally, appendVertically, center, fadeIn, fadeOut, normalize, replaceMissingBy, standardize
 
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.discretize.DiscretizeCalculations
discretizeToColumns
 
Methods inherited from interface org.ujmp.core.booleanmatrix.calculation.BooleanCalculations
and, and, eq, eq, ge, ge, gt, gt, le, le, lt, lt, ne, ne, not, or, or, xor, xor
 
Methods inherited from interface org.ujmp.core.intmatrix.calculation.IntCalculations
discretize
 
Methods inherited from interface org.ujmp.core.stringmatrix.calculation.StringCalculations
lowerCase, removePunctuation, removeWords, replaceRegex, replaceRegex, stem, tfIdf, upperCase
 
Methods inherited from interface org.ujmp.core.objectmatrix.calculation.ObjectCalculations
bootstrap, bootstrap, convert, copy, delete, delete, delete, deleteColumns, deleteColumns, deleteRows, deleteRows, extractAnnotation, fill, flipdim, includeAnnotation, replace, reshape, select, select, select, selectColumns, selectColumns, selectRows, selectRows, shuffle, sortrows, squeeze, subMatrix, swap, toColumnVector, toRowVector, transpose, transpose, transpose, tril, triu, unique, uniqueValueCount
 
Methods inherited from interface org.ujmp.core.interfaces.DistanceMeasures
chebyshevDistanceTo, euklideanDistanceTo, manhattenDistanceTo, minkowskiDistanceTo
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface org.ujmp.core.annotation.HasAnnotation
getAnnotation, getAxisAnnotation, getAxisAnnotation, getColumnForLabel, getColumnLabel, getColumnObject, getMatrixAnnotation, getPositionForLabel, getRowForLabel, getRowLabel, getRowObject, setAnnotation, setAxisAnnotation, setAxisAnnotation, setColumnLabel, setColumnObject, setMatrixAnnotation, setRowLabel, setRowObject
 
Methods inherited from interface org.ujmp.core.interfaces.Conversions
toBigDecimalMatrix, toBigIntegerMatrix, toBooleanMatrix, toByteMatrix, toCharMatrix, toDateMatrix, toDoubleMatrix, toFloatMatrix, toIntMatrix, toListMatrix, toLongMatrix, toMapMatrix, toObjectMatrix, toSetMatrix, toShortMatrix, toStringMatrix
 
Methods inherited from interface org.ujmp.core.graphmatrix.GenericGraph
addChild, addEdge, addEdge, addNode, getChildCount, getChildIndices, getEdgeCount, getEdgeList, getEdgeValue, getNode, getNodeCount, getNodeList, getParentCount, getParentIndices, insertNode, isDirected, removeDirectedEdge, removeEdge, removeEdge, removeNode, removeNode, setDirected, setDirectedEdge, setEdge, setEdge, setNode
 

Constructor Detail

AbstractGraphMatrix

public AbstractGraphMatrix()
Method Detail

contains

public boolean contains(long... coordinates)
Description copied from interface: CoordinateFunctions
Determines if the given Coordinates are part of the Matrix. If the Matrix is dense, true is returned for all Coordinates smaller than the Matrix's size. For sparse Matrices, this function checks if the coordinates are actually stored in the matrix or not.

Specified by:
contains in interface CoordinateFunctions
Parameters:
coordinates - The coordinates to check
Returns:
a boolean stating if the coordinates are part of the Matrix

removeUndirectedEdge

public void removeUndirectedEdge(N node1,
                                 N node2)
Specified by:
removeUndirectedEdge in interface GenericGraph<N,E>

isConnected

public boolean isConnected(N node1,
                           N node2)
Specified by:
isConnected in interface GenericGraph<N,E>

getParents

public List<N> getParents(long index)
Specified by:
getParents in interface GenericGraph<N,E>

getParents

public List<N> getParents(N node)
Specified by:
getParents in interface GenericGraph<N,E>

getChildren

public List<N> getChildren(long index)
Specified by:
getChildren in interface GenericGraph<N,E>

getParentIndices

public List<Long> getParentIndices(N node)
Specified by:
getParentIndices in interface GenericGraph<N,E>

getEdgeValue

public E getEdgeValue(N node1,
                      N node2)
Specified by:
getEdgeValue in interface GenericGraph<N,E>

getDegree

public int getDegree(N node)
Specified by:
getDegree in interface GenericGraph<N,E>

getDegree

public int getDegree(long nodeIndex)
Specified by:
getDegree in interface GenericGraph<N,E>

addChild

public void addChild(long nodeIndex,
                     long childIndex)
Specified by:
addChild in interface GenericGraph<N,E>

addParent

public void addParent(long nodeIndex,
                      long parentIndex)
Specified by:
addParent in interface GenericGraph<N,E>

getChildCount

public int getChildCount(N node)
Specified by:
getChildCount in interface GenericGraph<N,E>

addParent

public void addParent(N node,
                      N parent)
Specified by:
addParent in interface GenericGraph<N,E>

getParentCount

public int getParentCount(N node)
Specified by:
getParentCount in interface GenericGraph<N,E>

getChildIndices

public List<Long> getChildIndices(N node)
Specified by:
getChildIndices in interface GenericGraph<N,E>

getChildren

public List<N> getChildren(N node)
Specified by:
getChildren in interface GenericGraph<N,E>

removeUndirectedEdge

public void removeUndirectedEdge(long nodeIndex1,
                                 long nodeIndex2)
Specified by:
removeUndirectedEdge in interface GenericGraph<N,E>

removeDirectedEdge

public void removeDirectedEdge(N node1,
                               N node2)
Specified by:
removeDirectedEdge in interface GenericGraph<N,E>

availableCoordinates

public Iterable<long[]> availableCoordinates()
Description copied from interface: CoordinateFunctions
Returns an Iterator that only goes over the coordinates in the Matrix that are stored. For most Matrices, this is the same as allCoordinates(). For sparse Matrices, it iterates only over the entries in it.

Specified by:
availableCoordinates in interface CoordinateFunctions
Overrides:
availableCoordinates in class AbstractMatrix
Returns:
Iterable over the saved entries in a Matrix.

getSize

public long[] getSize()
Specified by:
getSize in interface BasicMatrixProperties

getObject

public E getObject(long row,
                   long column)
Specified by:
getObject in interface GenericMatrix2D<E>

getObject

public E getObject(int row,
                   int column)
Specified by:
getObject in interface GenericMatrix2D<E>

getValueCount

public long getValueCount()
Specified by:
getValueCount in interface BasicMatrixProperties
Overrides:
getValueCount in class AbstractMatrix

addDirectedEdge

public final void addDirectedEdge(N node1,
                                  N node2)
Specified by:
addDirectedEdge in interface GenericGraph<N,E>

addUndirectedEdge

public abstract void addUndirectedEdge(long node1,
                                       long node2)
Specified by:
addUndirectedEdge in interface GenericGraph<N,E>

addDirectedEdge

public abstract void addDirectedEdge(long node1,
                                     long node2)
Specified by:
addDirectedEdge in interface GenericGraph<N,E>

addUndirectedEdge

public final void addUndirectedEdge(N node1,
                                    N node2)
Specified by:
addUndirectedEdge in interface GenericGraph<N,E>

isConnected

public final boolean isConnected(long node1,
                                 long node2)
Specified by:
isConnected in interface GenericGraph<N,E>

getIndexOfNode

public final long getIndexOfNode(N o)
Specified by:
getIndexOfNode in interface GenericGraph<N,E>

setUndirectedEdge

public void setUndirectedEdge(E value,
                              long node1,
                              long node2)
Specified by:
setUndirectedEdge in interface GenericGraph<N,E>

setDirectedEdge

public void setDirectedEdge(E edgeObject,
                            N node1,
                            N node2)
Specified by:
setDirectedEdge in interface GenericGraph<N,E>

setUndirectedEdge

public void setUndirectedEdge(E edgeObject,
                              N node1,
                              N node2)
Specified by:
setUndirectedEdge in interface GenericGraph<N,E>

clear

public abstract void clear()
Specified by:
clear in interface Clearable
Overrides:
clear in class AbstractMatrix

getStorageType

public final Matrix.StorageType getStorageType()
Specified by:
getStorageType in interface BasicMatrixProperties
Overrides:
getStorageType in class AbstractSparseGenericMatrix<E>

getFactory

public SparseObjectMatrix2DFactory getFactory()
Specified by:
getFactory in interface Matrix
Specified by:
getFactory in interface Matrix2D
Specified by:
getFactory in interface SparseMatrix
Specified by:
getFactory in interface SparseMatrix2D
Overrides:
getFactory in class AbstractSparseGenericMatrix2D<E>


Copyright © 2010. All Rights Reserved.