static ComplexDoubleCholeskyDecompTest()
 {
   ComplexDoubleMatrix a = new ComplexDoubleMatrix(3);
   a[0,0] = 2;
   a[0,1] = new Complex(1,-1);
   a[0,2] = 0;
   a[1,0] = new Complex(1,-1);
   a[1,1] = 2;
   a[1,2] = 0;
   a[2,0] = 0;
   a[2,1] = 0;
   a[2,2] = 3;
   cd = new ComplexDoubleCholeskyDecomp(a);
 }
 public void NonSymmFactorTest()
 {
   ComplexDoubleMatrix b = new ComplexDoubleMatrix(3);
   b[0,0] = 2;
   b[0,1] = 1;
   b[0,2] = 1;
   b[1,0] = 1;
   b[1,1] = 2;
   b[1,2] = 0;
   b[2,0] = 0;
   b[2,1] = 0;
   b[2,2] = 3;
   ComplexDoubleCholeskyDecomp dcd = new ComplexDoubleCholeskyDecomp(b);
   Assert.AreEqual(dcd.Factor[0,0].Real,1.414,TOLERENCE);
   Assert.AreEqual(dcd.Factor[0,1].Real,0.000,TOLERENCE);
   Assert.AreEqual(dcd.Factor[0,2].Real,0.000,TOLERENCE);
   Assert.AreEqual(dcd.Factor[1,0].Real,0.707,TOLERENCE);
   Assert.AreEqual(dcd.Factor[1,1].Real,1.225,TOLERENCE);
   Assert.AreEqual(dcd.Factor[1,2].Real,0.000,TOLERENCE);
   Assert.AreEqual(dcd.Factor[2,0].Real,0.000,TOLERENCE);
   Assert.AreEqual(dcd.Factor[2,1].Real,0.000,TOLERENCE);
   Assert.AreEqual(dcd.Factor[2,2].Real,1.732,TOLERENCE);
 }
 public void CDLong()
 {
   ComplexDoubleMatrix lm = new ComplexDoubleMatrix(3,2);
   ComplexDoubleCholeskyDecomp lcd = new ComplexDoubleCholeskyDecomp(lm);
 }
    public void CDWide()
    {
      ComplexDoubleMatrix wm = new ComplexDoubleMatrix(2,3);
      ComplexDoubleCholeskyDecomp wcd = new ComplexDoubleCholeskyDecomp(wm);

    }
 public void GetInverseNotPositiveDefiniteTest()
 {
   ComplexDoubleMatrix a = new ComplexDoubleMatrix(3);
   ComplexDoubleCholeskyDecomp dcd = new ComplexDoubleCholeskyDecomp(a);
   dcd.GetInverse();
 }
 public void IsPositiveDefiniteTest()
 {
   Assert.IsTrue(cd.IsPositiveDefinite);
   ComplexDoubleMatrix b = new ComplexDoubleMatrix(3);
   b[0,0] = -2;
   b[0,1] = 1;
   b[0,2] = 0;
   b[1,0] = 1;
   b[1,1] = 2;
   b[1,2] = 0;
   b[2,0] = 0;
   b[2,1] = 0;
   b[2,2] = 3;
   ComplexDoubleCholeskyDecomp dcd = new ComplexDoubleCholeskyDecomp(b);
   Assert.IsFalse(dcd.IsPositiveDefinite);
 }