Ejemplo n.º 1
0
        public static void approx()
        {
            int[]    size = FileHelper.loadSizes(inputSize);
            MyMatrix vector;

            double[,] partial      = FileHelper.loadDataForAprox(gaussPartial);
            double[,] partialOpt   = FileHelper.loadDataForAprox(gaussPartialOpt);
            double[,] seidel       = FileHelper.loadDataForAprox(gaussSeidel);
            double[,] sparse       = FileHelper.loadDataForAprox(gaussSparseEigen);
            double[,] sparseSeidel = FileHelper.loadDataForAprox(gaussSparseSeidelEigen);
            double[] results = new double[5];
            for (int i = 0; i < size.Length; i++)
            {
                Console.WriteLine("\n\n Size : " + size[i] + "\n");
                Console.WriteLine("-------------------------GAUSS PARTIAL BEZ OPTYMALIZACJI-------------------------");
                vector     = Approximation.CountEquation(partial, 3); //Gauss Partial
                results[0] = Approximation.CountVariable(vector, size[i]);
                Console.WriteLine("\nWynik : " + results[0] + "\n");
                Console.WriteLine("-------------------------GAUSS PARTIAL Z OPTYMALIZACJA-------------------------");
                vector     = Approximation.CountEquation(partialOpt, 2); //Gaus Partial Opt
                results[1] = Approximation.CountVariable(vector, size[i]);
                Console.WriteLine("\nWynik : " + results[1] + "\n");
                Console.WriteLine("-------------------------GAUSS ITERACYJNY : SEIDEL-------------------------");
                vector     = Approximation.CountEquation(seidel, 2);  //Gauss Seidel
                results[2] = Approximation.CountVariable(vector, size[i]);
                Console.WriteLine("\nWynik : " + results[2] + "\n");
                Console.WriteLine("-------------------------GAUSS SPARSE LU EIGEN-------------------------");
                vector     = Approximation.CountEquation(sparse, 1);  //SparseLU Eigen
                results[3] = Approximation.CountVariable(vector, size[i]);
                Console.WriteLine("\nWynik : " + results[3] + "\n");
                Console.WriteLine("-------------------------GAUSS SPARSE SEIDEL EIGEN-------------------------");
                vector     = Approximation.CountEquation(sparseSeidel, 1);//Sparse Seidel Eigen
                results[4] = Approximation.CountVariable(vector, size[i]);
                Console.WriteLine("\nWynik : " + results[4] + "\n");
                FileHelper.saveStatsFromApproximations(infoApproxOutput, size[i], results);
                Console.ReadKey();
            }
        }