public virtual void TestInnerProduct2(ConcatVectorTest.DenseTestVector d1, ConcatVectorTest.DenseTestVector d2, ConcatVectorTest.DenseTestVector d3) { // Test the invariant x^Tz + 0.7*y^Tz == (x+0.7*y)^Tz double d1d3 = d1.vector.DotProduct(d3.vector); NUnit.Framework.Assert.AreEqual(d1d3, 5.0e-4, d1.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d3)); double d2d3 = d2.vector.DotProduct(d3.vector); NUnit.Framework.Assert.AreEqual(d2d3, 5.0e-4, d2.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d3)); double expected = d1d3 + (0.7f * d2d3); NUnit.Framework.Assert.AreEqual(expected, 5.0e-4, d1.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d3) + (0.7 * d2.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d3))); }
public virtual void TestInnerProduct(ConcatVectorTest.DenseTestVector d1, ConcatVectorTest.DenseTestVector d2) { NUnit.Framework.Assert.AreEqual(d1.vector.DotProduct(d2.vector) + d2.vector.DotProduct(d2.vector), 5.0e-4, d1.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d2) + d2.TrueInnerProduct((ConcatVectorTest.DenseTestVector)d2)); }