package org.freehep.math.minuit; import java.util.Random; import junit.framework.TestCase; /** * * @author tonyj */ public class MnAlgebraicSymMatrixTest extends TestCase { private MnAlgebraicSymMatrix matrix; public MnAlgebraicSymMatrixTest(String testName) { super(testName); } protected void setUp() throws java.lang.Exception { Random random = new Random(12345); matrix = new MnAlgebraicSymMatrix(5); for (int i=0; i<5; i++) for (int j=0; j<=i; j++) matrix.set(i,j,random.nextDouble()); } public static junit.framework.Test suite() { junit.framework.TestSuite suite = new junit.framework.TestSuite(MnAlgebraicSymMatrixTest.class); return suite; } /** * Test of invert method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testInvert() { MnAlgebraicSymMatrix m = matrix.clone(); try { m.invert(); MnAlgebraicSymMatrix p = MnUtils.mul(m,matrix); for (int i=0; i<p.nrow(); i++) { for (int j=0; j<p.nrow(); j++) { assertEquals(i==j ? 1 : 0,p.get(i,j),1e-14); } } } catch (MatrixInversionException x) { fail("MatrixInversionException"); } } /** * Test of clone method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testClone() { MnAlgebraicSymMatrix m = matrix.clone(); assertEquals(m.nrow(),matrix.nrow()); assertEquals(m.ncol(),matrix.ncol()); assertEquals(m.size(),matrix.size()); for (int i=0; i<5; i++) for (int j=0; j<=i; j++) assertEquals(m.get(i,j),matrix.get(i,j)); } /** * Test of eigenvalues method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testEigenvalues() { MnAlgebraicVector v = matrix.eigenvalues(); System.out.println(v); } /** * Test of get method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testGet() { } /** * Test of set method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testSet() { } /** * Test of data method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testData() { MnAlgebraicSymMatrix m = new MnAlgebraicSymMatrix(5); double data[] = m.data(); assertEquals(data.length,15); } /** * Test of size method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testSize() { MnAlgebraicSymMatrix m = new MnAlgebraicSymMatrix(5); assertEquals(m.size(),15); } /** * Test of nrow method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testNrow() { MnAlgebraicSymMatrix m = new MnAlgebraicSymMatrix(5); assertEquals(m.nrow(),5); } /** * Test of ncol method, of class org.freehep.minuit.MnAlgebraicSymMatrix. */ public void testNcol() { MnAlgebraicSymMatrix m = new MnAlgebraicSymMatrix(5); assertEquals(m.ncol(),5); } // TODO add test methods here. The name must begin with 'test'. For example: // public void testHello() {} }