package mikera.matrixx.impl; import static org.junit.Assert.*; import mikera.matrixx.algo.Definite; import org.junit.Test; public class TestDiagonalMatrix { @Test public void testInnerProduct() { DiagonalMatrix a=DiagonalMatrix.create(1,2); DiagonalMatrix b=DiagonalMatrix.create(2,3); assertEquals(DiagonalMatrix.create(2,6),a.innerProduct(b)); } @Test public void testOrthogonal() { assertTrue(DiagonalMatrix.create(1,1,1).isOrthogonal()); assertFalse(DiagonalMatrix.create(1,2,3).isOrthogonal()); } @Test public void testDefinite() { assertTrue(Definite.isPositiveDefinite(DiagonalMatrix.create(1,0.4,2))); assertFalse(Definite.isPositiveDefinite(DiagonalMatrix.create(1,0))); assertFalse(Definite.isPositiveDefinite(DiagonalMatrix.create(-1,1))); assertTrue(Definite.isPositiveSemiDefinite(DiagonalMatrix.create(1,0.4,2))); assertTrue(Definite.isPositiveSemiDefinite(DiagonalMatrix.create(1,0))); assertFalse(Definite.isPositiveSemiDefinite(DiagonalMatrix.create(-1,1))); } }