package util.test; import util.linalg.Matrix; import util.linalg.RectangularMatrix; import util.linalg.TridiagonalDecomposition; /** * A test of the tridiagonal decomposition * @author Andrew Guillory gtg008g@mail.gatech.edu * @version 1.0 */ public class TridiagonalDecompositionTest { /** * Test main, creates a matrix and decomposes and reconstructs * @param args ignored */ public static void main(String[] args) { double[][] a = { { 4, 3, 2, 1}, { 3, 4, 3, 2}, { 2, 3, 4, 3}, { 1, 2, 3, 4} }; // double[][] a = { // { 1, 3, 4 }, // { 3, 2, 8 }, // { 4, 8, 3 } // }; Matrix m = new RectangularMatrix(a); TridiagonalDecomposition td = new TridiagonalDecomposition(m); System.out.println(m); System.out.println(td.getU()); System.out.println(td.getT()); System.out.println( td.getU().times(td.getT()).times(td.getU().transpose())); System.out.println( td.getU().times(td.getU().transpose())); } }