]> https://gitweb.dealii.org/ - dealii.git/commitdiff
fix arpack/step-36_ar test to run on Ubuntu 14.04 + GNU compilers + MKL
authorDenis Davydov <davydden@gmail.com>
Thu, 17 Mar 2016 14:41:29 +0000 (15:41 +0100)
committerTimo Heister <timo.heister@gmail.com>
Mon, 4 Apr 2016 12:17:20 +0000 (08:17 -0400)
tests/arpack/step-36_ar.cc

index 52dafbd4e773bbbbcf3d880645be15a235095689..498793a7421647a8d8e93b4f862a4a2d4c4ec92c 100644 (file)
@@ -212,7 +212,7 @@ namespace Step36
   template <int dim>
   std::pair<unsigned int, double> EigenvalueProblem<dim>::solve ()
   {
-    SolverControl solver_control (dof_handler.n_dofs(), 1e-9);
+    SolverControl solver_control (dof_handler.n_dofs(), 1e-10);
     SparseDirectUMFPACK inverse;
     inverse.initialize (stiffness_matrix);
     const unsigned int num_arnoldi_vectors = 2*eigenvalues.size() + 2;
@@ -241,14 +241,22 @@ namespace Step36
                                Utilities::int_to_string(i) +
                                " and " +
                                Utilities::int_to_string(j) +
-                               " are not orthonormal!"));
+                               " are not orthonormal!"
+                               " failing norm is " +
+                               Utilities::to_string(
+                                 std::abs( eigenfunctions[j] * Bx - (i==j) )
+                               )
+                              ));
 
           stiffness_matrix.vmult(Ax,eigenfunctions[i]);
           Ax.add(-1.0*std::real(eigenvalues[i]),Bx);
           Assert (Ax.l2_norm() < 1e-8,
                   ExcMessage("Returned vector " +
                              Utilities::int_to_string(i) +
-                             " is not an eigenvector!"));
+                             " is not an eigenvector!"
+                             " L2 norm of the residual is " +
+                             Utilities::to_string(Ax.l2_norm())
+                            ));
         }
     }
     for (unsigned int i=0; i<eigenfunctions.size(); ++i)

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.