Beispiel #1
0
        public void DiagFloat()
        {
            var x1 = new FloatTensor(9);

            for (var i = 0; i < x1.Shape[0]; ++i)
            {
                x1[i] = i + 1;
            }

            x1.Resize2d(3, 3);

            var diag0 = x1.Diagonal(0);
            var diag1 = x1.Diagonal(1);

            Assert.AreEqual(1, diag0.Shape.Length);
            Assert.AreEqual(3, diag0.Shape[0]);
            Assert.AreEqual(1, diag1.Shape.Length);
            Assert.AreEqual(2, diag1.Shape[0]);

            Assert.AreEqual(1, diag0[0]);
            Assert.AreEqual(5, diag0[1]);
            Assert.AreEqual(9, diag0[2]);

            Assert.AreEqual(2, diag1[0]);
            Assert.AreEqual(6, diag1[1]);
        }