public void WriteNullMatricesThrowsArgumentNullException()
 {
     var writer = new MatlabMatrixWriter("somefile4");
     Assert.Throws<ArgumentNullException>(() => writer.WriteMatrices(new Matrix[] { null }, new[] { "matrix" }));
     Matrix matrix = new DenseMatrix(1, 1);
     Assert.Throws<ArgumentNullException>(() => writer.WriteMatrices(new[] { matrix }, null));
     writer.Dispose();
 }
Example #2
0
        public void WriteNullMatricesThrowsArgumentNullException()
        {
            var writer = new MatlabMatrixWriter("somefile4");

            Assert.Throws <ArgumentNullException>(() => writer.WriteMatrices(new LinearAlgebra.Single.Matrix[] { null }, new[] { "matrix" }));
            var matrix = new LinearAlgebra.Single.DenseMatrix(1, 1);

            Assert.Throws <ArgumentNullException>(() => writer.WriteMatrices(new LinearAlgebra.Single.Matrix[] { matrix }, null));
            writer.Dispose();
        }
 public void WriteBadMatricesThrowsArgumentException()
 {
     Matrix matrix = new DenseMatrix(1, 1);
     var writer = new MatlabMatrixWriter("somefile3");
     Assert.Throws<ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new[] { string.Empty }));
     Assert.Throws<ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new string[] { null }));
     Assert.Throws<ArgumentException>(() => writer.WriteMatrices(new[] { matrix, matrix }, new[] { "matrix" }));
     Assert.Throws<ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new[] { "some matrix" }));
     writer.Dispose();
 }
        public void WriteMatrices_ThrowsArgumentNullException()
        {
            var writer = new MatlabMatrixWriter("somefile4");

            Assert.Throws <ArgumentNullException>(() => writer.WriteMatrices(new Matrix[] { null }, new[] { "matrix" }));
            Matrix matrix = new DenseMatrix(1, 1);

            Assert.Throws <ArgumentNullException>(() => writer.WriteMatrices(new[] { matrix }, null));
            writer.Dispose();
        }
Example #5
0
        public void WriteBadMatricesThrowsArgumentException()
        {
            var matrix = new LinearAlgebra.Single.DenseMatrix(1, 1);
            var writer = new MatlabMatrixWriter("somefile3");

            Assert.Throws <ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new[] { string.Empty }));
            Assert.Throws <ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new string[] { null }));
            Assert.Throws <ArgumentException>(() => writer.WriteMatrices(new[] { matrix, matrix }, new[] { "matrix" }));
            Assert.Throws <ArgumentException>(() => writer.WriteMatrices(new[] { matrix }, new[] { "some matrix" }));
            writer.Dispose();
        }
Example #6
0
        public void CanWriteMatrices()
        {
            Matrix mat1 = new DenseMatrix(5, 3);

            for (var i = 0; i < mat1.ColumnCount; i++)
            {
                mat1[i, i] = i + .1f;
            }

            Matrix mat2 = new DenseMatrix(4, 5);

            for (var i = 0; i < mat2.RowCount; i++)
            {
                mat2[i, i] = i + .1f;
            }

            Matrix mat3 = new SparseMatrix(5, 4);

            for (var i = 0; i < mat3.ColumnCount; i++)
            {
                mat3[i, i] = i + .1f;
            }

            Matrix mat4 = new SparseMatrix(3, 5);

            for (var i = 0; i < mat4.RowCount; i++)
            {
                mat4[i, i] = i + .1f;
            }

            var write = new[] { mat1, mat2, mat3, mat4 };

            var names = new[] { "mat1", "dense_matrix_2", "s1", "sparse2" };

            if (File.Exists("test.mat"))
            {
                File.Delete("test.mat");
            }

            var writer = new MatlabMatrixWriter("test.mat");

            writer.WriteMatrices(write, names);
            writer.Dispose();

            var reader = new MatlabMatrixReader("test.mat");
            var read   = reader.ReadMatrices(names);

            Assert.AreEqual(write.Length, read.Count);

            for (var i = 0; i < write.Length; i++)
            {
                var w = write[i];
                var r = read[names[i]];

                Assert.AreEqual(w.RowCount, r.RowCount);
                Assert.AreEqual(w.ColumnCount, r.ColumnCount);
                Assert.IsTrue(w.Equals(r));
            }
        }
