#include <deal.II/base/vectorization.h>
#include <deal.II/fe/fe_values.h>
+#include <deal.II/fe/mapping_cartesian.h>
#include <deal.II/fe/mapping_q.h>
#include <deal.II/matrix_free/evaluation_flags.h>
SmartPointer<const Mapping<dim, spacedim>> mapping;
/**
- * Pointer to MappingQ class that enables the fast path of this
- * class.
+ * Pointer to the function of the mapping that computes the necessary
+ * mapping quantities like quadrature points and Jacobians.
*/
- const MappingQ<dim, spacedim> *mapping_q;
+ std::function<void(
+ const typename Triangulation<dim, spacedim>::cell_iterator & /*cell*/,
+ const ArrayView<const Point<dim>> & /*unit_points*/,
+ const UpdateFlags /*update_flags*/,
+ dealii::internal::FEValuesImplementation::MappingRelatedData<dim, spacedim>
+ & /*output_data*/)>
+ fill_mapping_data_for_generic_points;
/**
* Pointer to the FiniteElement object passed to the constructor.
const UpdateFlags update_flags,
const unsigned int first_selected_component)
: mapping(&mapping)
- , mapping_q(dynamic_cast<const MappingQ<dim, spacedim> *>(&mapping))
, fe(&fe)
, update_flags(update_flags)
, update_flags_mapping(update_default)
AssertIndexRange(first_selected_component + n_components,
fe.n_components() + 1);
+ if (const MappingQ<dim, spacedim> *mapping_q =
+ dynamic_cast<const MappingQ<dim, spacedim> *>(&mapping))
+ {
+ fill_mapping_data_for_generic_points =
+ [mapping_q](
+ const typename Triangulation<dim, spacedim>::cell_iterator &cell,
+ const ArrayView<const Point<dim>> &unit_points,
+ const UpdateFlags update_flags,
+ dealii::internal::FEValuesImplementation::MappingRelatedData<dim,
+ spacedim>
+ &output_data) -> void {
+ mapping_q->fill_mapping_data_for_generic_points(cell,
+ unit_points,
+ update_flags,
+ output_data);
+ };
+ }
+ else if (const MappingCartesian<dim, spacedim> *mapping_cartesian =
+ dynamic_cast<const MappingCartesian<dim, spacedim> *>(&mapping))
+ {
+ fill_mapping_data_for_generic_points =
+ [mapping_cartesian](
+ const typename Triangulation<dim, spacedim>::cell_iterator &cell,
+ const ArrayView<const Point<dim>> &unit_points,
+ const UpdateFlags update_flags,
+ dealii::internal::FEValuesImplementation::MappingRelatedData<dim,
+ spacedim>
+ &output_data) -> void {
+ mapping_cartesian->fill_mapping_data_for_generic_points(cell,
+ unit_points,
+ update_flags,
+ output_data);
+ };
+ }
+
bool same_base_element = true;
unsigned int base_element_number = 0;
unsigned int component = 0;
}
else
component += fe.element_multiplicity(base_element_number);
- if (mapping_q != nullptr &&
+ if (fill_mapping_data_for_generic_points &&
internal::FEPointEvaluation::is_fast_path_supported(
fe, base_element_number) &&
same_base_element)
std::copy(unit_points.begin(), unit_points.end(), this->unit_points.begin());
if (!poly.empty())
- mapping_q->fill_mapping_data_for_generic_points(cell,
- unit_points,
- update_flags_mapping,
- mapping_data);
+ fill_mapping_data_for_generic_points(cell,
+ unit_points,
+ update_flags_mapping,
+ mapping_data);
else
{
fe_values = std::make_shared<FEValues<dim, spacedim>>(
--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 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.
+//
+// ---------------------------------------------------------------------
+
+
+// Check FEPointEvaluation for vector-valued FE_Q and MappingCartesian by
+// comparing to the output of FEValues with the same settings.
+// This is a modified version of point_evaluation_03.cc.
+
+#include <deal.II/base/function_lib.h>
+
+#include <deal.II/dofs/dof_handler.h>
+
+#include <deal.II/fe/fe_q.h>
+#include <deal.II/fe/fe_system.h>
+#include <deal.II/fe/fe_values.h>
+#include <deal.II/fe/mapping_cartesian.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/tria.h>
+
+#include <deal.II/lac/vector.h>
+
+#include <deal.II/matrix_free/fe_point_evaluation.h>
+
+#include <deal.II/numerics/vector_tools.h>
+
+#include <iostream>
+
+#include "../tests.h"
+
+
+
+template <int dim>
+class MyFunction : public Function<dim>
+{
+public:
+ MyFunction()
+ : Function<dim>(dim)
+ {}
+
+ double
+ value(const Point<dim> &p, const unsigned int component) const override
+ {
+ return component + p[component];
+ }
+};
+
+
+
+template <int dim>
+void
+test()
+{
+ using namespace dealii;
+ Triangulation<dim> tria;
+
+ GridGenerator::subdivided_hyper_cube(tria, 2, 0, 1);
+
+ MappingCartesian<dim> mapping;
+ deallog << "Cartesian linear mapping" << std::endl;
+
+ std::vector<Point<dim>> unit_points;
+ for (unsigned int i = 0; i < 13; ++i)
+ {
+ Point<dim> p;
+ for (unsigned int d = 0; d < dim; ++d)
+ p[d] = static_cast<double>(i) / 17. + 0.015625 * d;
+ unit_points.push_back(p);
+ }
+
+ FESystem<dim> fe(FE_Q<dim>(2), dim);
+ FEValues<dim> fe_values(mapping,
+ fe,
+ Quadrature<dim>(unit_points),
+ update_values | update_gradients);
+
+ DoFHandler<dim> dof_handler(tria);
+ dof_handler.distribute_dofs(fe);
+ Vector<double> vector(dof_handler.n_dofs());
+
+ FEPointEvaluation<dim, dim> evaluator(mapping,
+ fe,
+ update_values | update_gradients);
+
+ VectorTools::interpolate(mapping, dof_handler, MyFunction<dim>(), vector);
+
+ std::vector<double> solution_values(fe.dofs_per_cell);
+ std::vector<Tensor<1, dim>> function_values(unit_points.size());
+ std::vector<Tensor<2, dim>> function_gradients(unit_points.size());
+
+ FEValuesExtractors::Vector extractor(0);
+
+ for (const auto &cell : dof_handler.active_cell_iterators())
+ {
+ fe_values.reinit(cell);
+ fe_values[extractor].get_function_values(vector, function_values);
+ fe_values[extractor].get_function_gradients(vector, function_gradients);
+
+ cell->get_dof_values(vector,
+ solution_values.begin(),
+ solution_values.end());
+
+ evaluator.reinit(cell, unit_points);
+ evaluator.evaluate(solution_values,
+ EvaluationFlags::values | EvaluationFlags::gradients);
+
+ deallog << "Cell with center " << cell->center(true) << std::endl;
+ for (unsigned int i = 0; i < function_values.size(); ++i)
+ deallog << mapping.transform_unit_to_real_cell(cell, unit_points[i])
+ << ": " << evaluator.get_value(i) << " error value "
+ << (function_values[i] - evaluator.get_value(i)).norm()
+ << " error grad "
+ << (evaluator.get_gradient(i) - function_gradients[i]).norm()
+ << std::endl;
+ deallog << std::endl;
+
+ for (unsigned int i = 0; i < unit_points.size(); ++i)
+ {
+ evaluator.submit_value(evaluator.get_value(i), i);
+ evaluator.submit_gradient(evaluator.get_gradient(i), i);
+ }
+
+ evaluator.integrate(solution_values,
+ EvaluationFlags::values | EvaluationFlags::gradients);
+
+ for (const auto i : solution_values)
+ deallog << i << " ";
+ deallog << std::endl;
+ }
+}
+
+
+
+int
+main()
+{
+ initlog();
+ deallog << std::setprecision(10);
+
+ test<2>();
+ test<3>();
+}
--- /dev/null
+
+DEAL::Cartesian linear mapping
+DEAL::Cell with center 0.2500000000 0.2500000000
+DEAL::0.000000000 0.007812500000: 0.000000000 1.007812500 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.03722426471: 0.02941176471 1.037224265 error value 0.000000000 error grad 2.667675875e-15
+DEAL::0.05882352941 0.06663602941: 0.05882352941 1.066636029 error value 6.938893904e-18 error grad 1.605090803e-15
+DEAL::0.08823529412 0.09604779412: 0.08823529412 1.096047794 error value 0.000000000 error grad 1.112040858e-15
+DEAL::0.1176470588 0.1254595588: 0.1176470588 1.125459559 error value 2.237726046e-16 error grad 1.197604590e-15
+DEAL::0.1470588235 0.1548713235: 0.1470588235 1.154871324 error value 0.000000000 error grad 2.533099130e-16
+DEAL::0.1764705882 0.1842830882: 0.1764705882 1.184283088 error value 2.775557562e-17 error grad 1.439871256e-15
+DEAL::0.2058823529 0.2136948529: 0.2058823529 1.213694853 error value 2.775557562e-17 error grad 6.004152100e-17
+DEAL::0.2352941176 0.2431066176: 0.2352941176 1.243106618 error value 2.775557562e-17 error grad 1.023621822e-15
+DEAL::0.2647058824 0.2725183824: 0.2647058824 1.272518382 error value 2.288783399e-16 error grad 7.975978331e-16
+DEAL::0.2941176471 0.3019301471: 0.2941176471 1.301930147 error value 2.220446049e-16 error grad 1.019049276e-15
+DEAL::0.3235294118 0.3313419118: 0.3235294118 1.331341912 error value 0.000000000 error grad 4.710277376e-16
+DEAL::0.3529411765 0.3607536765: 0.3529411765 1.360753676 error value 0.000000000 error grad 6.661338148e-16
+DEAL::
+DEAL::-18.42636850 -16.65544665 -4.918868291 1.976718730 2.338701807 -4.892268294 2.448220899 2.268561424 -25.04768848 25.46920990 13.29030951 -4.222168639 23.46786814 -21.42375934 -4.637582884 15.10395118 13.77952545 17.77088184
+DEAL::Cell with center 0.7500000000 0.2500000000
+DEAL::0.5000000000 0.007812500000: 0.5000000000 1.007812500 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.03722426471: 0.5294117647 1.037224265 error value 1.110223025e-16 error grad 2.722548304e-15
+DEAL::0.5588235294 0.06663602941: 0.5588235294 1.066636029 error value 0.000000000 error grad 1.616509124e-15
+DEAL::0.5882352941 0.09604779412: 0.5882352941 1.096047794 error value 1.110223025e-16 error grad 1.281272000e-15
+DEAL::0.6176470588 0.1254595588: 0.6176470588 1.125459559 error value 3.140184917e-16 error grad 1.197576636e-15
+DEAL::0.6470588235 0.1548713235: 0.6470588235 1.154871324 error value 1.110223025e-16 error grad 4.501558342e-16
+DEAL::0.6764705882 0.1842830882: 0.6764705882 1.184283088 error value 0.000000000 error grad 1.506543756e-15
+DEAL::0.7058823529 0.2136948529: 0.7058823529 1.213694853 error value 0.000000000 error grad 2.288004225e-17
+DEAL::0.7352941176 0.2431066176: 0.7352941176 1.243106618 error value 0.000000000 error grad 1.053295491e-15
+DEAL::0.7647058824 0.2725183824: 0.7647058824 1.272518382 error value 2.220446049e-16 error grad 8.279288073e-16
+DEAL::0.7941176471 0.3019301471: 0.7941176471 1.301930147 error value 3.140184917e-16 error grad 1.017536210e-15
+DEAL::0.8235294118 0.3313419118: 0.8235294118 1.331341912 error value 1.110223025e-16 error grad 6.661338148e-16
+DEAL::0.8529411765 0.3607536765: 0.8529411765 1.360753676 error value 0.000000000 error grad 6.280369835e-16
+DEAL::
+DEAL::-17.12468580 -16.65544665 -5.080573582 1.976718730 2.149464381 -4.892268294 2.557652133 2.268561424 -24.29335176 25.46920990 13.29760087 -4.222168639 24.03654141 -21.42375934 -4.557765711 15.10395118 17.80923570 17.77088184
+DEAL::Cell with center 0.2500000000 0.7500000000
+DEAL::0.000000000 0.5078125000: 0.000000000 1.507812500 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.5372242647: 0.02941176471 1.537224265 error value 0.000000000 error grad 1.123699927e-15
+DEAL::0.05882352941 0.5666360294: 0.05882352941 1.566636029 error value 6.938893904e-18 error grad 2.043167996e-15
+DEAL::0.08823529412 0.5960477941: 0.08823529412 1.596047794 error value 2.220446049e-16 error grad 1.175494552e-15
+DEAL::0.1176470588 0.6254595588: 0.1176470588 1.625459559 error value 2.237726046e-16 error grad 1.078338501e-15
+DEAL::0.1470588235 0.6548713235: 0.1470588235 1.654871324 error value 2.220446049e-16 error grad 1.737384317e-15
+DEAL::0.1764705882 0.6842830882: 0.1764705882 1.684283088 error value 2.775557562e-17 error grad 1.861753289e-15
+DEAL::0.2058823529 0.7136948529: 0.2058823529 1.713694853 error value 2.775557562e-17 error grad 1.858607700e-15
+DEAL::0.2352941176 0.7431066176: 0.2352941176 1.743106618 error value 2.237726046e-16 error grad 7.852981673e-16
+DEAL::0.2647058824 0.7725183824: 0.2647058824 1.772518382 error value 2.288783399e-16 error grad 1.491244441e-15
+DEAL::0.2941176471 0.8019301471: 0.2941176471 1.801930147 error value 2.220446049e-16 error grad 1.058190060e-15
+DEAL::0.3235294118 0.8313419118: 0.3235294118 1.831341912 error value 0.000000000 error grad 1.570092459e-16
+DEAL::0.3529411765 0.8607536765: 0.3529411765 1.860753676 error value 0.000000000 error grad 9.155133597e-16
+DEAL::
+DEAL::-18.42636850 -15.35376394 -4.918868291 1.815013439 2.338701807 -5.081505720 2.448220899 2.377992659 -25.04768848 26.22354662 13.29030951 -4.214877282 23.46786814 -20.85508607 -4.637582884 15.18376835 13.77952545 21.80059209
+DEAL::Cell with center 0.7500000000 0.7500000000
+DEAL::0.5000000000 0.5078125000: 0.5000000000 1.507812500 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.5372242647: 0.5294117647 1.537224265 error value 1.110223025e-16 error grad 1.248389449e-15
+DEAL::0.5588235294 0.5666360294: 0.5588235294 1.566636029 error value 0.000000000 error grad 2.052150268e-15
+DEAL::0.5882352941 0.5960477941: 0.5882352941 1.596047794 error value 2.482534153e-16 error grad 1.336716316e-15
+DEAL::0.6176470588 0.6254595588: 0.6176470588 1.625459559 error value 3.140184917e-16 error grad 1.078307455e-15
+DEAL::0.6470588235 0.6548713235: 0.6470588235 1.654871324 error value 2.482534153e-16 error grad 1.776788853e-15
+DEAL::0.6764705882 0.6842830882: 0.6764705882 1.684283088 error value 0.000000000 error grad 1.913784252e-15
+DEAL::0.7058823529 0.7136948529: 0.7058823529 1.713694853 error value 0.000000000 error grad 1.857778537e-15
+DEAL::0.7352941176 0.7431066176: 0.7352941176 1.743106618 error value 2.220446049e-16 error grad 8.236036485e-16
+DEAL::0.7647058824 0.7725183824: 0.7647058824 1.772518382 error value 2.220446049e-16 error grad 1.507684911e-15
+DEAL::0.7941176471 0.8019301471: 0.7941176471 1.801930147 error value 3.140184917e-16 error grad 1.056733039e-15
+DEAL::0.8235294118 0.8313419118: 0.8235294118 1.831341912 error value 1.110223025e-16 error grad 4.965068306e-16
+DEAL::0.8529411765 0.8607536765: 0.8529411765 1.860753676 error value 0.000000000 error grad 8.881784197e-16
+DEAL::
+DEAL::-17.12468580 -15.35376394 -5.080573582 1.815013439 2.149464381 -5.081505720 2.557652133 2.377992659 -24.29335176 26.22354662 13.29760087 -4.214877282 24.03654141 -20.85508607 -4.557765711 15.18376835 17.80923570 21.80059209
+DEAL::Cartesian linear mapping
+DEAL::Cell with center 0.2500000000 0.2500000000 0.2500000000
+DEAL::0.000000000 0.007812500000 0.01562500000: 0.000000000 1.007812500 2.015625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.03722426471 0.04503676471: 0.02941176471 1.037224265 2.045036765 error value 6.280753146e-16 error grad 7.139452262e-15
+DEAL::0.05882352941 0.06663602941 0.07444852941: 0.05882352941 1.066636029 2.074448529 error value 9.155396551e-16 error grad 5.428081964e-15
+DEAL::0.08823529412 0.09604779412 0.1038602941: 0.08823529412 1.096047794 2.103860294 error value 8.881784197e-16 error grad 4.543142259e-15
+DEAL::0.1176470588 0.1254595588 0.1332720588: 0.1176470588 1.125459559 2.133272059 error value 1.387778781e-17 error grad 1.859128114e-15
+DEAL::0.1470588235 0.1548713235 0.1626838235: 0.1470588235 1.154871324 2.162683824 error value 0.000000000 error grad 1.490134824e-15
+DEAL::0.1764705882 0.1842830882 0.1920955882: 0.1764705882 1.184283088 2.192095588 error value 2.775557562e-17 error grad 2.377587740e-15
+DEAL::0.2058823529 0.2136948529 0.2215073529: 0.2058823529 1.213694853 2.221507353 error value 4.449557262e-16 error grad 1.458966358e-15
+DEAL::0.2352941176 0.2431066176 0.2509191176: 0.2352941176 1.243106618 2.250919118 error value 9.171947447e-16 error grad 1.093625221e-15
+DEAL::0.2647058824 0.2725183824 0.2803308824: 0.2647058824 1.272518382 2.280330882 error value 4.965068306e-16 error grad 1.667963990e-15
+DEAL::0.2941176471 0.3019301471 0.3097426471: 0.2941176471 1.301930147 2.309742647 error value 2.288783399e-16 error grad 1.293316433e-15
+DEAL::0.3235294118 0.3313419118 0.3391544118: 0.3235294118 1.331341912 2.339154412 error value 4.440892099e-16 error grad 2.373385746e-15
+DEAL::0.3529411765 0.3607536765 0.3685661765: 0.3529411765 1.360753676 2.368566176 error value 0.000000000 error grad 3.369302816e-15
+DEAL::
+DEAL::-12.24708041 -10.82433388 -9.438628098 -3.020545280 0.9591393997 0.8908393358 1.269596609 -3.026531705 1.073813608 -0.09155835058 -0.1414985135 -0.3070723944 1.510827207 1.381458699 -3.071304257 -0.05655169659 -0.3492856105 -0.1632474111 -0.4112540252 -0.07349366939 -0.1299505644 0.6320093773 0.6353845105 0.6471080969 -6.177321955 16.43145330 -5.509553114 -1.740317306 -1.169929230 1.094235657 15.36926464 -4.568051783 -4.361047271 -1.226177548 -1.642318375 0.8868161776 1.225211526 -1.775908295 -1.674938215 2.277325014 0.01403927710 2.030383018 -1.506677390 0.9103405805 -1.627902689 -0.1501296679 2.568605552 2.459263495 -7.690115302 -7.212571475 17.87267902 -1.841771315 1.366864941 -1.425833422 1.480359223 -1.792242919 -1.757329970 1.907769872 1.774675427 0.1599366457 -20.09557805 10.81366490 10.31943902 12.75330181 -3.066278686 -2.993906264 9.605280889 -17.76604814 8.335074218 -3.261275669 14.17766400 -2.883201002 7.952880169 7.208871455 -16.00866078 -3.333620119 -3.020493801 15.88062514 9.160265401 13.58250419 18.19960467
+DEAL::Cell with center 0.7500000000 0.2500000000 0.2500000000
+DEAL::0.5000000000 0.007812500000 0.01562500000: 0.5000000000 1.007812500 2.015625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.03722426471 0.04503676471: 0.5294117647 1.037224265 2.045036765 error value 6.377745717e-16 error grad 7.140446928e-15
+DEAL::0.5588235294 0.06663602941 0.07444852941: 0.5588235294 1.066636029 2.074448529 error value 9.222205070e-16 error grad 5.479968656e-15
+DEAL::0.5882352941 0.09604779412 0.1038602941: 0.5882352941 1.096047794 2.103860294 error value 8.881784197e-16 error grad 4.579937901e-15
+DEAL::0.6176470588 0.1254595588 0.1332720588: 0.6176470588 1.125459559 2.133272059 error value 2.220446049e-16 error grad 1.918301023e-15
+DEAL::0.6470588235 0.1548713235 0.1626838235: 0.6470588235 1.154871324 2.162683824 error value 1.110223025e-16 error grad 1.515699970e-15
+DEAL::0.6764705882 0.1842830882 0.1920955882: 0.6764705882 1.184283088 2.192095588 error value 0.000000000 error grad 2.401284686e-15
+DEAL::0.7058823529 0.2136948529 0.2215073529: 0.7058823529 1.213694853 2.221507353 error value 4.440892099e-16 error grad 1.503691063e-15
+DEAL::0.7352941176 0.2431066176 0.2509191176: 0.7352941176 1.243106618 2.250919118 error value 9.155133597e-16 error grad 1.152927720e-15
+DEAL::0.7647058824 0.2725183824 0.2803308824: 0.7647058824 1.272518382 2.280330882 error value 4.965068306e-16 error grad 1.770792085e-15
+DEAL::0.7941176471 0.3019301471 0.3097426471: 0.7941176471 1.301930147 2.309742647 error value 3.140184917e-16 error grad 1.483105468e-15
+DEAL::0.8235294118 0.3313419118 0.3391544118: 0.8235294118 1.331341912 2.339154412 error value 4.965068306e-16 error grad 2.492444509e-15
+DEAL::0.8529411765 0.3607536765 0.3685661765: 0.8529411765 1.360753676 2.368566176 error value 0.000000000 error grad 3.531835651e-15
+DEAL::
+DEAL::-11.34496302 -10.82433388 -9.438628098 -3.075312819 0.9591393997 0.8908393358 1.198716924 -3.026531705 1.073813608 -0.08814565727 -0.1414985135 -0.3070723944 1.423293553 1.381458699 -3.071304257 -0.05245461204 -0.3492856105 -0.1632474111 -0.4059307256 -0.07349366939 -0.1299505644 0.6504856547 0.6353845105 0.6471080969 -5.781725160 16.43145330 -5.509553114 -1.841513844 -1.169929230 1.094235657 15.68207762 -4.568051783 -4.361047271 -1.329281513 -1.642318375 0.8868161776 1.101673183 -1.775908295 -1.674938215 2.371931084 0.01403927710 2.030383018 -1.619675319 0.9103405805 -1.627902689 -0.04583085425 2.568605552 2.459263495 -7.203016330 -7.212571475 17.87267902 -1.952806151 1.366864941 -1.425833422 1.356678182 -1.792242919 -1.757329970 1.995312136 1.774675427 0.1599366457 -19.61329978 10.81366490 10.31943902 12.76718363 -3.066278686 -2.993906264 9.974139105 -17.76604814 8.335074218 -3.182653344 14.17766400 -2.883201002 8.225755060 7.208871455 -16.00866078 -3.184999420 -3.020493801 15.88062514 12.76848006 13.58250419 18.19960467
+DEAL::Cell with center 0.2500000000 0.7500000000 0.2500000000
+DEAL::0.000000000 0.5078125000 0.01562500000: 0.000000000 1.507812500 2.015625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.5372242647 0.04503676471: 0.02941176471 1.537224265 2.045036765 error value 4.965553153e-16 error grad 7.204896613e-15
+DEAL::0.05882352941 0.5666360294 0.07444852941: 0.05882352941 1.566636029 2.074448529 error value 8.882055243e-16 error grad 5.868977325e-15
+DEAL::0.08823529412 0.5960477941 0.1038602941: 0.08823529412 1.596047794 2.103860294 error value 8.881784197e-16 error grad 4.884843261e-15
+DEAL::0.1176470588 0.6254595588 0.1332720588: 0.1176470588 1.625459559 2.133272059 error value 1.387778781e-17 error grad 2.269769908e-15
+DEAL::0.1470588235 0.6548713235 0.1626838235: 0.1470588235 1.654871324 2.162683824 error value 0.000000000 error grad 2.826793999e-15
+DEAL::0.1764705882 0.6842830882 0.1920955882: 0.1764705882 1.684283088 2.192095588 error value 2.775557562e-17 error grad 2.298523102e-15
+DEAL::0.2058823529 0.7136948529 0.2215073529: 0.2058823529 1.713694853 2.221507353 error value 4.972820174e-16 error grad 1.548491138e-15
+DEAL::0.2352941176 0.7431066176 0.2509191176: 0.2352941176 1.743106618 2.250919118 error value 9.171947447e-16 error grad 1.182113964e-15
+DEAL::0.2647058824 0.7725183824 0.2803308824: 0.2647058824 1.772518382 2.280330882 error value 6.280369835e-16 error grad 1.695851208e-15
+DEAL::0.2941176471 0.8019301471 0.3097426471: 0.2941176471 1.801930147 2.309742647 error value 5.551115123e-17 error grad 2.258359025e-15
+DEAL::0.3235294118 0.8313419118 0.3391544118: 0.3235294118 1.831341912 2.339154412 error value 4.440892099e-16 error grad 1.793620188e-15
+DEAL::0.3529411765 0.8607536765 0.3685661765: 0.3529411765 1.860753676 2.368566176 error value 0.000000000 error grad 3.834691684e-15
+DEAL::
+DEAL::-12.24708041 -9.922216486 -9.438628098 -3.020545280 0.9043718604 0.8908393358 1.269596609 -3.097411390 1.073813608 -0.09155835058 -0.1380858202 -0.3070723944 1.510827207 1.293925045 -3.071304257 -0.05655169659 -0.3451885260 -0.1632474111 -0.4112540252 -0.06817036983 -0.1299505644 0.6320093773 0.6538607879 0.6471080969 -6.177321955 16.82705009 -5.509553114 -1.740317306 -1.271125768 1.094235657 15.36926464 -4.255238801 -4.361047271 -1.226177548 -1.745422340 0.8868161776 1.225211526 -1.899446638 -1.674938215 2.277325014 0.1086453474 2.030383018 -1.506677390 0.7973426514 -1.627902689 -0.1501296679 2.672904366 2.459263495 -7.690115302 -6.725472503 17.87267902 -1.841771315 1.255830105 -1.425833422 1.480359223 -1.915923960 -1.757329970 1.907769872 1.862217691 0.1599366457 -20.09557805 11.29594317 10.31943902 12.75330181 -3.052396861 -2.993906264 9.605280889 -17.39718992 8.335074218 -3.261275669 14.25628633 -2.883201002 7.952880169 7.481746347 -16.00866078 -3.333620119 -2.871873102 15.88062514 9.160265401 17.19071884 18.19960467
+DEAL::Cell with center 0.7500000000 0.7500000000 0.2500000000
+DEAL::0.5000000000 0.5078125000 0.01562500000: 0.5000000000 1.507812500 2.015625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.5372242647 0.04503676471: 0.5294117647 1.537224265 2.045036765 error value 5.087681049e-16 error grad 7.205882246e-15
+DEAL::0.5588235294 0.5666360294 0.07444852941: 0.5588235294 1.566636029 2.074448529 error value 8.950904183e-16 error grad 5.916999028e-15
+DEAL::0.5882352941 0.5960477941 0.1038602941: 0.5882352941 1.596047794 2.103860294 error value 8.881784197e-16 error grad 4.919083581e-15
+DEAL::0.6176470588 0.6254595588 0.1332720588: 0.6176470588 1.625459559 2.133272059 error value 2.220446049e-16 error grad 2.318485908e-15
+DEAL::0.6470588235 0.6548713235 0.1626838235: 0.6470588235 1.654871324 2.162683824 error value 1.110223025e-16 error grad 2.840353661e-15
+DEAL::0.6764705882 0.6842830882 0.1920955882: 0.6764705882 1.684283088 2.192095588 error value 0.000000000 error grad 2.323026718e-15
+DEAL::0.7058823529 0.7136948529 0.2215073529: 0.7058823529 1.713694853 2.221507353 error value 4.965068306e-16 error grad 1.590700722e-15
+DEAL::0.7352941176 0.7431066176 0.2509191176: 0.7352941176 1.743106618 2.250919118 error value 9.155133597e-16 error grad 1.237182132e-15
+DEAL::0.7647058824 0.7725183824 0.2803308824: 0.7647058824 1.772518382 2.280330882 error value 6.280369835e-16 error grad 1.797084322e-15
+DEAL::0.7941176471 0.8019301471 0.3097426471: 0.7941176471 1.801930147 2.309742647 error value 2.220446049e-16 error grad 2.372155122e-15
+DEAL::0.8235294118 0.8313419118 0.3391544118: 0.8235294118 1.831341912 2.339154412 error value 4.965068306e-16 error grad 1.948433501e-15
+DEAL::0.8529411765 0.8607536765 0.3685661765: 0.8529411765 1.860753676 2.368566176 error value 0.000000000 error grad 3.978256139e-15
+DEAL::
+DEAL::-11.34496302 -9.922216486 -9.438628098 -3.075312819 0.9043718604 0.8908393358 1.198716924 -3.097411390 1.073813608 -0.08814565727 -0.1380858202 -0.3070723944 1.423293553 1.293925045 -3.071304257 -0.05245461204 -0.3451885260 -0.1632474111 -0.4059307256 -0.06817036983 -0.1299505644 0.6504856547 0.6538607879 0.6471080969 -5.781725160 16.82705009 -5.509553114 -1.841513844 -1.271125768 1.094235657 15.68207762 -4.255238801 -4.361047271 -1.329281513 -1.745422340 0.8868161776 1.101673183 -1.899446638 -1.674938215 2.371931084 0.1086453474 2.030383018 -1.619675319 0.7973426514 -1.627902689 -0.04583085425 2.672904366 2.459263495 -7.203016330 -6.725472503 17.87267902 -1.952806151 1.255830105 -1.425833422 1.356678182 -1.915923960 -1.757329970 1.995312136 1.862217691 0.1599366457 -19.61329978 11.29594317 10.31943902 12.76718363 -3.052396861 -2.993906264 9.974139105 -17.39718992 8.335074218 -3.182653344 14.25628633 -2.883201002 8.225755060 7.481746347 -16.00866078 -3.184999420 -2.871873102 15.88062514 12.76848006 17.19071884 18.19960467
+DEAL::Cell with center 0.2500000000 0.2500000000 0.7500000000
+DEAL::0.000000000 0.007812500000 0.5156250000: 0.000000000 1.007812500 2.515625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.03722426471 0.5450367647: 0.02941176471 1.037224265 2.545036765 error value 9.930379045e-16 error grad 3.814344819e-15
+DEAL::0.05882352941 0.06663602941 0.5744485294: 0.05882352941 1.066636029 2.574448529 error value 4.965553153e-16 error grad 2.601205896e-15
+DEAL::0.08823529412 0.09604779412 0.6038602941: 0.08823529412 1.096047794 2.603860294 error value 8.881784197e-16 error grad 3.304751880e-15
+DEAL::0.1176470588 0.1254595588 0.6332720588: 0.1176470588 1.125459559 2.633272059 error value 4.443059974e-16 error grad 1.269199120e-15
+DEAL::0.1470588235 0.1548713235 0.6626838235: 0.1470588235 1.154871324 2.662683824 error value 4.440892099e-16 error grad 1.678855799e-15
+DEAL::0.1764705882 0.1842830882 0.6920955882: 0.1764705882 1.184283088 2.692095588 error value 8.886119947e-16 error grad 2.711083486e-15
+DEAL::0.2058823529 0.2136948529 0.7215073529: 0.2058823529 1.213694853 2.721507353 error value 8.886119947e-16 error grad 2.394419900e-15
+DEAL::0.2352941176 0.2431066176 0.7509191176: 0.2352941176 1.243106618 2.750919118 error value 2.288783399e-16 error grad 2.199112750e-15
+DEAL::0.2647058824 0.2725183824 0.7803308824: 0.2647058824 1.272518382 2.780330882 error value 4.965068306e-16 error grad 2.308679848e-15
+DEAL::0.2941176471 0.3019301471 0.8097426471: 0.2941176471 1.301930147 2.809742647 error value 2.288783399e-16 error grad 2.226682296e-15
+DEAL::0.3235294118 0.3313419118 0.8391544118: 0.3235294118 1.331341912 2.839154412 error value 4.440892099e-16 error grad 1.807312144e-15
+DEAL::0.3529411765 0.3607536765 0.8685661765: 0.3529411765 1.360753676 2.868566176 error value 4.440892099e-16 error grad 2.708117328e-15
+DEAL::
+DEAL::-12.24708041 -10.82433388 -8.536510708 -3.020545280 0.9591393997 0.8360717965 1.269596609 -3.026531705 1.002933924 -0.09155835058 -0.1414985135 -0.3036597011 1.510827207 1.381458699 -3.158837910 -0.05655169659 -0.3492856105 -0.1591503265 -0.4112540252 -0.07349366939 -0.1246272649 0.6320093773 0.6353845105 0.6655843743 -6.177321955 16.43145330 -5.113956319 -1.740317306 -1.169929230 0.9930391192 15.36926464 -4.568051783 -4.048234289 -1.226177548 -1.642318375 0.7837122124 1.225211526 -1.775908295 -1.798476558 2.277325014 0.01403927710 2.124989088 -1.506677390 0.9103405805 -1.740900618 -0.1501296679 2.568605552 2.563562309 -7.690115302 -7.212571475 18.35977800 -1.841771315 1.366864941 -1.536868258 1.480359223 -1.792242919 -1.881011011 1.907769872 1.774675427 0.2474789096 -20.09557805 10.81366490 10.80171729 12.75330181 -3.066278686 -2.980024439 9.605280889 -17.76604814 8.703932434 -3.261275669 14.17766400 -2.804578677 7.952880169 7.208871455 -15.73578589 -3.333620119 -3.020493801 16.02924584 9.160265401 13.58250419 21.80781932
+DEAL::Cell with center 0.7500000000 0.2500000000 0.7500000000
+DEAL::0.5000000000 0.007812500000 0.5156250000: 0.5000000000 1.007812500 2.515625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.03722426471 0.5450367647: 0.5294117647 1.037224265 2.545036765 error value 9.992007222e-16 error grad 3.816206248e-15
+DEAL::0.5588235294 0.06663602941 0.5744485294: 0.5588235294 1.066636029 2.574448529 error value 5.087681049e-16 error grad 2.707813652e-15
+DEAL::0.5882352941 0.09604779412 0.6038602941: 0.5882352941 1.096047794 2.603860294 error value 8.881784197e-16 error grad 3.355156417e-15
+DEAL::0.6176470588 0.1254595588 0.6332720588: 0.6176470588 1.125459559 2.633272059 error value 4.965068306e-16 error grad 1.354395762e-15
+DEAL::0.6470588235 0.1548713235 0.6626838235: 0.6470588235 1.154871324 2.662683824 error value 4.577566799e-16 error grad 1.701587905e-15
+DEAL::0.6764705882 0.1842830882 0.6920955882: 0.6764705882 1.184283088 2.692095588 error value 8.881784197e-16 error grad 2.731889154e-15
+DEAL::0.7058823529 0.2136948529 0.7215073529: 0.7058823529 1.213694853 2.721507353 error value 8.881784197e-16 error grad 2.421931180e-15
+DEAL::0.7352941176 0.2431066176 0.7509191176: 0.7352941176 1.243106618 2.750919118 error value 2.220446049e-16 error grad 2.229197858e-15
+DEAL::0.7647058824 0.2725183824 0.7803308824: 0.7647058824 1.272518382 2.780330882 error value 4.965068306e-16 error grad 2.384030910e-15
+DEAL::0.7941176471 0.3019301471 0.8097426471: 0.7941176471 1.301930147 2.809742647 error value 3.140184917e-16 error grad 2.342018036e-15
+DEAL::0.8235294118 0.3313419118 0.8391544118: 0.8235294118 1.331341912 2.839154412 error value 4.965068306e-16 error grad 1.961044852e-15
+DEAL::0.8529411765 0.3607536765 0.8685661765: 0.8529411765 1.360753676 2.868566176 error value 4.440892099e-16 error grad 2.907844746e-15
+DEAL::
+DEAL::-11.34496302 -10.82433388 -8.536510708 -3.075312819 0.9591393997 0.8360717965 1.198716924 -3.026531705 1.002933924 -0.08814565727 -0.1414985135 -0.3036597011 1.423293553 1.381458699 -3.158837910 -0.05245461204 -0.3492856105 -0.1591503265 -0.4059307256 -0.07349366939 -0.1246272649 0.6504856547 0.6353845105 0.6655843743 -5.781725160 16.43145330 -5.113956319 -1.841513844 -1.169929230 0.9930391192 15.68207762 -4.568051783 -4.048234289 -1.329281513 -1.642318375 0.7837122124 1.101673183 -1.775908295 -1.798476558 2.371931084 0.01403927710 2.124989088 -1.619675319 0.9103405805 -1.740900618 -0.04583085425 2.568605552 2.563562309 -7.203016330 -7.212571475 18.35977800 -1.952806151 1.366864941 -1.536868258 1.356678182 -1.792242919 -1.881011011 1.995312136 1.774675427 0.2474789096 -19.61329978 10.81366490 10.80171729 12.76718363 -3.066278686 -2.980024439 9.974139105 -17.76604814 8.703932434 -3.182653344 14.17766400 -2.804578677 8.225755060 7.208871455 -15.73578589 -3.184999420 -3.020493801 16.02924584 12.76848006 13.58250419 21.80781932
+DEAL::Cell with center 0.2500000000 0.7500000000 0.7500000000
+DEAL::0.000000000 0.5078125000 0.5156250000: 0.000000000 1.507812500 2.515625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.02941176471 0.5372242647 0.5450367647: 0.02941176471 1.537224265 2.545036765 error value 9.155396551e-16 error grad 3.935477481e-15
+DEAL::0.05882352941 0.5666360294 0.5744485294: 0.05882352941 1.566636029 2.574448529 error value 4.441434167e-16 error grad 3.427403266e-15
+DEAL::0.08823529412 0.5960477941 0.6038602941: 0.08823529412 1.596047794 2.603860294 error value 8.881784197e-16 error grad 3.760709652e-15
+DEAL::0.1176470588 0.6254595588 0.6332720588: 0.1176470588 1.625459559 2.633272059 error value 4.443059974e-16 error grad 1.818341139e-15
+DEAL::0.1470588235 0.6548713235 0.6626838235: 0.1470588235 1.654871324 2.662683824 error value 4.440892099e-16 error grad 2.930668748e-15
+DEAL::0.1764705882 0.6842830882 0.6920955882: 0.1764705882 1.684283088 2.692095588 error value 8.886119947e-16 error grad 2.642017914e-15
+DEAL::0.2058823529 0.7136948529 0.7215073529: 0.2058823529 1.713694853 2.721507353 error value 9.159339953e-16 error grad 2.449997680e-15
+DEAL::0.2352941176 0.7431066176 0.7509191176: 0.2352941176 1.743106618 2.750919118 error value 2.288783399e-16 error grad 2.244431819e-15
+DEAL::0.2647058824 0.7725183824 0.7803308824: 0.2647058824 1.772518382 2.780330882 error value 6.280369835e-16 error grad 2.328907489e-15
+DEAL::0.2941176471 0.8019301471 0.8097426471: 0.2941176471 1.801930147 2.809742647 error value 5.551115123e-17 error grad 2.895795597e-15
+DEAL::0.3235294118 0.8313419118 0.8391544118: 0.3235294118 1.831341912 2.839154412 error value 4.440892099e-16 error grad 9.222205070e-16
+DEAL::0.3529411765 0.8607536765 0.8685661765: 0.3529411765 1.860753676 2.868566176 error value 4.440892099e-16 error grad 3.269030179e-15
+DEAL::
+DEAL::-12.24708041 -9.922216486 -8.536510708 -3.020545280 0.9043718604 0.8360717965 1.269596609 -3.097411390 1.002933924 -0.09155835058 -0.1380858202 -0.3036597011 1.510827207 1.293925045 -3.158837910 -0.05655169659 -0.3451885260 -0.1591503265 -0.4112540252 -0.06817036983 -0.1246272649 0.6320093773 0.6538607879 0.6655843743 -6.177321955 16.82705009 -5.113956319 -1.740317306 -1.271125768 0.9930391192 15.36926464 -4.255238801 -4.048234289 -1.226177548 -1.745422340 0.7837122124 1.225211526 -1.899446638 -1.798476558 2.277325014 0.1086453474 2.124989088 -1.506677390 0.7973426514 -1.740900618 -0.1501296679 2.672904366 2.563562309 -7.690115302 -6.725472503 18.35977800 -1.841771315 1.255830105 -1.536868258 1.480359223 -1.915923960 -1.881011011 1.907769872 1.862217691 0.2474789096 -20.09557805 11.29594317 10.80171729 12.75330181 -3.052396861 -2.980024439 9.605280889 -17.39718992 8.703932434 -3.261275669 14.25628633 -2.804578677 7.952880169 7.481746347 -15.73578589 -3.333620119 -2.871873102 16.02924584 9.160265401 17.19071884 21.80781932
+DEAL::Cell with center 0.7500000000 0.7500000000 0.7500000000
+DEAL::0.5000000000 0.5078125000 0.5156250000: 0.5000000000 1.507812500 2.515625000 error value 0.000000000 error grad 0.000000000
+DEAL::0.5294117647 0.5372242647 0.5450367647: 0.5294117647 1.537224265 2.545036765 error value 9.222205070e-16 error grad 3.937281643e-15
+DEAL::0.5588235294 0.5666360294 0.5744485294: 0.5588235294 1.566636029 2.574448529 error value 4.577566799e-16 error grad 3.508999260e-15
+DEAL::0.5882352941 0.5960477941 0.6038602941: 0.5882352941 1.596047794 2.603860294 error value 8.881784197e-16 error grad 3.805079063e-15
+DEAL::0.6176470588 0.6254595588 0.6332720588: 0.6176470588 1.625459559 2.633272059 error value 4.965068306e-16 error grad 1.878799077e-15
+DEAL::0.6470588235 0.6548713235 0.6626838235: 0.6470588235 1.654871324 2.662683824 error value 4.577566799e-16 error grad 2.943749975e-15
+DEAL::0.6764705882 0.6842830882 0.6920955882: 0.6764705882 1.684283088 2.692095588 error value 8.881784197e-16 error grad 2.663363163e-15
+DEAL::0.7058823529 0.7136948529 0.7215073529: 0.7058823529 1.713694853 2.721507353 error value 9.155133597e-16 error grad 2.476891724e-15
+DEAL::0.7352941176 0.7431066176 0.7509191176: 0.7352941176 1.743106618 2.750919118 error value 2.220446049e-16 error grad 2.273917411e-15
+DEAL::0.7647058824 0.7725183824 0.7803308824: 0.7647058824 1.772518382 2.780330882 error value 6.280369835e-16 error grad 2.403624519e-15
+DEAL::0.7941176471 0.8019301471 0.8097426471: 0.7941176471 1.801930147 2.809742647 error value 2.220446049e-16 error grad 2.985392197e-15
+DEAL::0.8235294118 0.8313419118 0.8391544118: 0.8235294118 1.831341912 2.839154412 error value 4.965068306e-16 error grad 1.195746792e-15
+DEAL::0.8529411765 0.8607536765 0.8685661765: 0.8529411765 1.860753676 2.868566176 error value 4.440892099e-16 error grad 3.436309054e-15
+DEAL::
+DEAL::-11.34496302 -9.922216486 -8.536510708 -3.075312819 0.9043718604 0.8360717965 1.198716924 -3.097411390 1.002933924 -0.08814565727 -0.1380858202 -0.3036597011 1.423293553 1.293925045 -3.158837910 -0.05245461204 -0.3451885260 -0.1591503265 -0.4059307256 -0.06817036983 -0.1246272649 0.6504856547 0.6538607879 0.6655843743 -5.781725160 16.82705009 -5.113956319 -1.841513844 -1.271125768 0.9930391192 15.68207762 -4.255238801 -4.048234289 -1.329281513 -1.745422340 0.7837122124 1.101673183 -1.899446638 -1.798476558 2.371931084 0.1086453474 2.124989088 -1.619675319 0.7973426514 -1.740900618 -0.04583085425 2.672904366 2.563562309 -7.203016330 -6.725472503 18.35977800 -1.952806151 1.255830105 -1.536868258 1.356678182 -1.915923960 -1.881011011 1.995312136 1.862217691 0.2474789096 -19.61329978 11.29594317 10.80171729 12.76718363 -3.052396861 -2.980024439 9.974139105 -17.39718992 8.703932434 -3.182653344 14.25628633 -2.804578677 8.225755060 7.481746347 -15.73578589 -3.184999420 -2.871873102 16.02924584 12.76848006 17.19071884 21.80781932