Class Matrix

java.lang.Object
edu.cmu.tetrad.util.Matrix
All Implemented Interfaces:
TetradSerializable, Serializable

public class Matrix extends Object implements TetradSerializable
Wraps the Apache math3 linear algebra library for most uses in Tetrad. Specialized uses will still have to use the library directly. One issue this fixes is that a BlockRealMatrix cannot represent a matrix with zero rows; this uses an Array2DRowRealMatrix to represent that case.
Author:
josephramsey
See Also:
  • Constructor Details

    • Matrix

      public Matrix(double[][] data)
    • Matrix

      public Matrix(org.apache.commons.math3.linear.RealMatrix data)
    • Matrix

      public Matrix(int m, int n)
    • Matrix

      public Matrix(Matrix m)
  • Method Details

    • identity

      public static Matrix identity(int rows)
    • sparseMatrix

      public static Matrix sparseMatrix(int m, int n)
    • serializableInstance

      public static Matrix serializableInstance()
      Generates a simple exemplar of this class to test serialization.
    • assign

      public void assign(Matrix matrix)
    • getNumColumns

      public int getNumColumns()
    • diag

      public Vector diag()
    • getSelection

      public Matrix getSelection(int[] rows, int[] cols)
    • copy

      public Matrix copy()
    • getColumn

      public Vector getColumn(int j)
    • times

      public Matrix times(Matrix m)
    • times

      public Vector times(Vector v)
    • toArray

      public double[][] toArray()
    • getApacheData

      public org.apache.commons.math3.linear.RealMatrix getApacheData()
    • get

      public double get(int i, int j)
    • like

      public Matrix like()
    • set

      public void set(int i, int j, double v)
    • getRow

      public Vector getRow(int i)
    • getPart

      public Matrix getPart(int i, int j, int k, int l)
    • inverse

      public Matrix inverse() throws org.apache.commons.math3.linear.SingularMatrixException
      Throws:
      org.apache.commons.math3.linear.SingularMatrixException
    • symmetricInverse

      public Matrix symmetricInverse()
    • ginverse

      public Matrix ginverse()
    • assignRow

      public void assignRow(int row, Vector doubles)
    • assignColumn

      public void assignColumn(int col, Vector doubles)
    • trace

      public double trace()
    • det

      public double det()
    • transpose

      public Matrix transpose()
    • equals

      public boolean equals(Matrix m, double tolerance)
    • isSquare

      public boolean isSquare()
    • isSymmetric

      public boolean isSymmetric(double tolerance)
    • minus

      public Matrix minus(Matrix mb)
    • norm1

      public double norm1()
    • plus

      public Matrix plus(Matrix mb)
    • rank

      public int rank()
    • getNumRows

      public int getNumRows()
    • scalarMult

      public Matrix scalarMult(double scalar)
    • sqrt

      public Matrix sqrt()
    • sum

      public Vector sum(int direction)
    • zSum

      public double zSum()
    • toString

      public String toString()
      Overrides:
      toString in class Object