Example #7
0
        public void CanWriteDoubleMatrices()
        {
            var mat1 = new LinearAlgebra.Double.DenseMatrix(5, 3);

            for (var i = 0; i < mat1.ColumnCount; i++)
            {
                mat1[i, i] = i + .1;
            }

            var mat2 = new LinearAlgebra.Double.DenseMatrix(4, 5);

            for (var i = 0; i < mat2.RowCount; i++)
            {
                mat2[i, i] = i + .1;
            }

            var mat3 = new LinearAlgebra.Double.SparseMatrix(5, 4);

            mat3[0, 0] = 1.1;
            mat3[0, 2] = 2.2;
            mat3[4, 3] = 3.3;

            var mat4 = new LinearAlgebra.Double.SparseMatrix(3, 5);

            mat4[0, 0] = 1.1;
            mat4[0, 2] = 2.2;
            mat4[2, 4] = 3.3;

            var write = new LinearAlgebra.Double.Matrix[] { mat1, mat2, mat3, mat4 };

            var names = new[] { "mat1", "dense_matrix_2", "s1", "sparse2" };

            if (File.Exists("testd.mat"))
            {
                File.Delete("testd.mat");
            }

            var writer = new MatlabMatrixWriter("testd.mat");

            writer.WriteMatrices(write, names);
            writer.Dispose();

            var reader = new MatlabMatrixReader <double>("testd.mat");
            var read   = reader.ReadMatrices(names);

            Assert.AreEqual(write.Length, read.Count);

            for (var i = 0; i < write.Length; i++)
            {
                var w = write[i];
                var r = read[names[i]];

                Assert.AreEqual(w.RowCount, r.RowCount);
                Assert.AreEqual(w.ColumnCount, r.ColumnCount);
                Assert.IsTrue(w.Equals(r));
            }
        }
        public void CanWriteMatrices()
        {
            Matrix mat1 = new DenseMatrix(5, 3);
            for (var i = 0; i < mat1.ColumnCount; i++)
            {
                mat1[i, i] = new Complex32(i + .1f, i + .1f);
            }

            Matrix mat2 = new DenseMatrix(4, 5);
            for (var i = 0; i < mat2.RowCount; i++)
            {
                mat2[i, i] = new Complex32(i + .1f, i + .1f);
            }

            Matrix mat3 = new SparseMatrix(5, 4);
            for (var i = 0; i < mat3.ColumnCount; i++)
            {
                mat3[i, i] = new Complex32(i + .1f, i + .1f);
            }

            Matrix mat4 = new SparseMatrix(3, 5);
            for (var i = 0; i < mat4.RowCount; i++)
            {
                mat4[i, i] = new Complex32(i + .1f, i + .1f);
            }

            var write = new[] { mat1, mat2, mat3, mat4 };

            var names = new[] { "mat1", "dense_matrix_2", "s1", "sparse2" };
            if (File.Exists("test.mat"))
            {
                File.Delete("test.mat");
            }

            var writer = new MatlabMatrixWriter("test.mat");
            writer.WriteMatrices(write, names);
            writer.Dispose();

            var reader = new MatlabMatrixReader("test.mat");
            var read = reader.ReadMatrices(names);

            Assert.AreEqual(write.Length, read.Count);

            for (var i = 0; i < write.Length; i++)
            {
                var w = write[i];
                var r = read[names[i]];

                Assert.AreEqual(w.RowCount, r.RowCount);
                Assert.AreEqual(w.ColumnCount, r.ColumnCount);
                Assert.IsTrue(w.Equals(r));
            }
        }
        public void CanWriteComplex32Matrices()
        {
            var mat1 = new LinearAlgebra.Complex32.DenseMatrix(5, 3);
            for (var i = 0; i < mat1.ColumnCount; i++)
            {
                mat1[i, i] = new Complex32(i + .1f, i + .1f);
            }

            var mat2 = new LinearAlgebra.Complex32.DenseMatrix(4, 5);
            for (var i = 0; i < mat2.RowCount; i++)
            {
                mat2[i, i] = new Complex32(i + .1f, i + .1f);
            }

            var mat3 = new LinearAlgebra.Complex32.SparseMatrix(5, 4);
            mat3[0, 0] = new Complex32(1.1f, 1.1f);
            mat3[0, 2] = new Complex32(2.2f, 2.2f);
            mat3[4, 3] = new Complex32(3.3f, 3.3f);

            var mat4 = new LinearAlgebra.Complex32.SparseMatrix(3, 5);
            mat4[0, 0] = new Complex32(1.1f, 1.1f);
            mat4[0, 2] = new Complex32(2.2f, 2.2f);
            mat4[2, 4] = new Complex32(3.3f, 3.3f);

            var write = new LinearAlgebra.Complex32.Matrix[] { mat1, mat2, mat3, mat4 };

            var names = new[] { "mat1", "dense_matrix_2", "s1", "sparse2" };
            if (File.Exists("testc.mat"))
            {
                File.Delete("testc.mat");
            }

            var writer = new MatlabMatrixWriter("testc.mat");
            writer.WriteMatrices(write, names);
            writer.Dispose();

            var reader = new MatlabMatrixReader<Complex32>("testc.mat");
            var read = reader.ReadMatrices(names);

            Assert.AreEqual(write.Length, read.Count);

            for (var i = 0; i < write.Length; i++)
            {
                var w = write[i];
                var r = read[names[i]];

                Assert.AreEqual(w.RowCount, r.RowCount);
                Assert.AreEqual(w.ColumnCount, r.ColumnCount);
                Assert.IsTrue(w.Equals(r));
            }
        }