]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Integrate hessians on cells 12625/head
authorMaximilian Bergbauer <bergbauer@lnm.mw.tum.de>
Thu, 5 Aug 2021 15:40:53 +0000 (17:40 +0200)
committerMaximilian Bergbauer <bergbauer@lnm.mw.tum.de>
Tue, 10 Aug 2021 09:43:47 +0000 (11:43 +0200)
doc/news/changes/minor/20210728MaximilianBergbauer
include/deal.II/matrix_free/evaluation_kernels.h
tests/matrix_free/matrix_vector_hessians_cells.cc [new file with mode: 0644]
tests/matrix_free/matrix_vector_hessians_cells.output [new file with mode: 0644]

index 91300d90ccab725da466d53de2a79da926ef0128..1ccf8c26f87549caa9b6b1d5b2f47671f2daec8e 100644 (file)
@@ -1,4 +1,4 @@
-Added: Evaluation and integration of hessians on faces is now available
- in the matrix free framework.
+Added: Evaluation and integration of hessians both on cells and on faces is now
+available in the matrix-free framework.
 <br>
 (Maximilian Bergbauer, 2021/07/28)
index 403539205e5f5a7779ef333742a351b255085eb2..ab10f44ba84a03b6aa4bcfaeab41e29cee47d550 100644 (file)
@@ -468,11 +468,6 @@ namespace internal
     Number *                                      scratch_data,
     const bool                                    add_into_values_array)
   {
-    // TODO: implement hessians
-    (void)hessians_quad;
-    AssertThrow(!(integration_flag & EvaluationFlags::hessians),
-                ExcNotImplemented());
-
     const EvaluatorVariant variant =
       EvaluatorSelector<type, (fe_degree + n_q_points_1d > 4)>::variant;
     using Eval = EvaluatorTensorProduct<variant,
@@ -549,11 +544,23 @@ namespace internal
                     eval.template gradients<0, false, false>(gradients_quad,
                                                              values_dofs);
                 }
+              if (integration_flag & EvaluationFlags::hessians)
+                {
+                  if (integration_flag & EvaluationFlags::values ||
+                      integration_flag & EvaluationFlags::gradients ||
+                      add_into_values_array == true)
+                    eval.template hessians<0, false, true>(hessians_quad,
+                                                           values_dofs);
+                  else
+                    eval.template hessians<0, false, false>(hessians_quad,
+                                                            values_dofs);
+                }
 
               // advance to the next component in 1D array
               values_dofs += dofs_per_comp;
               values_quad += n_q_points;
               gradients_quad += n_q_points;
+              hessians_quad += n_q_points;
             }
           break;
 
@@ -583,11 +590,36 @@ namespace internal
                   eval.template values<1, false, false>(gradients_quad, temp1);
                   eval.template gradients<0, false, true>(temp1, values_dofs);
                 }
+              if (integration_flag & EvaluationFlags::hessians)
+                {
+                  // grad xx
+                  eval.template values<1, false, false>(hessians_quad, temp1);
+
+                  if (integration_flag & EvaluationFlags::values ||
+                      integration_flag & EvaluationFlags::gradients ||
+                      add_into_values_array == true)
+                    eval.template hessians<0, false, true>(temp1, values_dofs);
+                  else
+                    eval.template hessians<0, false, false>(temp1, values_dofs);
+
+                  // grad yy
+                  eval.template hessians<1, false, false>(hessians_quad +
+                                                            n_q_points,
+                                                          temp1);
+                  eval.template values<0, false, true>(temp1, values_dofs);
+
+                  // grad xy
+                  eval.template gradients<1, false, false>(hessians_quad +
+                                                             2 * n_q_points,
+                                                           temp1);
+                  eval.template gradients<0, false, true>(temp1, values_dofs);
+                }
 
               // advance to the next component in 1D array
               values_dofs += dofs_per_comp;
               values_quad += n_q_points;
               gradients_quad += 2 * n_q_points;
+              hessians_quad += 3 * n_q_points;
             }
           break;
 
@@ -624,11 +656,60 @@ namespace internal
                   eval.template values<1, false, false>(temp1, temp2);
                   eval.template gradients<0, false, true>(temp2, values_dofs);
                 }
+              if (integration_flag & EvaluationFlags::hessians)
+                {
+                  // grad xx
+                  eval.template values<2, false, false>(hessians_quad, temp1);
+                  eval.template values<1, false, false>(temp1, temp2);
+
+                  if (integration_flag & EvaluationFlags::values ||
+                      integration_flag & EvaluationFlags::gradients ||
+                      add_into_values_array == true)
+                    eval.template hessians<0, false, true>(temp2, values_dofs);
+                  else
+                    eval.template hessians<0, false, false>(temp2, values_dofs);
+
+                  // grad yy
+                  eval.template values<2, false, false>(hessians_quad +
+                                                          n_q_points,
+                                                        temp1);
+                  eval.template hessians<1, false, false>(temp1, temp2);
+                  eval.template values<0, false, true>(temp2, values_dofs);
+
+                  // grad zz
+                  eval.template hessians<2, false, false>(hessians_quad +
+                                                            2 * n_q_points,
+                                                          temp1);
+                  eval.template values<1, false, false>(temp1, temp2);
+                  eval.template values<0, false, true>(temp2, values_dofs);
+
+                  // grad xy
+                  eval.template values<2, false, false>(hessians_quad +
+                                                          3 * n_q_points,
+                                                        temp1);
+                  eval.template gradients<1, false, false>(temp1, temp2);
+                  eval.template gradients<0, false, true>(temp2, values_dofs);
+
+                  // grad xz
+                  eval.template gradients<2, false, false>(hessians_quad +
+                                                             4 * n_q_points,
+                                                           temp1);
+                  eval.template values<1, false, false>(temp1, temp2);
+                  eval.template gradients<0, false, true>(temp2, values_dofs);
+
+                  // grad yz
+                  eval.template gradients<2, false, false>(hessians_quad +
+                                                             5 * n_q_points,
+                                                           temp1);
+                  eval.template gradients<1, false, false>(temp1, temp2);
+                  eval.template values<0, false, true>(temp2, values_dofs);
+                }
 
               // advance to the next component in 1D array
               values_dofs += dofs_per_comp;
               values_quad += n_q_points;
               gradients_quad += 3 * n_q_points;
+              hessians_quad += 6 * n_q_points;
             }
           break;
 
@@ -1374,15 +1455,9 @@ namespace internal
     Number *                                      values_quad,
     Number *                                      gradients_quad,
     Number *                                      hessians_quad,
-    Number *,
-    const bool add_into_values_array)
+    Number *                                      scratch_data,
+    const bool                                    add_into_values_array)
   {
-    // TODO: implement hessians
-    (void)hessians_quad;
-    AssertThrow(!(integration_flag & EvaluationFlags::hessians),
-                ExcNotImplemented());
-
-
     AssertDimension(
       shape_info.data.front().shape_gradients_collocation_eo.size(),
       (fe_degree + 2) / 2 * (fe_degree + 1));
@@ -1396,6 +1471,7 @@ namespace internal
            shape_info.data.front().shape_gradients_collocation_eo,
            shape_info.data.front().shape_hessians_collocation_eo);
     constexpr unsigned int n_q_points = Utilities::pow(fe_degree + 1, dim);
+    constexpr unsigned int hdim       = (dim * (dim + 1)) / 2;
 
     for (unsigned int c = 0; c < n_components; c++)
       {
@@ -1426,6 +1502,60 @@ namespace internal
                                                         2 * n_q_points,
                                                       values_dofs);
           }
