private static void AddDiagonalizer(IMatrixDiagonalizer diag)
        {
            Matrix x = Matrix.Identity(3);
            Matrix vals, vecs;

            try
            {
                diag.EigenValsVecs(x, out vals, out vecs);
                Diagonalizers.Add(diag);
            }
            catch (Exception e)
            {
                int j = 4;
                Console.WriteLine("Caught exception {0} while trying to initialize {1}",
                    e.GetType().Name, diag.Name);
                Console.WriteLine(e.Message);
                Console.WriteLine();
            }
        }
        private static void AddDiagonalizer(IMatrixDiagonalizer diag)
        {
            Matrix x = Matrix.Identity(3);
            Matrix vals, vecs;

            try
            {
                diag.EigenValsVecs(x, out vals, out vecs);
                Diagonalizers.Add(diag);
            }
            catch (Exception e)
            {
                int j = 4;
                Console.WriteLine("Caught exception {0} while trying to initialize {1}",
                                  e.GetType().Name, diag.Name);
                Console.WriteLine(e.Message);
                Console.WriteLine();
            }
        }