Class Matrix2

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

public class Matrix2 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

    • Matrix2

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

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

      public Matrix2(int m, int n)
    • Matrix2

      public Matrix2(Matrix2 m)
  • Method Details

    • identity

      public static Matrix2 identity(int rows)
    • sparseMatrix

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

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

      public void assign(Matrix2 matrix)
    • getNumColumns

      public int getNumColumns()
    • diag

      public Vector diag()
    • getSelection

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

      public Matrix2 copy()
    • getColumn

      public Vector getColumn(int j)
    • times

      public Matrix2 times(Matrix2 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 Matrix2 like()
    • set

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

      public Vector getRow(int i)
    • getPart

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

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

      public Matrix2 symmetricInverse()
    • ginverse

      public Matrix2 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 Matrix2 transpose()
    • equals

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

      public boolean isSquare()
    • isSymmetric

      public boolean isSymmetric(double tolerance)
    • minus

      public Matrix2 minus(Matrix2 mb)
    • norm1

      public double norm1()
    • plus

      public Matrix2 plus(Matrix2 mb)
    • rank

      public int rank()
    • getNumRows

      public int getNumRows()
    • scalarMult

      public Matrix2 scalarMult(double scalar)
    • sqrt

      public Matrix2 sqrt()
    • sum

      public Vector sum(int direction)
    • zSum

      public double zSum()
    • toString

      public String toString()
      Overrides:
      toString in class Object