+        if (integration_flag & EvaluationFlags::hessians)
+          {
+            // diagonal
+            // grad xx
+            if (integration_flag & EvaluationFlags::values ||
+                integration_flag & EvaluationFlags::gradients ||
+                add_into_values_array == true)
+              eval.template hessians<0, false, true>(hessians_quad,
+                                                     values_dofs);
+            else
+              eval.template hessians<0, false, false>(hessians_quad,
+                                                      values_dofs);
+            // grad yy
+            if (dim > 1)
+              eval.template hessians<1, false, true>(hessians_quad + n_q_points,
+                                                     values_dofs);
+            // grad zz
+            if (dim > 2)
+              eval.template hessians<2, false, true>(hessians_quad +
+                                                       2 * n_q_points,
+                                                     values_dofs);
+            // off-diagonal
+            if (dim == 2)
+              {
+                // grad xy
+                eval.template gradients<0, false, false>(hessians_quad +
+                                                           2 * n_q_points,
+                                                         scratch_data);
+                eval.template gradients<1, false, true>(scratch_data,
+                                                        values_dofs);
+              }
+            if (dim == 3)
+              {
+                // grad xy
+                eval.template gradients<0, false, false>(hessians_quad +
+                                                           3 * n_q_points,
+                                                         scratch_data);
+                eval.template gradients<1, false, true>(scratch_data,
+                                                        values_dofs);
+                // grad xz
+                eval.template gradients<0, false, false>(hessians_quad +
+                                                           4 * n_q_points,
+                                                         scratch_data);
+                eval.template gradients<2, false, true>(scratch_data,
+                                                        values_dofs);
+                // grad yz
+                eval.template gradients<1, false, false>(hessians_quad +
+                                                           5 * n_q_points,
+                                                         scratch_data);
+                eval.template gradients<2, false, true>(scratch_data,
+                                                        values_dofs);
+              }
+            hessians_quad += hdim * n_q_points;
+          }
         gradients_quad += dim * n_q_points;
         values_quad += n_q_points;
         values_dofs += n_q_points;
