Exemplo n.º 1
0
        public double SvdzTestBig(int size)
        {
            var mat1 = new MCJCMatrix(size, size);

            var random = new Random();

            for (int i = 0; i < size; i++)
            {
                for (int j = 0; j < size; j++)
                {
                    mat1.setAt(i, j, random.NextDouble(), 0);
                }
            }

            var lib = new MLapackLib();

            Console.WriteLine("multiplication started...");

            var s  = new MCJRMatrix();
            var u  = new MCJCMatrix();
            var vt = new MCJCMatrix();

            var time = DateTime.Now;

            lib.SVDDecomposition(mat1, s, u, vt);

            double ms = (DateTime.Now - time).TotalMilliseconds;

            Console.WriteLine("time = " + ms);
            return(ms);
        }
Exemplo n.º 2
0
        public void SvdDecompositionTest()
        {
            var matrix1 = new NRealMatrix(2, 2);

            matrix1[0, 0] = 1;
            matrix1[0, 1] = 2;
            matrix1[1, 0] = 3;
            matrix1[1, 1] = 4;

            var s  = new NRealMatrix();
            var u  = new NRealMatrix();
            var vt = new NRealMatrix();

            var lib = new MLapackLib();

            lib.SVDDecomposition(matrix1.ManagedMatrix, s.ManagedMatrix, u.ManagedMatrix, vt.ManagedMatrix);

            Console.WriteLine(matrix1);
            Console.WriteLine(s);
            Console.WriteLine(u);
            Console.WriteLine(vt);
        }
Exemplo n.º 3
0
        public double SvdzTestBig(int size)
        {
            var mat1 = new MCJCMatrix(size, size);

            var random = new Random();

            for (int i = 0; i < size; i++)
            {
                for (int j = 0; j < size; j++)
                {
                    mat1.setAt(i, j, random.NextDouble(), 0);
                }
            }

            var lib = new MLapackLib();

            Console.WriteLine("multiplication started...");

            var s = new MCJRMatrix();
            var u = new MCJCMatrix();
            var vt = new MCJCMatrix();

            var time = DateTime.Now;
            lib.SVDDecomposition(mat1, s, u, vt);

            double ms = (DateTime.Now - time).TotalMilliseconds;
            Console.WriteLine("time = " + ms);
            return ms;
        }
Exemplo n.º 4
0
        public void SvdDecompositionTest()
        {
            var matrix1 = new NRealMatrix(2, 2);
            matrix1[0, 0] = 1;
            matrix1[0, 1] = 2;
            matrix1[1, 0] = 3;
            matrix1[1, 1] = 4;

            var s = new NRealMatrix();
            var u = new NRealMatrix();
            var vt = new NRealMatrix();

            var lib = new MLapackLib();

            lib.SVDDecomposition(matrix1.ManagedMatrix, s.ManagedMatrix, u.ManagedMatrix, vt.ManagedMatrix);

            Console.WriteLine(matrix1);
            Console.WriteLine(s);
            Console.WriteLine(u);
            Console.WriteLine(vt);
        }
Exemplo n.º 5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="a"></param>
 /// <param name="s"></param>
 /// <param name="u"></param>
 /// <param name="vt"></param>
 public void SvdDecomposition(NRealMatrix a, NRealMatrix s, NRealMatrix u, NRealMatrix vt)
 {
     _lib.SVDDecomposition(a.ManagedMatrix, s.ManagedMatrix, u.ManagedMatrix, vt.ManagedMatrix);
 }