@@ -1539,11 +1669,11 @@ namespace internal
     Number>::integrate(const unsigned int                     n_components,
                        const EvaluationFlags::EvaluationFlags integration_flag,
                        const MatrixFreeFunctions::ShapeInfo<Number> &shape_info,
-                       Number *values_dofs,
-                       Number *values_quad,
-                       Number *gradients_quad,
-                       Number *hessians_quad,
-                       Number *,
+                       Number *   values_dofs,
+                       Number *   values_quad,
+                       Number *   gradients_quad,
+                       Number *   hessians_quad,
+                       Number *   scratch_data,
                        const bool add_into_values_array)
   {
     Assert(n_q_points_1d > fe_degree,
@@ -1555,11 +1685,13 @@ namespace internal
       shape_info.data.front().shape_gradients_collocation_eo.size(),
       (n_q_points_1d + 1) / 2 * n_q_points_1d);
     constexpr unsigned int n_q_points = Utilities::pow(n_q_points_1d, dim);
+    constexpr unsigned int hdim       = (dim * (dim + 1)) / 2;
 
     for (unsigned int c = 0; c < n_components; c++)
       {
         // apply derivatives in collocation space
-        if (integration_flag & EvaluationFlags::gradients)
+        if (integration_flag &
+            (EvaluationFlags::gradients | EvaluationFlags::hessians))
           FEEvaluationImplCollocation<dim, n_q_points_1d - 1, Number>::
             integrate(1,
                       integration_flag & (EvaluationFlags::gradients |
@@ -1569,7 +1701,7 @@ namespace internal
                       nullptr,
                       gradients_quad,
                       hessians_quad,
-                      nullptr,
+                      scratch_data,
                       /*add_into_values_array=*/integration_flag &
                         EvaluationFlags::values);
 
@@ -1586,6 +1718,7 @@ namespace internal
                                add_into_values_array,
                                values_quad,
                                values_dofs);
+        hessians_quad += hdim * n_q_points;
         gradients_quad += dim * n_q_points;
         values_quad += n_q_points;
         values_dofs += shape_info.dofs_per_component_on_cell;
diff --git a/tests/matrix_free/matrix_vector_hessians_cells.cc b/tests/matrix_free/matrix_vector_hessians_cells.cc
new file mode 100644 (file)
index 0000000..11b803e
--- /dev/null
@@ -0,0 +1,322 @@
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2013 - 2021 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+
+#include <deal.II/base/logstream.h>
+
+#include <deal.II/distributed/tria.h>
+
+#include <deal.II/dofs/dof_handler.h>
+
+#include <deal.II/fe/fe_dgq.h>
+#include <deal.II/fe/fe_q.h>
+#include <deal.II/fe/fe_values.h>
+#include <deal.II/fe/mapping_q_generic.h>
+
+#include <deal.II/grid/grid_generator.h>
+
+#include <deal.II/lac/affine_constraints.h>
+#include <deal.II/lac/la_parallel_vector.h>
+
+#include <deal.II/matrix_free/fe_evaluation.h>
+
+#include <deal.II/numerics/vector_tools.h>
+
+#include "../tests.h"
+
+// Tests if applying a matrix vector product with a matrix containing hessians
+// on faces produces the same result with FEEvaluation and FEValues.
+// This is checked for different combinations of EvaluationFlags, FE types and
+// polynomial degrees.
+
+template <int dim>
+void
+test_hessians(const dealii::FE_Poly<dim> &                   fe,
+              const dealii::Quadrature<dim> &                quad,
+              const dealii::EvaluationFlags::EvaluationFlags evaluation_flags)
+{
+  using namespace dealii;
+  using VectorizedArrayType = VectorizedArray<double>;
+
+  Triangulation<dim> tria;
+  GridGenerator::hyper_cube(tria);
+  tria.refine_global(3);
+
+  // TODO: make Hessians work for adaptive refinement
+
+  //  unsigned int counter = 0;
+  //  for (auto cell = tria.begin_active(); cell != tria.end(); ++cell,
+  //  ++counter)
+  //    if (cell->is_locally_owned() && counter % 3 == 0)
+  //      cell->set_refine_flag();
+  //  tria.execute_coarsening_and_refinement();
+
+  DoFHandler<dim> dof_handler(tria);
+  dof_handler.distribute_dofs(fe);
+  MappingQGeneric<dim> mapping(1);
+
+  AffineConstraints<double> constraints;
+  VectorTools::interpolate_boundary_values(
+    mapping, dof_handler, 0, Functions::ZeroFunction<dim>(), constraints);
+  constraints.close();
+
+  // FEEvaluation
+  typename MatrixFree<dim, double, VectorizedArrayType>::AdditionalData
+    additional_data;
+  additional_data.mapping_update_flags_inner_faces =
+    update_values | update_gradients | update_hessians;
+
+  MatrixFree<dim, double, VectorizedArrayType> matrix_free;
+  matrix_free.reinit(mapping, dof_handler, constraints, quad, additional_data);
+
+  if (Utilities::MPI::this_mpi_process(MPI_COMM_WORLD) == 0)
+    deallog << "Working with " << fe.get_name() << " and "
+            << dof_handler.n_dofs() << " dofs" << std::endl;
+
+  LinearAlgebra::distributed::Vector<double> src, dst, dst2;
+  matrix_free.initialize_dof_vector(src);
+  for (auto &v : src)
+    v = random_value<double>();
+
+  matrix_free.initialize_dof_vector(dst);
+  matrix_free.initialize_dof_vector(dst2);
+
+  // Setup FEFaceValues
+  FEValues<dim>                        fe_values(mapping,
+                          fe,
+                          quad,
+                          update_values | update_gradients | update_hessians |
+                            update_JxW_values);
+  Vector<double>                       solution_values_local(fe.dofs_per_cell);
+  std::vector<Tensor<2, dim>>          solution_hessians(quad.size());
+  std::vector<Tensor<1, dim>>          solution_gradients(quad.size());
+  std::vector<double>                  solution_values(quad.size());
+  std::vector<types::global_dof_index> dof_indices(fe.dofs_per_cell);
+  src.update_ghost_values();
+  dst2 = 0;
+
+
+
+  matrix_free.template loop<LinearAlgebra::distributed::Vector<double>,
+                            LinearAlgebra::distributed::Vector<double>>(
+    [&](
+      const auto &matrix_free, auto &dst, const auto &src, const auto &range) {
+      FEEvaluation<dim, -1, 0, 1, double, VectorizedArrayType> fe_eval(
+        matrix_free);
+      for (unsigned int cell = range.first; cell < range.second; ++cell)
+        {
+          // FEEvaluation
+          fe_eval.reinit(cell);
+          fe_eval.gather_evaluate(src, evaluation_flags);
+          for (unsigned int q = 0; q < fe_eval.n_q_points; ++q)
+            {
+              if (evaluation_flags & EvaluationFlags::hessians)
+                fe_eval.submit_hessian(fe_eval.get_hessian(q), q);
+              if (evaluation_flags & EvaluationFlags::gradients)
+                fe_eval.submit_gradient(fe_eval.get_gradient(q), q);
+              if (evaluation_flags & EvaluationFlags::values)
+                fe_eval.submit_value(fe_eval.get_value(q), q);
+            }
+          fe_eval.integrate(evaluation_flags);
+          fe_eval.distribute_local_to_global(dst);
+
+          // FEValues
+          for (unsigned int v = 0;
+               v < matrix_free.n_active_entries_per_cell_batch(cell);
+               ++v)
+            {
+              const auto cell_iterator = matrix_free.get_cell_iterator(cell, v);
+
+              fe_values.reinit(cell_iterator);
+
+              cell_iterator->get_dof_indices(dof_indices);
+              constraints.get_dof_values(src,
+                                         dof_indices.begin(),
+                                         solution_values_local.begin(),
+                                         solution_values_local.end());
+
+              for (unsigned int q = 0; q < quad.size(); ++q)
+                {
+                  double         values = 0.;
+                  Tensor<1, dim> gradients;
+                  Tensor<2, dim> hessians;
+                  for (unsigned int i = 0; i < fe.dofs_per_cell; ++i)
+                    {
+                      if (evaluation_flags & EvaluationFlags::hessians)
+                        hessians += solution_values_local(i) *
+                                    fe_values.shape_hessian(i, q);
+                      if (evaluation_flags & EvaluationFlags::gradients)
+                        gradients +=
+                          solution_values_local(i) * fe_values.shape_grad(i, q);
+                      if (evaluation_flags & EvaluationFlags::values)
+                        values += solution_values_local(i) *
+                                  fe_values.shape_value(i, q);
+                    }
+                  solution_hessians[q]  = hessians * fe_values.JxW(q);
+                  solution_gradients[q] = gradients * fe_values.JxW(q);
+                  solution_values[q]    = values * fe_values.JxW(q);
+                }
+              for (unsigned int i = 0; i < fe.dofs_per_cell; ++i)
+                {
+                  double sum_hessians  = 0.;
+                  double sum_gradients = 0.;
+                  double sum_values    = 0.;
+                  for (unsigned int q = 0; q < quad.size(); ++q)
+                    {
+                      if (evaluation_flags & EvaluationFlags::hessians)
+                        sum_hessians += double_contract<0, 0, 1, 1>(
+                          solution_hessians[q], fe_values.shape_hessian(i, q));
+                      if (evaluation_flags & EvaluationFlags::gradients)
+                        sum_gradients +=
+                          solution_gradients[q] * fe_values.shape_grad(i, q);
+                      if (evaluation_flags & EvaluationFlags::values)
+                        sum_values +=
+                          solution_values[q] * fe_values.shape_value(i, q);
+                    }
+                  solution_values_local(i) =
+                    sum_hessians + sum_gradients + sum_values;
+                }
+              constraints.distribute_local_to_global(solution_values_local,
+                                                     dof_indices,
+                                                     dst2);
+            }
+        }
+    },
+    [&](
+      const auto &matrix_free, auto &dst, const auto &src, const auto &range) {
+      (void)matrix_free;
+      (void)dst;
+      (void)src;
+      (void)range;
+    },
+    [&](
+      const auto &matrix_free, auto &dst, const auto &src, const auto &range) {
+      (void)matrix_free;
+      (void)dst;
+      (void)src;
+      (void)range;
+    },
+    dst,
+    src,
+    true);
+
+  const unsigned int end_of_print_dst =
+    dof_handler.n_dofs() > 9 ? 9 : dof_handler.n_dofs();
+
+  deallog << "dst FEE: ";
+  for (unsigned int i = 0; i < end_of_print_dst; ++i)
+    deallog << dst[i] << " ";
+  deallog << std::endl;
+
+  deallog << "dst FEV: ";
+  for (unsigned int i = 0; i < end_of_print_dst; ++i)
+    deallog << dst2[i] << " ";
+  deallog << std::endl;
+
+  // compare solutions of matrix vector product
+  {
+    dst2 -= dst;
+
+    double error = 0.;
+    if (dst.l2_norm() > 0)
+      error = dst2.l2_norm() / dst.l2_norm();
+    else
+      error = dst2.l2_norm();
+
+    if (Utilities::MPI::this_mpi_process(MPI_COMM_WORLD) == 0)
+      deallog << "FEValues verification: " << error << std::endl << std::endl;
+  }
+}
+
+void
+test_qiterated(dealii::EvaluationFlags::EvaluationFlags evaluation_flags)
+{
+  using namespace dealii;
+  deallog << "test_qiterated" << std::endl;
+  for (unsigned int i = 1; i < 4; ++i)
+    {
+      QIterated<1> quad_1(QGauss<1>(i + 1), 2);
+      QIterated<2> quad_2(QGauss<1>(i + 1), 2);
+      QIterated<3> quad_3(QGauss<1>(i + 1), 2);
+      test_hessians<1>(FE_Q<1>(i), quad_1, evaluation_flags);
+      test_hessians<2>(FE_Q<2>(i), quad_2, evaluation_flags);
+      test_hessians<3>(FE_Q<3>(i), quad_3, evaluation_flags);
+      test_hessians<1>(FE_DGQ<1>(i), quad_1, evaluation_flags);
+      test_hessians<2>(FE_DGQ<2>(i), quad_2, evaluation_flags);
+      test_hessians<3>(FE_DGQ<3>(i), quad_3, evaluation_flags);
+    }
+}
+
+void
+test_qgauss(dealii::EvaluationFlags::EvaluationFlags evaluation_flags)
+{
+  using namespace dealii;
+  deallog << "test_qgauss" << std::endl;
+  for (unsigned int i = 1; i < 4; ++i)
+    {
+      QGauss<1> quad_1(i + 1);
+      QGauss<2> quad_2(i + 1);
+      QGauss<3> quad_3(i + 1);
+      test_hessians<1>(FE_Q<1>(i), quad_1, evaluation_flags);
+      test_hessians<2>(FE_Q<2>(i), quad_2, evaluation_flags);
+      test_hessians<3>(FE_Q<3>(i), quad_3, evaluation_flags);
+      test_hessians<1>(FE_DGQ<1>(i), quad_1, evaluation_flags);
+      test_hessians<2>(FE_DGQ<2>(i), quad_2, evaluation_flags);
+      test_hessians<3>(FE_DGQ<3>(i), quad_3, evaluation_flags);
+    }
+}
+
+int
+main(int argc, char **argv)
+{
+  using namespace dealii;
+  Utilities::MPI::MPI_InitFinalize mpi(argc, argv, 1);
+
+  initlog();
+  deallog << std::setprecision(10);
+
+  {
+    EvaluationFlags::EvaluationFlags evaluation_flags =
+      EvaluationFlags::hessians;
+    deallog << "test_hessians_only" << std::endl;
+    test_qgauss(evaluation_flags);
+    test_qiterated(evaluation_flags);
+  }
+
+  {
+    EvaluationFlags::EvaluationFlags evaluation_flags =
+      EvaluationFlags::values | EvaluationFlags::hessians;
+    deallog << "test_hessians_with_values" << std::endl;
+    test_qgauss(evaluation_flags);
+    test_qiterated(evaluation_flags);
+  }
+
+  {
+    EvaluationFlags::EvaluationFlags evaluation_flags =
+      EvaluationFlags::gradients | EvaluationFlags::hessians;
+    deallog << "test_hessians_with_gradients" << std::endl;
+    test_qgauss(evaluation_flags);
+    test_qiterated(evaluation_flags);
+  }
+
+  {
+    EvaluationFlags::EvaluationFlags evaluation_flags =
+      EvaluationFlags::values | EvaluationFlags::gradients |
+      EvaluationFlags::hessians;
+    deallog << "test_hessians_with_gradients_and_values" << std::endl;
+    test_qgauss(evaluation_flags);
+    test_qiterated(evaluation_flags);
+  }
+}
diff --git a/tests/matrix_free/matrix_vector_hessians_cells.output b/tests/matrix_free/matrix_vector_hessians_cells.output
new file mode 100644 (file)
index 0000000..fe668b8
--- /dev/null
@@ -0,0 +1,733 @@
+
+DEAL::test_hessians_only
+DEAL::test_qgauss
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -127.9293550 0.000000000 154.0814910 0.000000000 84.32838283 133.7460355 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -127.9293550 0.000000000 154.0814910 0.000000000 84.32838283 133.7460355 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 63.80267270 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 63.80267270 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: 11.67296643 -11.67296643 -11.67296643 11.67296643 45.66021385 -45.66021385 -45.66021385 45.66021385 -73.78028658 
+DEAL::dst FEV: 11.67296643 -11.67296643 -11.67296643 11.67296643 45.66021385 -45.66021385 -45.66021385 45.66021385 -73.78028658 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -2.614206237 5.261104676 -2.640250729 -0.006647709760 1.422705614 -4.069604052 3.831751352 -1.184852914 -5.754533413 
+DEAL::dst FEV: -2.614206237 5.261104676 -2.640250729 -0.006647709760 1.422705614 -4.069604052 3.831751352 -1.184852914 -5.754533413 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 3701.751955 2027.739533 10913.28312 -9431.243443 5858.851214 -12395.32281 6277.767337 677.6203769 
+DEAL::dst FEV: 0.000000000 3701.751955 2027.739533 10913.28312 -9431.243443 5858.851214 -12395.32281 6277.767337 677.6203769 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -818.7652426 0.000000000 -1130.630042 0.000000000 2586.249308 804.8668216 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -818.7652426 0.000000000 -1130.630042 0.000000000 2586.249308 804.8668216 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 194.3540325 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 194.3540325 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: -7171.305568 14342.61114 -7171.305568 -8136.233040 16272.46608 -8136.233040 -8257.416119 16514.83224 -8257.416119 
+DEAL::dst FEV: -7171.305568 14342.61114 -7171.305568 -8136.233040 16272.46608 -8136.233040 -8257.416119 16514.83224 -8257.416119 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: -246.9400409 483.9173459 -420.5272225 -1221.020373 2364.748221 -776.6280129 606.3810345 -1125.506808 335.5758556 
+DEAL::dst FEV: -246.9400409 483.9173459 -420.5272225 -1221.020373 2364.748221 -776.6280129 606.3810345 -1125.506808 335.5758556 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 0.9645025353 -83.48134208 -13.49648544 -22.71511505 150.6031730 -13.09151993 17.75881275 28.20324901 -10.59177112 
+DEAL::dst FEV: 0.9645025353 -83.48134208 -13.49648544 -22.71511505 150.6031730 -13.09151993 17.75881275 28.20324901 -10.59177112 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 -26012.67623 7373.847004 -2148.330111 -37951.71247 37632.59576 -6158.113806 -34302.57442 67073.93896 
+DEAL::dst FEV: 0.000000000 -26012.67623 7373.847004 -2148.330111 -37951.71247 37632.59576 -6158.113806 -34302.57442 67073.93896 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -8711.575955 0.000000000 0.000000000 4578.290589 -582.5107109 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -8711.575955 0.000000000 0.000000000 4578.290589 -582.5107109 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 258.5339016 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 258.5339016 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -29417.01997 57418.35646 -43891.43069 15890.09420 14197.33298 -19700.97296 211.3835627 5292.256422 -1845.077660 
+DEAL::dst FEV: -29417.01997 57418.35646 -43891.43069 15890.09420 14197.33298 -19700.97296 211.3835627 5292.256422 -1845.077660 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -199.1105545 5202.503832 -42.38327426 -2209.823030 301.4836139 -9716.062459 -87.01586410 4988.625059 658.1798646 
+DEAL::dst FEV: -199.1105545 5202.503832 -42.38327426 -2209.823030 301.4836139 -9716.062459 -87.01586410 4988.625059 658.1798646 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: 31.31669205 -216.6551482 20.53363137 23.18995604 -164.8413137 390.9687342 -189.5324193 65.24097904 -95.00149594 
+DEAL::dst FEV: 31.31669205 -216.6551482 20.53363137 23.18995604 -164.8413137 390.9687342 -189.5324193 65.24097904 -95.00149594 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_qiterated
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 61.06851151 0.000000000 96.11462228 0.000000000 -116.8995079 -12.89516104 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 61.06851151 0.000000000 96.11462228 0.000000000 -116.8995079 -12.89516104 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 77.46103853 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 77.46103853 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: -35.59919770 35.59919770 35.59919770 -35.59919770 -62.96445945 62.96445945 62.96445945 -62.96445945 -107.4961750 
+DEAL::dst FEV: -35.59919770 35.59919770 35.59919770 -35.59919770 -62.96445945 62.96445945 62.96445945 -62.96445945 -107.4961750 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: 0.4640046360 9.591773336 -11.90507150 1.849293523 2.815061526 -12.87083950 8.626005333 1.429772638 3.201127445 
+DEAL::dst FEV: 0.4640046360 9.591773336 -11.90507150 1.849293523 2.815061526 -12.87083950 8.626005333 1.429772638 3.201127445 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -17619.08934 28692.37337 -6112.352588 6545.805324 -2460.613176 5678.899852 -6850.766334 -757.6735004 
+DEAL::dst FEV: 0.000000000 -17619.08934 28692.37337 -6112.352588 6545.805324 -2460.613176 5678.899852 -6850.766334 -757.6735004 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 425.7623949 0.000000000 1898.143502 0.000000000 -1617.248091 -955.8877448 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 425.7623949 0.000000000 1898.143502 0.000000000 -1617.248091 -955.8877448 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 71.33872414 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 71.33872414 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 5976.710994 -11953.42199 5976.710994 -6011.852313 12023.70463 -6011.852313 3451.585874 -6903.171749 3451.585874 
+DEAL::dst FEV: 5976.710994 -11953.42199 5976.710994 -6011.852313 12023.70463 -6011.852313 3451.585874 -6903.171749 3451.585874 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: 156.4243704 -808.0304789 -266.1433378 595.1771930 176.3559854 1063.965714 -668.1155422 464.7024510 -714.3363550 
+DEAL::dst FEV: 156.4243704 -808.0304789 -266.1433378 595.1771930 176.3559854 1063.965714 -668.1155422 464.7024510 -714.3363550 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 30.33809534 -36.31160922 -11.90361804 -45.48618308 83.20462730 12.85337493 -1.261033126 34.72304390 -22.23773260 
+DEAL::dst FEV: 30.33809534 -36.31160922 -11.90361804 -45.48618308 83.20462730 12.85337493 -1.261033126 34.72304390 -22.23773260 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 11074.20622 49908.83517 -27827.19500 -68338.30751 -5533.238340 -2636.941317 39792.60975 154207.3278 
+DEAL::dst FEV: 0.000000000 11074.20622 49908.83517 -27827.19500 -68338.30751 -5533.238340 -2636.941317 39792.60975 154207.3278 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -1821.834310 0.000000000 0.000000000 8001.078855 -1268.826260 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -1821.834310 0.000000000 0.000000000 8001.078855 -1268.826260 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -323.0724519 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -323.0724519 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -12463.68287 29930.65779 -33265.45117 15798.47624 28290.25342 -73071.20779 88947.80716 -44166.85280 4988.155049 
+DEAL::dst FEV: -12463.68287 29930.65779 -33265.45117 15798.47624 28290.25342 -73071.20779 88947.80716 -44166.85280 4988.155049 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -807.0209044 2853.159375 -4882.540805 1106.642415 6114.725101 -13905.88839 15187.03616 -4038.152398 2404.623978 
+DEAL::dst FEV: -807.0209044 2853.159375 -4882.540805 1106.642415 6114.725101 -13905.88839 15187.03616 -4038.152398 2404.623978 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: -44.54098000 244.9472478 14.27472566 43.19749190 233.8675048 -547.6134590 64.05882808 -63.18582255 -104.9290560 
+DEAL::dst FEV: -44.54098000 244.9472478 14.27472566 43.19749190 233.8675048 -547.6134590 64.05882808 -63.18582255 -104.9290560 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_hessians_with_values
+DEAL::test_qgauss
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 0.07533072737 0.07169966772 0.03236104823 0.02437364613 0.06109759730 0.07586513714 0.06903024341 0.04752641561 
+DEAL::dst FEV: 0.000000000 0.07533072737 0.07169966772 0.03236104823 0.02437364613 0.06109759730 0.07586513714 0.06903024341 0.04752641561 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 26.61661902 0.000000000 135.3795136 0.000000000 -327.8728797 233.3875868 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 26.61661902 0.000000000 135.3795136 0.000000000 -327.8728797 233.3875868 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -43.24108840 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -43.24108840 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 0.02372871043 0.02045319802 0.01543810553 0.01995724619 0.01257695326 0.007036009797 0.01271888141 0.01624413326 0.02323035711 
+DEAL::dst FEV: 0.02372871043 0.02045319802 0.01543810553 0.01995724619 0.01257695326 0.007036009797 0.01271888141 0.01624413326 0.02323035711 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: -73.16266016 73.16638121 73.16590855 -73.16305344 -15.18355600 15.18746577 15.18720571 -15.18280418 15.70953754 
+DEAL::dst FEV: -73.16266016 73.16638121 73.16590855 -73.16305344 -15.18355600 15.18746577 15.18720571 -15.18280418 15.70953754 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -1.346173567 6.826728616 4.968556719 -10.44852194 -1.355632112 -4.124393895 -2.266237208 7.746785570 -7.353628950 
+DEAL::dst FEV: -1.346173567 6.826728616 4.968556719 -10.44852194 -1.355632112 -4.124393895 -2.266237208 7.746785570 -7.353628950 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -4498.284181 23621.79745 739.6489061 -14625.12312 -16547.50159 13145.95484 -16314.38960 19949.21199 
+DEAL::dst FEV: 0.000000000 -4498.284181 23621.79745 739.6489061 -14625.12312 -16547.50159 13145.95484 -16314.38960 19949.21199 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -116.1757197 0.000000000 -501.5910060 0.000000000 1482.712457 972.2108828 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -116.1757197 0.000000000 -501.5910060 0.000000000 1482.712457 972.2108828 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 62.18496598 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 62.18496598 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 1209.932121 -2419.845917 1209.931599 -3562.432735 7124.960388 -3562.426615 9934.440610 -19868.85719 9934.447817 
+DEAL::dst FEV: 1209.932121 -2419.845917 1209.931599 -3562.432735 7124.960388 -3562.426615 9934.440610 -19868.85719 9934.447817 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: 330.2763419 -1043.381307 224.5922367 -1671.182302 4389.577468 -1741.357976 510.6052227 -1685.584522 686.4649866 
+DEAL::dst FEV: 330.2763419 -1043.381307 224.5922367 -1671.182302 4389.577468 -1741.357976 510.6052227 -1685.584522 686.4649866 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 15.40569903 10.62675301 33.37795976 66.84270365 -260.0568909 20.23851913 11.19045929 34.36226117 17.95441991 
+DEAL::dst FEV: 15.40569903 10.62675301 33.37795976 66.84270365 -260.0568909 20.23851913 11.19045929 34.36226117 17.95441991 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 60597.85449 64615.17149 -72292.98434 -5336.277017 -54320.65832 47618.65435 -20295.26891 -38845.40163 
+DEAL::dst FEV: 0.000000000 60597.85449 64615.17149 -72292.98434 -5336.277017 -54320.65832 47618.65435 -20295.26891 -38845.40163 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -9458.399644 0.000000000 0.000000000 -1902.852552 9624.949240 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -9458.399644 0.000000000 0.000000000 -1902.852552 9624.949240 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -270.3721403 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -270.3721403 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: 66324.91610 -130775.3923 102408.6931 -37958.16022 -31726.46905 52519.54061 -22710.37345 1917.367332 -81451.15923 
+DEAL::dst FEV: 66324.91610 -130775.3923 102408.6931 -37958.16022 -31726.46905 52519.54061 -22710.37345 1917.367332 -81451.15923 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -253.1009249 -2470.635283 4396.142993 -102.9209787 5042.265345 -5035.127370 623.7141931 -4170.435269 -5908.716935 
+DEAL::dst FEV: -253.1009249 -2470.635283 4396.142993 -102.9209787 5042.265345 -5035.127370 623.7141931 -4170.435269 -5908.716935 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: 26.65407054 52.32780014 98.93218307 -6.178707569 -2.782097316 87.09444900 -634.7119925 126.7337128 -63.56390158 
+DEAL::dst FEV: 26.65407054 52.32780014 98.93218307 -6.178707569 -2.782097316 87.09444900 -634.7119925 126.7337128 -63.56390158 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_qiterated
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 0.03258029588 0.07222189665 0.08482954761 0.09148637287 0.09449454856 0.06558254932 0.04744151107 0.02219960664 
+DEAL::dst FEV: 0.000000000 0.03258029588 0.07222189665 0.08482954761 0.09148637287 0.09449454856 0.06558254932 0.04744151107 0.02219960664 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 383.5209684 0.000000000 -239.8015956 0.000000000 -430.1385619 389.3705448 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 383.5209684 0.000000000 -239.8015956 0.000000000 -430.1385619 389.3705448 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 13.40730240 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 13.40730240 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 0.04270326588 0.02991348334 0.04397389235 0.04570551005 0.01695506299 0.01957200530 0.03813752139 0.02515257462 0.01772381891 
+DEAL::dst FEV: 0.04270326588 0.02991348334 0.04397389235 0.04570551005 0.01695506299 0.01957200530 0.03813752139 0.02515257462 0.01772381891 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: 94.92670838 -94.92477169 -94.92445826 94.92771425 -69.59932778 69.60356939 69.60251597 -69.59998891 -3.408132604 
+DEAL::dst FEV: 94.92670838 -94.92477169 -94.92445826 94.92771425 -69.59932778 69.60356939 69.60251597 -69.59998891 -3.408132604 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -0.08397180489 7.755788923 5.500001777 -13.17130151 -7.060969306 -0.6103969066 1.645416171 6.026334965 8.546473644 
+DEAL::dst FEV: -0.08397180489 7.755788923 5.500001777 -13.17130151 -7.060969306 -0.6103969066 1.645416171 6.026334965 8.546473644 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -215.6809505 8143.461896 -2344.535280 -7712.034941 1000.768439 12401.26504 11166.69705 -14402.68047 
+DEAL::dst FEV: 0.000000000 -215.6809505 8143.461896 -2344.535280 -7712.034941 1000.768439 12401.26504 11166.69705 -14402.68047 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -51.36138109 0.000000000 -2818.102877 0.000000000 -950.3988375 5901.433993 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -51.36138109 0.000000000 -2818.102877 0.000000000 -950.3988375 5901.433993 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -18.61005533 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -18.61005533 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 153.1362421 -306.2360430 153.1469163 -1654.859679 3309.813049 -1654.870187 11963.71550 -23927.39093 11963.71078 
+DEAL::dst FEV: 153.1362421 -306.2360430 153.1469163 -1654.859679 3309.813049 -1654.870187 11963.71550 -23927.39093 11963.71078 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: -213.4650050 966.7872646 -267.5894277 1231.020919 -4029.846175 1827.366539 137.7267368 752.4997334 -404.4948533 
+DEAL::dst FEV: -213.4650050 966.7872646 -267.5894277 1231.020919 -4029.846175 1827.366539 137.7267368 752.4997334 -404.4948533 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 4.927544499 60.07218011 -26.83515653 2.555837617 -157.6803590 56.57567210 34.05050873 30.91623308 -20.10165521 
+DEAL::dst FEV: 4.927544499 60.07218011 -26.83515653 2.555837617 -157.6803590 56.57567210 34.05050873 30.91623308 -20.10165521 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 -84517.38220 4603.229152 18632.21602 -1283.060355 150338.3844 -141186.9217 26428.64685 135174.8645 
+DEAL::dst FEV: 0.000000000 -84517.38220 4603.229152 18632.21602 -1283.060355 150338.3844 -141186.9217 26428.64685 135174.8645 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 5007.851121 0.000000000 0.000000000 3914.803279 -4280.464271 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 5007.851121 0.000000000 0.000000000 3914.803279 -4280.464271 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 272.7310590 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 272.7310590 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -7149.043078 33261.91626 -61215.24544 35102.41875 -24734.53178 45282.44887 -29060.50731 8512.644002 -54331.57788 
+DEAL::dst FEV: -7149.043078 33261.91626 -61215.24544 35102.41875 -24734.53178 45282.44887 -29060.50731 8512.644002 -54331.57788 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: 1179.714485 3862.891660 -845.1495488 -1100.068717 -619.6380967 -13833.75410 6717.188484 491.8218887 -558.8154271 
+DEAL::dst FEV: 1179.714485 3862.891660 -845.1495488 -1100.068717 -619.6380967 -13833.75410 6717.188484 491.8218887 -558.8154271 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: -1.585484253 122.9455461 8.815875279 -6.624615622 -3.341394517 -355.7748453 187.9708677 -213.3814217 117.0991542 
+DEAL::dst FEV: -1.585484253 122.9455461 8.815875279 -6.624615622 -3.341394517 -355.7748453 187.9708677 -213.3814217 117.0991542 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_hessians_with_gradients
+DEAL::test_qgauss
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 3.234104501 3.979782095 -0.8331205029 -2.307932967 1.359976795 -2.426890367 2.378301614 -0.8771683764 
+DEAL::dst FEV: 0.000000000 3.234104501 3.979782095 -0.8331205029 -2.307932967 1.359976795 -2.426890367 2.378301614 -0.8771683764 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 311.5139357 0.000000000 -167.1716042 0.000000000 -347.4057841 369.8687116 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 311.5139357 0.000000000 -167.1716042 0.000000000 -347.4057841 369.8687116 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 13.30846766 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 13.30846766 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: -2.612164633 2.612164633 4.559392208 -4.559392208 -0.4538705947 0.4538705947 -2.481177391 2.481177391 -0.4816846142 
+DEAL::dst FEV: -2.612164633 2.612164633 4.559392208 -4.559392208 -0.4538705947 0.4538705947 -2.481177391 2.481177391 -0.4816846142 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: 44.44519963 -43.96912992 -44.76861450 44.29254479 -1.422133094 0.9207576293 1.086062015 -0.5846865509 -5.636555806 
+DEAL::dst FEV: 44.44519963 -43.96912992 -44.76861450 44.29254479 -1.422133094 0.9207576293 1.086062015 -0.5846865509 -5.636555806 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -11.62061463 2.707901385 15.67306008 -6.778124172 0.1684209171 8.751511960 -4.219299690 -4.682855849 10.71546977 
+DEAL::dst FEV: -11.62061463 2.707901385 15.67306008 -6.778124172 0.1684209171 8.751511960 -4.219299690 -4.682855849 10.71546977 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -13440.12645 20600.87407 -7614.714608 6289.804233 -5644.995687 8937.226667 -2240.182421 2345.828440 
+DEAL::dst FEV: 0.000000000 -13440.12645 20600.87407 -7614.714608 6289.804233 -5644.995687 8937.226667 -2240.182421 2345.828440 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 367.1501315 0.000000000 362.7045415 0.000000000 -691.9283429 3155.769056 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 367.1501315 0.000000000 362.7045415 0.000000000 -691.9283429 3155.769056 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -189.2883366 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -189.2883366 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 10351.13701 -20701.19501 10350.05800 -1024.839310 2044.940899 -1020.101589 10472.78978 -20943.33296 10470.54317 
+DEAL::dst FEV: 10351.13701 -20701.19501 10350.05800 -1024.839310 2044.940899 -1020.101589 10472.78978 -20943.33296 10470.54317 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: 343.5753388 -161.0571609 -254.0391030 -718.6311052 176.3544301 685.5847699 118.0338894 497.9036988 -687.7247579 
+DEAL::dst FEV: 343.5753388 -161.0571609 -254.0391030 -718.6311052 176.3544301 685.5847699 118.0338894 497.9036988 -687.7247579 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 15.69741306 -33.90062485 25.07845934 -17.90672905 -38.23703701 14.07801955 19.04306530 -22.09968163 25.99781852 
+DEAL::dst FEV: 15.69741306 -33.90062485 25.07845934 -17.90672905 -38.23703701 14.07801955 19.04306530 -22.09968163 25.99781852 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 15679.82788 78717.11168 -49336.64213 -71119.75783 -15977.44134 35553.05327 78636.37363 111301.8726 
+DEAL::dst FEV: 0.000000000 15679.82788 78717.11168 -49336.64213 -71119.75783 -15977.44134 35553.05327 78636.37363 111301.8726 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 6366.084932 0.000000000 0.000000000 11799.89643 -8184.773939 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 6366.084932 0.000000000 0.000000000 11799.89643 -8184.773939 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -63.94023798 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -63.94023798 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -56701.23368 128306.9389 -130771.4843 59165.77910 -27168.74215 50633.50206 -34282.07545 10817.31553 34914.09611 
+DEAL::dst FEV: -56701.23368 128306.9389 -130771.4843 59165.77910 -27168.74215 50633.50206 -34282.07545 10817.31553 34914.09611 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -1886.193162 6717.374100 3480.597441 -2818.626680 1863.961313 -10371.39782 -11313.30079 7873.099874 -5179.397408 
+DEAL::dst FEV: -1886.193162 6717.374100 3480.597441 -2818.626680 1863.961313 -10371.39782 -11313.30079 7873.099874 -5179.397408 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: 53.43563250 -53.74539487 22.72655462 -26.90416333 -153.5700152 321.3974540 95.93300022 88.04548570 69.70859587 
+DEAL::dst FEV: 53.43563250 -53.74539487 22.72655462 -26.90416333 -153.5700152 321.3974540 95.93300022 88.04548570 69.70859587 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_qiterated
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 5.384148045 -4.691152567 2.067220886 3.020029293 2.162165378 -6.765742793 5.656269516 -2.952364658 
+DEAL::dst FEV: 0.000000000 5.384148045 -4.691152567 2.067220886 3.020029293 2.162165378 -6.765742793 5.656269516 -2.952364658 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 212.8822246 0.000000000 -235.0926087 0.000000000 -63.21589331 173.4149868 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 212.8822246 0.000000000 -235.0926087 0.000000000 -63.21589331 173.4149868 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 71.88290451 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 71.88290451 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 5.793409279 -5.793409279 -1.579216090 1.579216090 -5.416835821 5.416835821 -1.431266960 1.431266960 1.230675743 
+DEAL::dst FEV: 5.793409279 -5.793409279 -1.579216090 1.579216090 -5.416835821 5.416835821 -1.431266960 1.431266960 1.230675743 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: -20.70544797 20.29309021 20.61928659 -20.20692883 75.96964986 -75.66011390 -76.01057218 75.70103622 -39.63773219 
+DEAL::dst FEV: -20.70544797 20.29309021 20.61928659 -20.20692883 75.96964986 -75.66011390 -76.01057218 75.70103622 -39.63773219 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -0.2476539998 -8.887965641 0.5293003822 8.640646029 7.698368704 1.394928418 -7.993110524 -1.134513367 1.405851616 
+DEAL::dst FEV: -0.2476539998 -8.887965641 0.5293003822 8.640646029 7.698368704 1.394928418 -7.993110524 -1.134513367 1.405851616 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 947.1856794 9705.566828 7243.451772 -11587.81670 7315.890631 -2906.686245 3342.756594 -11712.84475 
+DEAL::dst FEV: 0.000000000 947.1856794 9705.566828 7243.451772 -11587.81670 7315.890631 -2906.686245 3342.756594 -11712.84475 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -1126.282848 0.000000000 752.3302928 0.000000000 619.8121003 1431.630666 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -1126.282848 0.000000000 752.3302928 0.000000000 619.8121003 1431.630666 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -61.68454820 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -61.68454820 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 7210.842175 -14419.54351 7208.701336 996.1055621 -1990.408262 994.3027000 -2689.449639 5381.250054 -2691.800415 
+DEAL::dst FEV: 7210.842175 -14419.54351 7208.701336 996.1055621 -1990.408262 994.3027000 -2689.449639 5381.250054 -2691.800415 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: -916.2348830 1876.217450 -299.4488274 2523.464049 -5188.888576 1344.306592 -890.4360153 1878.837414 -327.8172032 
+DEAL::dst FEV: -916.2348830 1876.217450 -299.4488274 2523.464049 -5188.888576 1344.306592 -890.4360153 1878.837414 -327.8172032 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 21.76479286 45.44515150 -4.618332579 -107.8938617 95.83948831 -72.07410623 8.603290270 -0.02766598400 14.55791476 
+DEAL::dst FEV: 21.76479286 45.44515150 -4.618332579 -107.8938617 95.83948831 -72.07410623 8.603290270 -0.02766598400 14.55791476 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 -37813.03726 106145.7267 -87555.63095 63438.61036 168650.6913 -181637.8701 7182.568137 47749.05549 
+DEAL::dst FEV: 0.000000000 -37813.03726 106145.7267 -87555.63095 63438.61036 168650.6913 -181637.8701 7182.568137 47749.05549 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -7276.717920 0.000000000 0.000000000 -3175.549800 13519.09777 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -7276.717920 0.000000000 0.000000000 -3175.549800 13519.09777 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 84.86003998 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 84.86003998 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: 29505.63365 -68945.80059 73776.38139 -34336.21445 -53963.58984 131924.4713 -150166.4399 72205.55840 19676.99916 
+DEAL::dst FEV: 29505.63365 -68945.80059 73776.38139 -34336.21445 -53963.58984 131924.4713 -150166.4399 72205.55840 19676.99916 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -306.5451407 4750.095050 441.0526707 -1491.381334 -2931.747357 -3630.384436 -6285.183885 5190.181455 1571.153324 
+DEAL::dst FEV: -306.5451407 4750.095050 441.0526707 -1491.381334 -2931.747357 -3630.384436 -6285.183885 5190.181455 1571.153324 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: -23.96390583 150.5022090 82.24014389 -29.26935068 -87.97867458 -25.62510797 -213.5489689 173.3039317 8.403545836 
+DEAL::dst FEV: -23.96390583 150.5022090 82.24014389 -29.26935068 -87.97867458 -25.62510797 -213.5489689 173.3039317 8.403545836 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_hessians_with_gradients_and_values
+DEAL::test_qgauss
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 3.072877162 6.981104267 -5.629915966 -0.8114919467 -5.272396859 7.618369944 -1.075872813 -0.05675665547 
+DEAL::dst FEV: 0.000000000 3.072877162 6.981104267 -5.629915966 -0.8114919467 -5.272396859 7.618369944 -1.075872813 -0.05675665547 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -150.7881668 0.000000000 87.27844426 0.000000000 196.7572714 -141.8128206 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -150.7881668 0.000000000 87.27844426 0.000000000 196.7572714 -141.8128206 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 2.945498797 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 2.945498797 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 2.936544718 -2.909179896 0.8715464054 -0.8377905156 1.237980497 -1.200010392 3.291370031 -3.253336861 1.279333417 
+DEAL::dst FEV: 2.936544718 -2.909179896 0.8715464054 -0.8377905156 1.237980497 -1.200010392 3.291370031 -3.253336861 1.279333417 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: 44.39040308 -44.46731859 -44.58531744 44.66776152 -69.66785317 70.09350037 69.96936828 -70.38726350 82.38779414 
+DEAL::dst FEV: 44.39040308 -44.46731859 -44.58531744 44.66776152 -69.66785317 70.09350037 69.96936828 -70.38726350 82.38779414 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -4.345274055 -1.580193543 0.9797331415 4.936007566 -0.02587274041 5.937980978 3.344043749 -9.245220854 2.735475574 
+DEAL::dst FEV: -4.345274055 -1.580193543 0.9797331415 4.936007566 -0.02587274041 5.937980978 3.344043749 -9.245220854 2.735475574 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -6990.074878 4342.318843 2533.747369 9648.566013 21025.11462 -14724.56666 22482.97470 -27319.43376 
+DEAL::dst FEV: 0.000000000 -6990.074878 4342.318843 2533.747369 9648.566013 21025.11462 -14724.56666 22482.97470 -27319.43376 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -1207.949159 0.000000000 977.5864693 0.000000000 -2014.106190 4493.301757 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -1207.949159 0.000000000 977.5864693 0.000000000 -2014.106190 4493.301757 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -55.90236368 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 -55.90236368 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: 6948.591863 -13905.13423 6956.585227 -2479.246880 4950.228177 -2470.926391 -2075.305610 4145.776366 -2070.402930 
+DEAL::dst FEV: 6948.591863 -13905.13423 6956.585227 -2479.246880 4950.228177 -2470.926391 -2075.305610 4145.776366 -2070.402930 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: 950.4670053 -396.6068331 -136.5779406 -1405.997705 365.0553229 205.7681918 250.9796693 440.2641129 -273.3455508 
+DEAL::dst FEV: 950.4670053 -396.6068331 -136.5779406 -1405.997705 365.0553229 205.7681918 250.9796693 440.2641129 -273.3455508 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: 32.44943944 -69.58590308 19.83341599 -64.63598726 118.4577187 -20.08340987 -10.58064074 15.51791626 -36.33522421 
+DEAL::dst FEV: 32.44943944 -69.58590308 19.83341599 -64.63598726 118.4577187 -20.08340987 -10.58064074 15.51791626 -36.33522421 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 22051.75033 34329.64532 -20763.31748 -38587.09583 -44772.92728 57474.24740 40750.61546 7046.790861 
+DEAL::dst FEV: 0.000000000 22051.75033 34329.64532 -20763.31748 -38587.09583 -44772.92728 57474.24740 40750.61546 7046.790861 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 6497.476242 0.000000000 0.000000000 6604.091745 -1963.013347 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 6497.476242 0.000000000 0.000000000 6604.091745 -1963.013347 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 43.38591491 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 43.38591491 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -24408.40021 58170.30580 -63978.45704 30216.63567 3716.097130 -7269.788123 5606.719416 -2052.952581 -10660.68522 
+DEAL::dst FEV: -24408.40021 58170.30580 -63978.45704 30216.63567 3716.097130 -7269.788123 5606.719416 -2052.952581 -10660.68522 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: -772.3445594 1993.789413 -1574.844262 550.8879762 4073.125256 -9124.243211 9472.443329 -4194.085174 -961.9906330 
+DEAL::dst FEV: -772.3445594 1993.789413 -1574.844262 550.8879762 4073.125256 -9124.243211 9472.443329 -4194.085174 -961.9906330 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: 57.99744975 -50.77859764 144.0405248 -27.49138889 -194.1973450 -90.19662229 -60.85947275 -39.52423720 16.93192996 
+DEAL::dst FEV: 57.99744975 -50.77859764 144.0405248 -27.49138889 -194.1973450 -90.19662229 -60.85947275 -39.52423720 16.93192996 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::test_qiterated
+DEAL::Working with FE_Q<1>(1) and 9 dofs
+DEAL::dst FEE: 0.000000000 8.026124170 -5.919075881 3.817571634 7.135632272 -7.363332652 -1.629564591 0.7913809274 1.392093695 
+DEAL::dst FEV: 0.000000000 8.026124170 -5.919075881 3.817571634 7.135632272 -7.363332652 -1.629564591 0.7913809274 1.392093695 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(1) and 81 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -95.10478362 0.000000000 106.8833190 0.000000000 234.1440906 53.50296342 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -95.10478362 0.000000000 106.8833190 0.000000000 234.1440906 53.50296342 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(1) and 729 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 58.61626386 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 58.61626386 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(1) and 16 dofs
+DEAL::dst FEE: 2.924939685 -2.863826789 2.936468918 -2.856424353 -4.576902707 4.643830637 4.609776011 -4.531107146 1.341751674 
+DEAL::dst FEV: 2.924939685 -2.863826789 2.936468918 -2.856424353 -4.576902707 4.643830637 4.609776011 -4.531107146 1.341751674 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(1) and 256 dofs
+DEAL::dst FEE: -87.48761845 87.60278993 87.36638597 -87.47634569 -85.29747662 85.06645940 85.69675320 -85.45938069 86.52907935 
+DEAL::dst FEV: -87.48761845 87.60278993 87.36638597 -87.47634569 -85.29747662 85.06645940 85.69675320 -85.45938069 86.52907935 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(1) and 4096 dofs
+DEAL::dst FEE: -12.68658262 7.189603148 6.714055386 -1.263995625 1.801925744 3.706600238 4.190590297 -9.651180953 0.6066951473 
+DEAL::dst FEV: -12.68658262 7.189603148 6.714055386 -1.263995625 1.801925744 3.706600238 4.190590297 -9.651180953 0.6066951473 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(2) and 17 dofs
+DEAL::dst FEE: 0.000000000 -1952.274169 -3098.353588 -8681.762317 7020.305084 -9137.692821 10342.72863 2366.480054 7918.039537 
+DEAL::dst FEV: 0.000000000 -1952.274169 -3098.353588 -8681.762317 7020.305084 -9137.692821 10342.72863 2366.480054 7918.039537 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(2) and 289 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 905.3925332 0.000000000 857.2422668 0.000000000 -232.0454130 -1260.634214 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 905.3925332 0.000000000 857.2422668 0.000000000 -232.0454130 -1260.634214 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(2) and 4913 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 84.27845578 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 84.27845578 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(2) and 24 dofs
+DEAL::dst FEE: -1997.089585 3993.336662 -1996.207377 1149.420489 -2303.931158 1154.595620 -12512.78577 25019.59997 -12506.72136 
+DEAL::dst FEV: -1997.089585 3993.336662 -1996.207377 1149.420489 -2303.931158 1154.595620 -12512.78577 25019.59997 -12506.72136 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(2) and 576 dofs
+DEAL::dst FEE: 300.7739352 -1393.253042 236.3010615 -1185.422997 4491.282240 -1593.049440 388.9609953 -2105.591151 860.0094750 
+DEAL::dst FEV: 300.7739352 -1393.253042 236.3010615 -1185.422997 4491.282240 -1593.049440 388.9609953 -2105.591151 860.0094750 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(2) and 13824 dofs
+DEAL::dst FEE: -29.83250492 -44.19393840 -4.154214076 11.90949810 297.3554780 -75.11438088 -21.17549233 -67.85706029 5.763492941 
+DEAL::dst FEV: -29.83250492 -44.19393840 -4.154214076 11.90949810 297.3554780 -75.11438088 -21.17549233 -67.85706029 5.763492941 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<1>(3) and 25 dofs
+DEAL::dst FEE: 0.000000000 -26981.95989 -13193.15904 30283.97988 35719.06649 18518.12667 -16940.19347 -35115.52393 -69450.68524 
+DEAL::dst FEV: 0.000000000 -26981.95989 -13193.15904 30283.97988 35719.06649 18518.12667 -16940.19347 -35115.52393 -69450.68524 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<2>(3) and 625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 -3082.265592 0.000000000 0.000000000 14498.14961 -10802.53612 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 -3082.265592 0.000000000 0.000000000 14498.14961 -10802.53612 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_Q<3>(3) and 15625 dofs
+DEAL::dst FEE: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 380.5165754 0.000000000 
+DEAL::dst FEV: 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 380.5165754 0.000000000 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<1>(3) and 32 dofs
+DEAL::dst FEE: -18773.62978 39466.48051 -35386.39881 14693.58863 37162.41760 -71247.80608 52064.41816 -17978.96693 34322.17615 
+DEAL::dst FEV: -18773.62978 39466.48051 -35386.39881 14693.58863 37162.41760 -71247.80608 52064.41816 -17978.96693 34322.17615 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<2>(3) and 1024 dofs
+DEAL::dst FEE: 472.3583656 239.0640885 -1073.547029 1190.260050 2091.716247 -5826.886207 7147.212876 -4972.563457 2842.930604 
+DEAL::dst FEV: 472.3583656 239.0640885 -1073.547029 1190.260050 2091.716247 -5826.886207 7147.212876 -4972.563457 2842.930604 
+DEAL::FEValues verification: 0.000000000
+DEAL::
+DEAL::Working with FE_DGQ<3>(3) and 32768 dofs
+DEAL::dst FEE: -16.36824162 99.67881396 -102.0779491 50.79297547 154.5260524 -251.9938186 -95.22193757 35.94555856 83.95887099 
+DEAL::dst FEV: -16.36824162 99.67881396 -102.0779491 50.79297547 154.5260524 -251.9938186 -95.22193757 35.94555856 83.95887099 
+DEAL::FEValues verification: 0.000000000
+DEAL::

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.