]> https://gitweb.dealii.org/ - dealii.git/commitdiff
add MCA algorithm for 1d 14305/head
authorMagdalena Schreter <schreter.magdalena@gmail.com>
Wed, 21 Sep 2022 20:59:01 +0000 (22:59 +0200)
committerMagdalena Schreter <schreter.magdalena@gmail.com>
Sat, 24 Sep 2022 08:27:57 +0000 (10:27 +0200)
doc/news/changes/minor/20220923SchreterMunch [new file with mode: 0644]
include/deal.II/grid/grid_tools.h
source/grid/grid_tools.cc
source/grid/grid_tools.inst.in
tests/grid/grid_generator_marching_cube_algorithm_01.cc
tests/grid/grid_generator_marching_cube_algorithm_02.cc [new file with mode: 0644]
tests/grid/grid_generator_marching_cube_algorithm_02.with_p4est=true.mpirun=1.output [new file with mode: 0644]

diff --git a/doc/news/changes/minor/20220923SchreterMunch b/doc/news/changes/minor/20220923SchreterMunch
new file mode 100644 (file)
index 0000000..a3c21aa
--- /dev/null
@@ -0,0 +1,3 @@
+New: The GridTools::MarchingCubeAlgorithm supports now also 1D.
+<br>
+(Magdalena Schreter, Peter Munch, 2022/09/23)
index b04f3265c376804dcbfd68cbe3a20a539faee9d7..25aa2220ce0ee2cb8464885ebf73577900958c9a 100644 (file)
@@ -3440,26 +3440,53 @@ namespace GridTools
     /**
      * Process all locally-owned cells and fill @p vertices and @p cells for all
      * cells that are cut.
+     *
+     * @note: This function is only implemented for dim>1. Use
+     * process(background_dof_handler, ls_vector, iso_level, vertices) for
+     * dim==1.
+     */
+    void
+    process(const DoFHandler<dim> &  background_dof_handler,
+            const VectorType &       ls_vector,
+            const double             iso_level,
+            std::vector<Point<dim>> &vertices,
+            std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells) const;
+
+    /**
+     * Process all locally-owned cells and fill @p vertices for all cells that
+     * are cut.
      */
     void
-    process(const DoFHandler<dim> &         background_dof_handler,
-            const VectorType &              ls_vector,
-            const double                    iso_level,
-            std::vector<Point<dim>> &       vertices,
-            std::vector<CellData<dim - 1>> &cells) const;
+    process(const DoFHandler<dim> &  background_dof_handler,
+            const VectorType &       ls_vector,
+            const double             iso_level,
+            std::vector<Point<dim>> &vertices) const;
 
     /**
      * Process the provided cell and fill @p vertices and @p cells for all cells
      * that are cut.
      *
      * @note The resulting vectors are empty if the cell is not cut.
+     *
+     * @note: This function is only implemented for dim>1. Use
+     * process_cell(cell, ls_vector, iso_level, vertices) for dim==1.
      */
     void
     process_cell(const typename DoFHandler<dim>::active_cell_iterator &cell,
-                 const VectorType &              ls_vector,
-                 const double                    iso_level,
-                 std::vector<Point<dim>> &       vertices,
-                 std::vector<CellData<dim - 1>> &cells) const;
+                 const VectorType &                             ls_vector,
+                 const double                                   iso_level,
+                 std::vector<Point<dim>> &                      vertices,
+                 std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells) const;
+    /**
+     * Process the provided cell and fill @p vertices for all cells that are cut.
+     *
+     * @note The resulting vector is empty if the cell is not cut.
+     */
+    void
+    process_cell(const typename DoFHandler<dim>::active_cell_iterator &cell,
+                 const VectorType &       ls_vector,
+                 const double             iso_level,
+                 std::vector<Point<dim>> &vertices) const;
 
   private:
     /**
@@ -3473,11 +3500,27 @@ namespace GridTools
      * Process a cell.
      */
     void
-    process_cell(std::vector<value_type> &       ls_values,
-                 const std::vector<Point<dim>> & points,
-                 const double                    iso_level,
-                 std::vector<Point<dim>> &       vertices,
-                 std::vector<CellData<dim - 1>> &cells) const;
+    process_cell(std::vector<value_type> &                      ls_values,
+                 const std::vector<Point<dim>> &                points,
+                 const double                                   iso_level,
+                 std::vector<Point<dim>> &                      vertices,
+                 std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells,
+                 const bool write_back_cell_data = true) const;
+
+    /**
+     * Dummy function for 1D processing a sub-cell.
+     */
+    void
+    process_sub_cell(const std::vector<value_type> &,
+                     const std::vector<Point<1>> &,
+                     const std::vector<unsigned int> &,
+                     const double,
+                     std::vector<Point<1>> &,
+                     std::vector<CellData<1>> &,
+                     const bool) const
+    {
+      AssertThrow(false, ExcNotImplemented());
+    }
 
     /**
      * Process a sub-cell (2D).
@@ -3486,23 +3529,25 @@ namespace GridTools
      *   of subdivisions in this case.
      */
     void
-    process_sub_cell(const std::vector<value_type> & ls_values,
-                     const std::vector<Point<2>> &   points,
-                     const std::vector<unsigned int> mask,
-                     const double                    iso_level,
-                     std::vector<Point<2>> &         vertices,
-                     std::vector<CellData<1>> &      cells) const;
+    process_sub_cell(const std::vector<value_type> &  ls_values,
+                     const std::vector<Point<2>> &    points,
+                     const std::vector<unsigned int> &mask,
+                     const double                     iso_level,
+                     std::vector<Point<2>> &          vertices,
+                     std::vector<CellData<1>> &       cells,
+                     const bool write_back_cell_data) const;
 
     /**
      * Process a sub-cell (3D).
      */
     void
-    process_sub_cell(const std::vector<value_type> & ls_values,
-                     const std::vector<Point<3>> &   points,
-                     const std::vector<unsigned int> mask,
-                     const double                    iso_level,
-                     std::vector<Point<3>> &         vertices,
-                     std::vector<CellData<2>> &      cells) const;
+    process_sub_cell(const std::vector<value_type> &  ls_values,
+                     const std::vector<Point<3>> &    points,
+                     const std::vector<unsigned int> &mask,
+                     const double                     iso_level,
+                     std::vector<Point<3>> &          vertices,
+                     std::vector<CellData<2>> &       cells,
+                     const bool write_back_cell_data) const;
 
     /**
      * Number of subdivisions each cell is subdivided into in each direction to
index fba8c7ac4809bb8016ed9e66966deda57ccece64..60327d834f455318f8420d334814f0c4c8a0c562 100644 (file)
@@ -6670,7 +6670,12 @@ namespace GridTools
   {
     std::vector<Point<dim>> quadrature_points;
 
-    if (dim == 2)
+    if (dim == 1)
+      {
+        for (unsigned int i = 0; i <= n_subdivisions; ++i)
+          quadrature_points.emplace_back(1.0 / n_subdivisions * i);
+      }
+    else if (dim == 2)
       {
         for (unsigned int j = 0; j <= n_subdivisions; ++j)
           for (unsigned int i = 0; i <= n_subdivisions; ++i)
@@ -6696,17 +6701,35 @@ namespace GridTools
   template <int dim, typename VectorType>
   void
   MarchingCubeAlgorithm<dim, VectorType>::process(
-    const DoFHandler<dim> &         background_dof_handler,
-    const VectorType &              ls_vector,
-    const double                    iso_level,
-    std::vector<Point<dim>> &       vertices,
-    std::vector<CellData<dim - 1>> &cells) const
+    const DoFHandler<dim> &                        background_dof_handler,
+    const VectorType &                             ls_vector,
+    const double                                   iso_level,
+    std::vector<Point<dim>> &                      vertices,
+    std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells) const
   {
+    AssertThrow(
+      dim > 1,
+      ExcMessage(
+        "Not implemented for dim==1. Use the alternative process()-function "
+        "not returning a vector of CellData objects."));
+
     for (const auto &cell : background_dof_handler.active_cell_iterators() |
                               IteratorFilters::LocallyOwnedCell())
       process_cell(cell, ls_vector, iso_level, vertices, cells);
   }
 
+  template <int dim, typename VectorType>
+  void
+  MarchingCubeAlgorithm<dim, VectorType>::process(
+    const DoFHandler<dim> &  background_dof_handler,
+    const VectorType &       ls_vector,
+    const double             iso_level,
+    std::vector<Point<dim>> &vertices) const
+  {
+    for (const auto &cell : background_dof_handler.active_cell_iterators() |
+                              IteratorFilters::LocallyOwnedCell())
+      process_cell(cell, ls_vector, iso_level, vertices);
+  }
 
 
   template <int dim, typename VectorType>
@@ -6716,8 +6739,14 @@ namespace GridTools
     const VectorType &                                    ls_vector,
     const double                                          iso_level,
     std::vector<Point<dim>> &                             vertices,
-    std::vector<CellData<dim - 1>> &                      cells) const
+    std::vector<CellData<dim == 1 ? 1 : dim - 1>> &       cells) const
   {
+    AssertThrow(
+      dim > 1,
+      ExcMessage(
+        "Not implemented for dim==1. Use the alternative process_cell()-function "
+        "not returning a vector of CellData objects."));
+
     std::vector<value_type> ls_values;
 
     fe_values.reinit(cell);
@@ -6727,20 +6756,81 @@ namespace GridTools
       ls_values, fe_values.get_quadrature_points(), iso_level, vertices, cells);
   }
 
+  template <int dim, typename VectorType>
+  void
+  MarchingCubeAlgorithm<dim, VectorType>::process_cell(
+    const typename DoFHandler<dim>::active_cell_iterator &cell,
+    const VectorType &                                    ls_vector,
+    const double                                          iso_level,
+    std::vector<Point<dim>> &                             vertices) const
+  {
+    // This vector is just a placeholder to reuse the process_cell function.
+    std::vector<CellData<dim == 1 ? 1 : dim - 1>> dummy_cells;
+
+    std::vector<value_type> ls_values;
+
+    fe_values.reinit(cell);
+    ls_values.resize(fe_values.n_quadrature_points);
+    fe_values.get_function_values(ls_vector, ls_values);
+
+    process_cell(ls_values,
+                 fe_values.get_quadrature_points(),
+                 iso_level,
+                 vertices,
+                 dummy_cells,
+                 false /*don't write back cell data*/);
+  }
 
 
   template <int dim, typename VectorType>
   void
   MarchingCubeAlgorithm<dim, VectorType>::process_cell(
-    std::vector<value_type> &       ls_values,
-    const std::vector<Point<dim>> & points,
-    const double                    iso_level,
-    std::vector<Point<dim>> &       vertices,
-    std::vector<CellData<dim - 1>> &cells) const
+    std::vector<value_type> &                      ls_values,
+    const std::vector<Point<dim>> &                points,
+    const double                                   iso_level,
+    std::vector<Point<dim>> &                      vertices,
+    std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells,
+    const bool                                     write_back_cell_data) const
   {
     const unsigned p = n_subdivisions + 1;
 
-    if (dim == 2)
+    if (dim == 1)
+      {
+        for (unsigned int i = 0; i < n_subdivisions; ++i)
+          {
+            std::vector<unsigned int> mask{i + 0, i + 1};
+
+            // check if a corner node is cut
+            if (std::abs(iso_level - ls_values[mask[0]]) < tolerance)
+              vertices.emplace_back(points[mask[0]]);
+            else if (std::abs(iso_level - ls_values[mask[1]]) < tolerance)
+              {
+                if (i + 1 == n_subdivisions)
+                  vertices.emplace_back(points[mask[1]]);
+              }
+            // check for a saddle point, if iso_level values of the two
+            // corner nodes are identical
+            else if ((std::abs(ls_values[mask[0]] - ls_values[mask[1]]) <
+                      tolerance) &&
+                     (ls_values[mask[0]] >= iso_level))
+              vertices.emplace_back(0.5 * (points[mask[0]] + points[mask[1]]));
+            // check if the edge is cut
+            else if (((ls_values[mask[0]] > iso_level) &&
+                      (ls_values[mask[1]] < iso_level)) ||
+                     ((ls_values[mask[0]] < iso_level) &&
+                      (ls_values[mask[1]] > iso_level)))
+              {
+                // determine the interpolation weight (0<mu<1)
+                const double mu = (iso_level - ls_values[mask[0]]) /
+                                  (ls_values[mask[1]] - ls_values[mask[0]]);
+
+                // interpolate
+                vertices.emplace_back(points[mask[0]] +
+                                      mu * (points[mask[1]] - points[mask[0]]));
+              }
+          }
+      }
+    else if (dim == 2)
       {
         for (unsigned int j = 0; j < n_subdivisions; ++j)
           for (unsigned int i = 0; i < n_subdivisions; ++i)
@@ -6750,8 +6840,13 @@ namespace GridTools
                                              p * (j + 1) + (i + 1),
                                              p * (j + 1) + (i + 0)};
 
-              process_sub_cell(
-                ls_values, points, mask, iso_level, vertices, cells);
+              process_sub_cell(ls_values,
+                               points,
+                               mask,
+                               iso_level,
+                               vertices,
+                               cells,
+                               write_back_cell_data);
             }
       }
     else if (dim == 3)
@@ -6770,8 +6865,13 @@ namespace GridTools
                   p * p * (k + 1) + p * (j + 1) + (i + 1),
                   p * p * (k + 1) + p * (j + 1) + (i + 0)};
 
-                process_sub_cell(
-                  ls_values, points, mask, iso_level, vertices, cells);
+                process_sub_cell(ls_values,
+                                 points,
+                                 mask,
+                                 iso_level,
+                                 vertices,
+                                 cells,
+                                 write_back_cell_data);
               }
       }
   }
@@ -6791,14 +6891,15 @@ namespace GridTools
     process_sub_cell(
       const std::array<unsigned int, n_configurations> &     cut_line_table,
       const ndarray<unsigned int, n_configurations, n_cols> &new_line_table,
-      const ndarray<unsigned int, n_lines, 2> &line_to_vertex_table,
-      const std::vector<value_type> &          ls_values,
-      const std::vector<Point<dim>> &          points,
-      const std::vector<unsigned int> &        mask,
-      const double                             iso_level,
-      const double                             tolerance,
-      std::vector<Point<dim>> &                vertices,
-      std::vector<CellData<dim - 1>> &         cells)
+      const ndarray<unsigned int, n_lines, 2> &      line_to_vertex_table,
+      const std::vector<value_type> &                ls_values,
+      const std::vector<Point<dim>> &                points,
+      const std::vector<unsigned int> &              mask,
+      const double                                   iso_level,
+      const double                                   tolerance,
+      std::vector<Point<dim>> &                      vertices,
+      std::vector<CellData<dim == 1 ? 1 : dim - 1>> &cells,
+      const bool                                     write_back_cell_data)
     {
       // inspired by https://graphics.stanford.edu/~mdfisher/MarchingCubes.html
 
@@ -6858,16 +6959,19 @@ namespace GridTools
         vertices.push_back(vertex_list_reduced[i]);
 
       // write back cells
-      for (unsigned int i = 0; new_line_table[configuration][i] != X;
-           i += n_sub_vertices)
+      if (write_back_cell_data && dim > 1)
         {
-          cells.resize(cells.size() + 1);
-          cells.back().vertices.resize(n_sub_vertices);
+          for (unsigned int i = 0; new_line_table[configuration][i] != X;
+               i += n_sub_vertices)
+            {
+              cells.resize(cells.size() + 1);
+              cells.back().vertices.resize(n_sub_vertices);
 
-          for (unsigned int v = 0; v < n_sub_vertices; ++v)
-            cells.back().vertices[v] =
-              local_remap[new_line_table[configuration][i + v]] +
-              n_vertices_old;
+              for (unsigned int v = 0; v < n_sub_vertices; ++v)
+                cells.back().vertices[v] =
+                  local_remap[new_line_table[configuration][i + v]] +
+                  n_vertices_old;
+            }
         }
     }
   } // namespace internal
@@ -6877,12 +6981,13 @@ namespace GridTools
   template <int dim, typename VectorType>
   void
   MarchingCubeAlgorithm<dim, VectorType>::process_sub_cell(
-    const std::vector<value_type> & ls_values,
-    const std::vector<Point<2>> &   points,
-    const std::vector<unsigned int> mask,
-    const double                    iso_level,
-    std::vector<Point<2>> &         vertices,
-    std::vector<CellData<1>> &      cells) const
+    const std::vector<value_type> &  ls_values,
+    const std::vector<Point<2>> &    points,
+    const std::vector<unsigned int> &mask,
+    const double                     iso_level,
+    std::vector<Point<2>> &          vertices,
+    std::vector<CellData<1>> &       cells,
+    const bool                       write_back_cell_data) const
   {
     // set up dimension-dependent sizes and tables
     constexpr unsigned int n_vertices       = 4;
@@ -6891,7 +6996,7 @@ namespace GridTools
     constexpr unsigned int n_configurations = Utilities::pow(2, n_vertices);
     constexpr unsigned int X                = static_cast<unsigned int>(-1);
 
-    // table that indicates if an edge is cut (it the i-th bit is set the i-th
+    // table that indicates if an edge is cut (if the i-th bit is set the i-th
     // line is cut)
     constexpr std::array<unsigned int, n_configurations> cut_line_table = {
       {0b0000,
@@ -6950,7 +7055,8 @@ namespace GridTools
                                   iso_level,
                                   tolerance,
                                   vertices,
-                                  cells);
+                                  cells,
+                                  write_back_cell_data);
   }
 
 
@@ -6958,12 +7064,13 @@ namespace GridTools
   template <int dim, typename VectorType>
   void
   MarchingCubeAlgorithm<dim, VectorType>::process_sub_cell(
-    const std::vector<value_type> & ls_values,
-    const std::vector<Point<3>> &   points,
-    const std::vector<unsigned int> mask,
-    const double                    iso_level,
-    std::vector<Point<3>> &         vertices,
-    std::vector<CellData<2>> &      cells) const
+    const std::vector<value_type> &  ls_values,
+    const std::vector<Point<3>> &    points,
+    const std::vector<unsigned int> &mask,
+    const double                     iso_level,
+    std::vector<Point<3>> &          vertices,
+    std::vector<CellData<2>> &       cells,
+    const bool                       write_back_cell_data) const
   {
     // set up dimension-dependent sizes and tables
     constexpr unsigned int n_vertices       = 8;
@@ -6973,7 +7080,7 @@ namespace GridTools
     constexpr unsigned int X                = static_cast<unsigned int>(-1);
 
     // clang-format off
-    // table that indicates if an edge is cut (it the i-th bit is set the i-th
+    // table that indicates if an edge is cut (if the i-th bit is set the i-th
     // line is cut)
     constexpr std::array<unsigned int, n_configurations> cut_line_table = {{
       0x0,   0x109, 0x203, 0x30a, 0x406, 0x50f, 0x605, 0x70c, 0x80c, 0x905,
@@ -7294,7 +7401,8 @@ namespace GridTools
                                    iso_level,
                                    tolerance,
                                    vertices,
-                                   cells);
+                                   cells,
+                                   write_back_cell_data);
   }
 
 } /* namespace GridTools */
index b91bd63eecc8a62150044e7627838e1c16d0d046..1b709413faf1705beb552f69792a90b1bd34343f 100644 (file)
@@ -511,8 +511,6 @@ for (deal_II_dimension : DIMENSIONS)
 
 for (deal_II_vec : REAL_NONBLOCK_VECTORS; deal_II_dimension : DIMENSIONS)
   {
-#if deal_II_dimension > 1
     template class GridTools::MarchingCubeAlgorithm<deal_II_dimension,
                                                     deal_II_vec>;
-#endif
   }
index 5f83685f3fddc09176d833152e53c168144f675e..88595adb1fbf41b180b8297b5ddb9148c737cee6 100644 (file)
@@ -145,13 +145,7 @@ template <int dim>
 void
 test(const unsigned int n_subdivisions, const double iso_level)
 {
-  const unsigned int spacedim = dim + 1;
-
-  const unsigned int fe_degree      = 3;
-  const unsigned int mapping_degree = fe_degree;
-  const unsigned int n_refinements  = 5;
-
-
+  const unsigned int spacedim             = dim + 1;
   const unsigned int background_fe_degree = 3;
 
   parallel::shared::Triangulation<spacedim> background_tria(
diff --git a/tests/grid/grid_generator_marching_cube_algorithm_02.cc b/tests/grid/grid_generator_marching_cube_algorithm_02.cc
new file mode 100644 (file)
index 0000000..019573f
--- /dev/null
@@ -0,0 +1,124 @@
+// ---------------------------------------------------------------------
+//
+// 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.
+//
+// ---------------------------------------------------------------------
+
+// Test GridTools::MarchingCubeAlgorithm<dim>::process()
+
+#include <deal.II/base/function_signed_distance.h>
+
+#include <deal.II/distributed/tria.h>
+
+#include <deal.II/dofs/dof_handler.h>
+
+#include <deal.II/fe/fe_q.h>
+#include <deal.II/fe/mapping_q1.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_tools.h>
+
+#include <deal.II/lac/la_parallel_vector.h>
+
+#include <deal.II/matrix_free/matrix_free.h>
+
+#include <deal.II/numerics/data_out.h>
+#include <deal.II/numerics/vector_tools.h>
+
+#include <iostream>
+
+#include "../tests.h"
+
+using namespace dealii;
+
+using VectorType = LinearAlgebra::distributed::Vector<double>;
+
+template <int dim>
+void
+test(const unsigned int n_subdivisions, const double iso_level)
+{
+  deallog << "dim=" << dim << " iso level: " << iso_level << std::endl;
+  const int degree        = 3;
+  const int n_refinements = 5;
+
+  parallel::shared::Triangulation<dim> triangulation(MPI_COMM_WORLD);
+
+  GridGenerator::hyper_cube(triangulation, -1.5, 1.5);
+
+  triangulation.refine_global(n_refinements);
+
+  FE_Q<dim>      fe(degree);
+  MappingQ1<dim> mapping;
+
+  DoFHandler<dim> background_dof_handler;
+  background_dof_handler.reinit(triangulation);
+  background_dof_handler.distribute_dofs(fe);
+
+  VectorType ls_vector;
+  IndexSet   locally_relevant_dofs;
+  DoFTools::extract_locally_relevant_dofs(background_dof_handler,
+                                          locally_relevant_dofs);
+
+
+  ls_vector.reinit(background_dof_handler.locally_owned_dofs(),
+                   locally_relevant_dofs,
+                   MPI_COMM_WORLD);
+
+  dealii::VectorTools::interpolate(
+    mapping,
+    background_dof_handler,
+    Functions::SignedDistance::Sphere<dim>(Point<dim>(), 0.75),
+    ls_vector);
+
+  std::vector<Point<dim>> vertices;
+
+  const GridTools::MarchingCubeAlgorithm<dim, VectorType> mc(
+    mapping, background_dof_handler.get_fe(), n_subdivisions);
+
+  ls_vector.update_ghost_values();
+  mc.process(background_dof_handler, ls_vector, iso_level, vertices);
+
+  for (const auto &v : vertices)
+    deallog << "point found: " << v << std::endl;
+
+  if (false /*write background mesh*/)
+    {
+      DataOut<dim> data_out;
+      data_out.attach_dof_handler(background_dof_handler);
+      data_out.add_data_vector(ls_vector, "level_set");
+      data_out.build_patches(2);
+      data_out.write_vtu_with_pvtu_record("./",
+                                          "data_background_" +
+                                            std::to_string(n_subdivisions),
+                                          0,
+                                          triangulation.get_communicator());
+    }
+}
+
+int
+main(int argc, char *argv[])
+{
+  Utilities::MPI::MPI_InitFinalize mpi_initialization(argc, argv, 1);
+  MPILogInitAll                    all;
+
+  deallog << std::scientific << std::setprecision(6);
+
+  // dim==1
+  for (unsigned int i = 1; i <= 3; ++i)
+    test<1>(i, -0.1 + i * 0.05);
+
+  // dim==2
+  for (unsigned int i = 1; i <= 3; ++i)
+    test<2>(i, -0.1 + i * 0.05);
+
+  return 0;
+}
diff --git a/tests/grid/grid_generator_marching_cube_algorithm_02.with_p4est=true.mpirun=1.output b/tests/grid/grid_generator_marching_cube_algorithm_02.with_p4est=true.mpirun=1.output
new file mode 100644 (file)
index 0000000..a02ac59
--- /dev/null
@@ -0,0 +1,791 @@
+
+DEAL:0::dim=1 iso level: -5.000000e-02
+DEAL:0::point found: -7.000000e-01
+DEAL:0::point found: 7.000000e-01
+DEAL:0::dim=1 iso level: 0.000000e+00
+DEAL:0::point found: -7.500000e-01
+DEAL:0::point found: -7.500000e-01
+DEAL:0::point found: 7.500000e-01
+DEAL:0::point found: 7.500000e-01
+DEAL:0::dim=1 iso level: 5.000000e-02
+DEAL:0::point found: -8.000000e-01
+DEAL:0::point found: 8.000000e-01
+DEAL:0::dim=2 iso level: -5.000000e-02
+DEAL:0::point found: -3.750000e-01 -5.906490e-01
+DEAL:0::point found: -4.149887e-01 -5.625000e-01
+DEAL:0::point found: -5.625000e-01 -4.149887e-01
+DEAL:0::point found: -5.906490e-01 -3.750000e-01
+DEAL:0::point found: -4.687500e-01 -5.189236e-01
+DEAL:0::point found: -5.189236e-01 -4.687500e-01
+DEAL:0::point found: -4.687500e-01 -5.189236e-01
+DEAL:0::point found: -4.149887e-01 -5.625000e-01
+DEAL:0::point found: -5.625000e-01 -4.149887e-01
+DEAL:0::point found: -5.189236e-01 -4.687500e-01
+DEAL:0::point found: -1.875000e-01 -6.743534e-01
+DEAL:0::point found: -2.396049e-01 -6.562500e-01
+DEAL:0::point found: -3.750000e-01 -5.906490e-01
+DEAL:0::point found: -2.812500e-01 -6.408476e-01
+DEAL:0::point found: -2.812500e-01 -6.408476e-01
+DEAL:0::point found: -2.396049e-01 -6.562500e-01
+DEAL:0::point found: -1.875000e-01 -6.743534e-01
+DEAL:0::point found: -9.375000e-02 -6.936670e-01
+DEAL:0::point found: -9.375000e-02 -6.936670e-01
+DEAL:0::point found: 0.000000e+00 -7.000000e-01
+DEAL:0::point found: -5.906490e-01 -3.750000e-01
+DEAL:0::point found: -6.408476e-01 -2.812500e-01
+DEAL:0::point found: -6.562500e-01 -2.396049e-01
+DEAL:0::point found: -6.743534e-01 -1.875000e-01
+DEAL:0::point found: -6.562500e-01 -2.396049e-01
+DEAL:0::point found: -6.408476e-01 -2.812500e-01
+DEAL:0::point found: -6.743534e-01 -1.875000e-01
+DEAL:0::point found: -6.936670e-01 -9.375000e-02
+DEAL:0::point found: -6.936670e-01 -9.375000e-02
+DEAL:0::point found: -7.000000e-01 0.000000e+00
+DEAL:0::point found: 0.000000e+00 -7.000000e-01
+DEAL:0::point found: 9.375000e-02 -6.936670e-01
+DEAL:0::point found: 9.375000e-02 -6.936670e-01
+DEAL:0::point found: 1.875000e-01 -6.743534e-01
+DEAL:0::point found: 1.875000e-01 -6.743534e-01
+DEAL:0::point found: 2.396049e-01 -6.562500e-01
+DEAL:0::point found: 2.396049e-01 -6.562500e-01
+DEAL:0::point found: 2.812500e-01 -6.408476e-01
+DEAL:0::point found: 2.812500e-01 -6.408476e-01
+DEAL:0::point found: 3.750000e-01 -5.906490e-01
+DEAL:0::point found: 3.750000e-01 -5.906490e-01
+DEAL:0::point found: 4.149887e-01 -5.625000e-01
+DEAL:0::point found: 4.149887e-01 -5.625000e-01
+DEAL:0::point found: 4.687500e-01 -5.189236e-01
+DEAL:0::point found: 4.687500e-01 -5.189236e-01
+DEAL:0::point found: 5.189236e-01 -4.687500e-01
+DEAL:0::point found: 5.189236e-01 -4.687500e-01
+DEAL:0::point found: 5.625000e-01 -4.149887e-01
+DEAL:0::point found: 5.625000e-01 -4.149887e-01
+DEAL:0::point found: 5.906490e-01 -3.750000e-01
+DEAL:0::point found: 5.906490e-01 -3.750000e-01
+DEAL:0::point found: 6.408476e-01 -2.812500e-01
+DEAL:0::point found: 6.408476e-01 -2.812500e-01
+DEAL:0::point found: 6.562500e-01 -2.396049e-01
+DEAL:0::point found: 6.562500e-01 -2.396049e-01
+DEAL:0::point found: 6.743534e-01 -1.875000e-01
+DEAL:0::point found: 6.743534e-01 -1.875000e-01
+DEAL:0::point found: 6.936670e-01 -9.375000e-02
+DEAL:0::point found: 6.936670e-01 -9.375000e-02
+DEAL:0::point found: 7.000000e-01 0.000000e+00
+DEAL:0::point found: -7.000000e-01 0.000000e+00
+DEAL:0::point found: -6.936670e-01 9.375000e-02
+DEAL:0::point found: -6.936670e-01 9.375000e-02
+DEAL:0::point found: -6.743534e-01 1.875000e-01
+DEAL:0::point found: -6.562500e-01 2.396049e-01
+DEAL:0::point found: -6.743534e-01 1.875000e-01
+DEAL:0::point found: -6.562500e-01 2.396049e-01
+DEAL:0::point found: -6.408476e-01 2.812500e-01
+DEAL:0::point found: -6.408476e-01 2.812500e-01
+DEAL:0::point found: -5.906490e-01 3.750000e-01
+DEAL:0::point found: -5.625000e-01 4.149887e-01
+DEAL:0::point found: -5.906490e-01 3.750000e-01
+DEAL:0::point found: -5.625000e-01 4.149887e-01
+DEAL:0::point found: -5.189236e-01 4.687500e-01
+DEAL:0::point found: -4.687500e-01 5.189236e-01
+DEAL:0::point found: -5.189236e-01 4.687500e-01
+DEAL:0::point found: -4.687500e-01 5.189236e-01
+DEAL:0::point found: -4.149887e-01 5.625000e-01
+DEAL:0::point found: -3.750000e-01 5.906490e-01
+DEAL:0::point found: -4.149887e-01 5.625000e-01
+DEAL:0::point found: -3.750000e-01 5.906490e-01
+DEAL:0::point found: -2.812500e-01 6.408476e-01
+DEAL:0::point found: -2.812500e-01 6.408476e-01
+DEAL:0::point found: -2.396049e-01 6.562500e-01
+DEAL:0::point found: -1.875000e-01 6.743534e-01
+DEAL:0::point found: -2.396049e-01 6.562500e-01
+DEAL:0::point found: -1.875000e-01 6.743534e-01
+DEAL:0::point found: -9.375000e-02 6.936670e-01
+DEAL:0::point found: -9.375000e-02 6.936670e-01
+DEAL:0::point found: 0.000000e+00 7.000000e-01
+DEAL:0::point found: 7.000000e-01 0.000000e+00
+DEAL:0::point found: 6.936670e-01 9.375000e-02
+DEAL:0::point found: 6.936670e-01 9.375000e-02
+DEAL:0::point found: 6.743534e-01 1.875000e-01
+DEAL:0::point found: 6.562500e-01 2.396049e-01
+DEAL:0::point found: 6.408476e-01 2.812500e-01
+DEAL:0::point found: 6.562500e-01 2.396049e-01
+DEAL:0::point found: 6.743534e-01 1.875000e-01
+DEAL:0::point found: 6.408476e-01 2.812500e-01
+DEAL:0::point found: 5.906490e-01 3.750000e-01
+DEAL:0::point found: 0.000000e+00 7.000000e-01
+DEAL:0::point found: 9.375000e-02 6.936670e-01
+DEAL:0::point found: 9.375000e-02 6.936670e-01
+DEAL:0::point found: 1.875000e-01 6.743534e-01
+DEAL:0::point found: 2.812500e-01 6.408476e-01
+DEAL:0::point found: 2.396049e-01 6.562500e-01
+DEAL:0::point found: 2.812500e-01 6.408476e-01
+DEAL:0::point found: 3.750000e-01 5.906490e-01
+DEAL:0::point found: 1.875000e-01 6.743534e-01
+DEAL:0::point found: 2.396049e-01 6.562500e-01
+DEAL:0::point found: 5.625000e-01 4.149887e-01
+DEAL:0::point found: 5.189236e-01 4.687500e-01
+DEAL:0::point found: 4.687500e-01 5.189236e-01
+DEAL:0::point found: 4.149887e-01 5.625000e-01
+DEAL:0::point found: 4.687500e-01 5.189236e-01
+DEAL:0::point found: 5.189236e-01 4.687500e-01
+DEAL:0::point found: 5.625000e-01 4.149887e-01
+DEAL:0::point found: 5.906490e-01 3.750000e-01
+DEAL:0::point found: 3.750000e-01 5.906490e-01
+DEAL:0::point found: 4.149887e-01 5.625000e-01
+DEAL:0::dim=2 iso level: 0.000000e+00
+DEAL:0::point found: -4.687500e-01 -5.852856e-01
+DEAL:0::point found: -4.957721e-01 -5.625000e-01
+DEAL:0::point found: -4.218750e-01 -6.200027e-01
+DEAL:0::point found: -4.368649e-01 -6.093750e-01
+DEAL:0::point found: -4.218750e-01 -6.200027e-01
+DEAL:0::point found: -3.750000e-01 -6.494646e-01
+DEAL:0::point found: -4.687500e-01 -5.852856e-01
+DEAL:0::point found: -4.368649e-01 -6.093750e-01
+DEAL:0::point found: -5.625000e-01 -4.957721e-01
+DEAL:0::point found: -5.852856e-01 -4.687500e-01
+DEAL:0::point found: -6.093750e-01 -4.368649e-01
+DEAL:0::point found: -6.200027e-01 -4.218750e-01
+DEAL:0::point found: -6.093750e-01 -4.368649e-01
+DEAL:0::point found: -5.852856e-01 -4.687500e-01
+DEAL:0::point found: -6.200027e-01 -4.218750e-01
+DEAL:0::point found: -6.494646e-01 -3.750000e-01
+DEAL:0::point found: -5.156250e-01 -5.444101e-01
+DEAL:0::point found: -5.444101e-01 -5.156250e-01
+DEAL:0::point found: -5.156250e-01 -5.444101e-01
+DEAL:0::point found: -4.957721e-01 -5.625000e-01
+DEAL:0::point found: -5.625000e-01 -4.957721e-01
+DEAL:0::point found: -5.444101e-01 -5.156250e-01
+DEAL:0::point found: -3.281250e-01 -6.743408e-01
+DEAL:0::point found: -3.626352e-01 -6.562500e-01
+DEAL:0::point found: -3.281250e-01 -6.743408e-01
+DEAL:0::point found: -2.812500e-01 -6.952364e-01
+DEAL:0::point found: -2.343750e-01 -7.124152e-01
+DEAL:0::point found: -2.600683e-01 -7.031250e-01
+DEAL:0::point found: -2.343750e-01 -7.124152e-01
+DEAL:0::point found: -1.875000e-01 -7.261608e-01
+DEAL:0::point found: -2.812500e-01 -6.952364e-01
+DEAL:0::point found: -2.600683e-01 -7.031250e-01
+DEAL:0::point found: -3.750000e-01 -6.494646e-01
+DEAL:0::point found: -3.626352e-01 -6.562500e-01
+DEAL:0::point found: -1.875000e-01 -7.261608e-01
+DEAL:0::point found: -1.406250e-01 -7.366873e-01
+DEAL:0::point found: -1.406250e-01 -7.366873e-01
+DEAL:0::point found: -9.375000e-02 -7.441149e-01
+DEAL:0::point found: -9.375000e-02 -7.441149e-01
+DEAL:0::point found: -4.687500e-02 -7.485333e-01
+DEAL:0::point found: -4.687500e-02 -7.485333e-01
+DEAL:0::point found: 0.000000e+00 -7.500000e-01
+DEAL:0::point found: -6.562500e-01 -3.626352e-01
+DEAL:0::point found: -6.743408e-01 -3.281250e-01
+DEAL:0::point found: -6.743408e-01 -3.281250e-01
+DEAL:0::point found: -6.952364e-01 -2.812500e-01
+DEAL:0::point found: -6.562500e-01 -3.626352e-01
+DEAL:0::point found: -6.494646e-01 -3.750000e-01
+DEAL:0::point found: -7.031250e-01 -2.600683e-01
+DEAL:0::point found: -7.124152e-01 -2.343750e-01
+DEAL:0::point found: -7.031250e-01 -2.600683e-01
+DEAL:0::point found: -6.952364e-01 -2.812500e-01
+DEAL:0::point found: -7.124152e-01 -2.343750e-01
+DEAL:0::point found: -7.261608e-01 -1.875000e-01
+DEAL:0::point found: -7.261608e-01 -1.875000e-01
+DEAL:0::point found: -7.366873e-01 -1.406250e-01
+DEAL:0::point found: -7.366873e-01 -1.406250e-01
+DEAL:0::point found: -7.441149e-01 -9.375000e-02
+DEAL:0::point found: -7.441149e-01 -9.375000e-02
+DEAL:0::point found: -7.485333e-01 -4.687500e-02
+DEAL:0::point found: -7.485333e-01 -4.687500e-02
+DEAL:0::point found: -7.500000e-01 0.000000e+00
+DEAL:0::point found: 0.000000e+00 -7.500000e-01
+DEAL:0::point found: 4.687500e-02 -7.485333e-01
+DEAL:0::point found: 4.687500e-02 -7.485333e-01
+DEAL:0::point found: 9.375000e-02 -7.441149e-01
+DEAL:0::point found: 9.375000e-02 -7.441149e-01
+DEAL:0::point found: 1.406250e-01 -7.366873e-01
+DEAL:0::point found: 1.406250e-01 -7.366873e-01
+DEAL:0::point found: 1.875000e-01 -7.261608e-01
+DEAL:0::point found: 1.875000e-01 -7.261608e-01
+DEAL:0::point found: 2.343750e-01 -7.124152e-01
+DEAL:0::point found: 2.343750e-01 -7.124152e-01
+DEAL:0::point found: 2.600683e-01 -7.031250e-01
+DEAL:0::point found: 2.600683e-01 -7.031250e-01
+DEAL:0::point found: 2.812500e-01 -6.952364e-01
+DEAL:0::point found: 2.812500e-01 -6.952364e-01
+DEAL:0::point found: 3.281250e-01 -6.743408e-01
+DEAL:0::point found: 3.281250e-01 -6.743408e-01
+DEAL:0::point found: 3.626352e-01 -6.562500e-01
+DEAL:0::point found: 3.626352e-01 -6.562500e-01
+DEAL:0::point found: 3.750000e-01 -6.494646e-01
+DEAL:0::point found: 3.750000e-01 -6.494646e-01
+DEAL:0::point found: 4.218750e-01 -6.200027e-01
+DEAL:0::point found: 4.218750e-01 -6.200027e-01
+DEAL:0::point found: 4.368649e-01 -6.093750e-01
+DEAL:0::point found: 4.368649e-01 -6.093750e-01
+DEAL:0::point found: 4.687500e-01 -5.852856e-01
+DEAL:0::point found: 4.687500e-01 -5.852856e-01
+DEAL:0::point found: 4.957721e-01 -5.625000e-01
+DEAL:0::point found: 4.957721e-01 -5.625000e-01
+DEAL:0::point found: 5.156250e-01 -5.444101e-01
+DEAL:0::point found: 5.156250e-01 -5.444101e-01
+DEAL:0::point found: 5.444101e-01 -5.156250e-01
+DEAL:0::point found: 5.444101e-01 -5.156250e-01
+DEAL:0::point found: 5.625000e-01 -4.957721e-01
+DEAL:0::point found: 5.625000e-01 -4.957721e-01
+DEAL:0::point found: 5.852856e-01 -4.687500e-01
+DEAL:0::point found: 5.852856e-01 -4.687500e-01
+DEAL:0::point found: 6.093750e-01 -4.368649e-01
+DEAL:0::point found: 6.093750e-01 -4.368649e-01
+DEAL:0::point found: 6.200027e-01 -4.218750e-01
+DEAL:0::point found: 6.200027e-01 -4.218750e-01
+DEAL:0::point found: 6.494646e-01 -3.750000e-01
+DEAL:0::point found: 6.494646e-01 -3.750000e-01
+DEAL:0::point found: 6.562500e-01 -3.626352e-01
+DEAL:0::point found: 6.562500e-01 -3.626352e-01
+DEAL:0::point found: 6.743408e-01 -3.281250e-01
+DEAL:0::point found: 6.743408e-01 -3.281250e-01
+DEAL:0::point found: 6.952364e-01 -2.812500e-01
+DEAL:0::point found: 6.952364e-01 -2.812500e-01
+DEAL:0::point found: 7.031250e-01 -2.600683e-01
+DEAL:0::point found: 7.031250e-01 -2.600683e-01
+DEAL:0::point found: 7.124152e-01 -2.343750e-01
+DEAL:0::point found: 7.124152e-01 -2.343750e-01
+DEAL:0::point found: 7.261608e-01 -1.875000e-01
+DEAL:0::point found: 7.261608e-01 -1.875000e-01
+DEAL:0::point found: 7.366873e-01 -1.406250e-01
+DEAL:0::point found: 7.366873e-01 -1.406250e-01
+DEAL:0::point found: 7.441149e-01 -9.375000e-02
+DEAL:0::point found: 7.441149e-01 -9.375000e-02
+DEAL:0::point found: 7.485333e-01 -4.687500e-02
+DEAL:0::point found: 7.485333e-01 -4.687500e-02
+DEAL:0::point found: 7.500000e-01 0.000000e+00
+DEAL:0::point found: -7.500000e-01 0.000000e+00
+DEAL:0::point found: -7.485333e-01 4.687500e-02
+DEAL:0::point found: -7.485333e-01 4.687500e-02
+DEAL:0::point found: -7.441149e-01 9.375000e-02
+DEAL:0::point found: -7.441149e-01 9.375000e-02
+DEAL:0::point found: -7.366873e-01 1.406250e-01
+DEAL:0::point found: -7.366873e-01 1.406250e-01
+DEAL:0::point found: -7.261608e-01 1.875000e-01
+DEAL:0::point found: -7.261608e-01 1.875000e-01
+DEAL:0::point found: -7.124152e-01 2.343750e-01
+DEAL:0::point found: -7.031250e-01 2.600683e-01
+DEAL:0::point found: -7.124152e-01 2.343750e-01
+DEAL:0::point found: -7.031250e-01 2.600683e-01
+DEAL:0::point found: -6.952364e-01 2.812500e-01
+DEAL:0::point found: -6.952364e-01 2.812500e-01
+DEAL:0::point found: -6.743408e-01 3.281250e-01
+DEAL:0::point found: -6.562500e-01 3.626352e-01
+DEAL:0::point found: -6.743408e-01 3.281250e-01
+DEAL:0::point found: -6.562500e-01 3.626352e-01
+DEAL:0::point found: -6.494646e-01 3.750000e-01
+DEAL:0::point found: -6.494646e-01 3.750000e-01
+DEAL:0::point found: -6.200027e-01 4.218750e-01
+DEAL:0::point found: -6.093750e-01 4.368649e-01
+DEAL:0::point found: -6.200027e-01 4.218750e-01
+DEAL:0::point found: -6.093750e-01 4.368649e-01
+DEAL:0::point found: -5.852856e-01 4.687500e-01
+DEAL:0::point found: -5.625000e-01 4.957721e-01
+DEAL:0::point found: -5.852856e-01 4.687500e-01
+DEAL:0::point found: -5.625000e-01 4.957721e-01
+DEAL:0::point found: -5.444101e-01 5.156250e-01
+DEAL:0::point found: -5.156250e-01 5.444101e-01
+DEAL:0::point found: -5.444101e-01 5.156250e-01
+DEAL:0::point found: -5.156250e-01 5.444101e-01
+DEAL:0::point found: -4.957721e-01 5.625000e-01
+DEAL:0::point found: -4.687500e-01 5.852856e-01
+DEAL:0::point found: -4.957721e-01 5.625000e-01
+DEAL:0::point found: -4.687500e-01 5.852856e-01
+DEAL:0::point found: -4.368649e-01 6.093750e-01
+DEAL:0::point found: -4.218750e-01 6.200027e-01
+DEAL:0::point found: -4.368649e-01 6.093750e-01
+DEAL:0::point found: -4.218750e-01 6.200027e-01
+DEAL:0::point found: -3.750000e-01 6.494646e-01
+DEAL:0::point found: -3.750000e-01 6.494646e-01
+DEAL:0::point found: -3.626352e-01 6.562500e-01
+DEAL:0::point found: -3.281250e-01 6.743408e-01
+DEAL:0::point found: -3.626352e-01 6.562500e-01
+DEAL:0::point found: -3.281250e-01 6.743408e-01
+DEAL:0::point found: -2.812500e-01 6.952364e-01
+DEAL:0::point found: -2.812500e-01 6.952364e-01
+DEAL:0::point found: -2.600683e-01 7.031250e-01
+DEAL:0::point found: -2.343750e-01 7.124152e-01
+DEAL:0::point found: -2.600683e-01 7.031250e-01
+DEAL:0::point found: -2.343750e-01 7.124152e-01
+DEAL:0::point found: -1.875000e-01 7.261608e-01
+DEAL:0::point found: -1.875000e-01 7.261608e-01
+DEAL:0::point found: -1.406250e-01 7.366873e-01
+DEAL:0::point found: -1.406250e-01 7.366873e-01
+DEAL:0::point found: -9.375000e-02 7.441149e-01
+DEAL:0::point found: -9.375000e-02 7.441149e-01
+DEAL:0::point found: -4.687500e-02 7.485333e-01
+DEAL:0::point found: -4.687500e-02 7.485333e-01
+DEAL:0::point found: 0.000000e+00 7.500000e-01
+DEAL:0::point found: 7.500000e-01 0.000000e+00
+DEAL:0::point found: 7.485333e-01 4.687500e-02
+DEAL:0::point found: 7.485333e-01 4.687500e-02
+DEAL:0::point found: 7.441149e-01 9.375000e-02
+DEAL:0::point found: 7.441149e-01 9.375000e-02
+DEAL:0::point found: 7.366873e-01 1.406250e-01
+DEAL:0::point found: 7.366873e-01 1.406250e-01
+DEAL:0::point found: 7.261608e-01 1.875000e-01
+DEAL:0::point found: 7.261608e-01 1.875000e-01
+DEAL:0::point found: 7.124152e-01 2.343750e-01
+DEAL:0::point found: 7.031250e-01 2.600683e-01
+DEAL:0::point found: 6.952364e-01 2.812500e-01
+DEAL:0::point found: 7.031250e-01 2.600683e-01
+DEAL:0::point found: 7.124152e-01 2.343750e-01
+DEAL:0::point found: 6.562500e-01 3.626352e-01
+DEAL:0::point found: 6.494646e-01 3.750000e-01
+DEAL:0::point found: 6.952364e-01 2.812500e-01
+DEAL:0::point found: 6.743408e-01 3.281250e-01
+DEAL:0::point found: 6.562500e-01 3.626352e-01
+DEAL:0::point found: 6.743408e-01 3.281250e-01
+DEAL:0::point found: 0.000000e+00 7.500000e-01
+DEAL:0::point found: 4.687500e-02 7.485333e-01
+DEAL:0::point found: 4.687500e-02 7.485333e-01
+DEAL:0::point found: 9.375000e-02 7.441149e-01
+DEAL:0::point found: 9.375000e-02 7.441149e-01
+DEAL:0::point found: 1.406250e-01 7.366873e-01
+DEAL:0::point found: 1.406250e-01 7.366873e-01
+DEAL:0::point found: 1.875000e-01 7.261608e-01
+DEAL:0::point found: 3.750000e-01 6.494646e-01
+DEAL:0::point found: 3.626352e-01 6.562500e-01
+DEAL:0::point found: 2.812500e-01 6.952364e-01
+DEAL:0::point found: 2.600683e-01 7.031250e-01
+DEAL:0::point found: 1.875000e-01 7.261608e-01
+DEAL:0::point found: 2.343750e-01 7.124152e-01
+DEAL:0::point found: 2.343750e-01 7.124152e-01
+DEAL:0::point found: 2.600683e-01 7.031250e-01
+DEAL:0::point found: 2.812500e-01 6.952364e-01
+DEAL:0::point found: 3.281250e-01 6.743408e-01
+DEAL:0::point found: 3.281250e-01 6.743408e-01
+DEAL:0::point found: 3.626352e-01 6.562500e-01
+DEAL:0::point found: 5.625000e-01 4.957721e-01
+DEAL:0::point found: 5.444101e-01 5.156250e-01
+DEAL:0::point found: 5.156250e-01 5.444101e-01
+DEAL:0::point found: 4.957721e-01 5.625000e-01
+DEAL:0::point found: 5.156250e-01 5.444101e-01
+DEAL:0::point found: 5.444101e-01 5.156250e-01
+DEAL:0::point found: 6.494646e-01 3.750000e-01
+DEAL:0::point found: 6.200027e-01 4.218750e-01
+DEAL:0::point found: 6.093750e-01 4.368649e-01
+DEAL:0::point found: 5.852856e-01 4.687500e-01
+DEAL:0::point found: 6.093750e-01 4.368649e-01
+DEAL:0::point found: 6.200027e-01 4.218750e-01
+DEAL:0::point found: 5.625000e-01 4.957721e-01
+DEAL:0::point found: 5.852856e-01 4.687500e-01
+DEAL:0::point found: 4.687500e-01 5.852856e-01
+DEAL:0::point found: 4.368649e-01 6.093750e-01
+DEAL:0::point found: 3.750000e-01 6.494646e-01
+DEAL:0::point found: 4.218750e-01 6.200027e-01
+DEAL:0::point found: 4.218750e-01 6.200027e-01
+DEAL:0::point found: 4.368649e-01 6.093750e-01
+DEAL:0::point found: 4.687500e-01 5.852856e-01
+DEAL:0::point found: 4.957721e-01 5.625000e-01
+DEAL:0::dim=2 iso level: 5.000000e-02
+DEAL:0::point found: -2.500000e-01 -7.599207e-01
+DEAL:0::point found: -2.782530e-01 -7.500000e-01
+DEAL:0::point found: -2.500000e-01 -7.599207e-01
+DEAL:0::point found: -2.187500e-01 -7.695005e-01
+DEAL:0::point found: -2.187500e-01 -7.695005e-01
+DEAL:0::point found: -1.875000e-01 -7.777135e-01
+DEAL:0::point found: -1.562500e-01 -7.845906e-01
+DEAL:0::point found: -1.715099e-01 -7.812500e-01
+DEAL:0::point found: -1.562500e-01 -7.845906e-01
+DEAL:0::point found: -1.250000e-01 -7.901709e-01
+DEAL:0::point found: -1.250000e-01 -7.901709e-01
+DEAL:0::point found: -9.375000e-02 -7.944858e-01
+DEAL:0::point found: -1.875000e-01 -7.777135e-01
+DEAL:0::point found: -1.715099e-01 -7.812500e-01
+DEAL:0::point found: -9.375000e-02 -7.944858e-01
+DEAL:0::point found: -6.250000e-02 -7.975538e-01
+DEAL:0::point found: -6.250000e-02 -7.975538e-01
+DEAL:0::point found: -3.125000e-02 -7.993891e-01
+DEAL:0::point found: -3.125000e-02 -7.993891e-01
+DEAL:0::point found: 0.000000e+00 -8.000000e-01
+DEAL:0::point found: -7.500000e-01 -2.782530e-01
+DEAL:0::point found: -7.599207e-01 -2.500000e-01
+DEAL:0::point found: -7.599207e-01 -2.500000e-01
+DEAL:0::point found: -7.695005e-01 -2.187500e-01
+DEAL:0::point found: -7.695005e-01 -2.187500e-01
+DEAL:0::point found: -7.777135e-01 -1.875000e-01
+DEAL:0::point found: -7.812500e-01 -1.715099e-01
+DEAL:0::point found: -7.845906e-01 -1.562500e-01
+DEAL:0::point found: -7.812500e-01 -1.715099e-01
+DEAL:0::point found: -7.777135e-01 -1.875000e-01
+DEAL:0::point found: -7.845906e-01 -1.562500e-01
+DEAL:0::point found: -7.901709e-01 -1.250000e-01
+DEAL:0::point found: -7.901709e-01 -1.250000e-01
+DEAL:0::point found: -7.944858e-01 -9.375000e-02
+DEAL:0::point found: -7.944858e-01 -9.375000e-02
+DEAL:0::point found: -7.975538e-01 -6.250000e-02
+DEAL:0::point found: -7.975538e-01 -6.250000e-02
+DEAL:0::point found: -7.993891e-01 -3.125000e-02
+DEAL:0::point found: -7.993891e-01 -3.125000e-02
+DEAL:0::point found: -8.000000e-01 0.000000e+00
+DEAL:0::point found: -5.625000e-01 -5.687859e-01
+DEAL:0::point found: -5.687859e-01 -5.625000e-01
+DEAL:0::point found: -4.062500e-01 -6.891652e-01
+DEAL:0::point found: -4.090071e-01 -6.875000e-01
+DEAL:0::point found: -4.062500e-01 -6.891652e-01
+DEAL:0::point found: -3.750000e-01 -7.066284e-01
+DEAL:0::point found: -4.375000e-01 -6.697182e-01
+DEAL:0::point found: -4.573651e-01 -6.562500e-01
+DEAL:0::point found: -4.375000e-01 -6.697182e-01
+DEAL:0::point found: -4.090071e-01 -6.875000e-01
+DEAL:0::point found: -4.687500e-01 -6.482349e-01
+DEAL:0::point found: -4.993626e-01 -6.250000e-01
+DEAL:0::point found: -5.312500e-01 -5.980996e-01
+DEAL:0::point found: -5.360895e-01 -5.937500e-01
+DEAL:0::point found: -5.312500e-01 -5.980996e-01
+DEAL:0::point found: -5.000000e-01 -6.244950e-01
+DEAL:0::point found: -5.000000e-01 -6.244950e-01
+DEAL:0::point found: -4.993626e-01 -6.250000e-01
+DEAL:0::point found: -5.625000e-01 -5.687859e-01
+DEAL:0::point found: -5.360895e-01 -5.937500e-01
+DEAL:0::point found: -4.687500e-01 -6.482349e-01
+DEAL:0::point found: -4.573651e-01 -6.562500e-01
+DEAL:0::point found: -5.937500e-01 -5.360895e-01
+DEAL:0::point found: -5.980996e-01 -5.312500e-01
+DEAL:0::point found: -5.937500e-01 -5.360895e-01
+DEAL:0::point found: -5.687859e-01 -5.625000e-01
+DEAL:0::point found: -5.980996e-01 -5.312500e-01
+DEAL:0::point found: -6.244950e-01 -5.000000e-01
+DEAL:0::point found: -6.250000e-01 -4.993626e-01
+DEAL:0::point found: -6.482349e-01 -4.687500e-01
+DEAL:0::point found: -6.250000e-01 -4.993626e-01
+DEAL:0::point found: -6.244950e-01 -5.000000e-01
+DEAL:0::point found: -6.562500e-01 -4.573651e-01
+DEAL:0::point found: -6.697182e-01 -4.375000e-01
+DEAL:0::point found: -6.875000e-01 -4.090071e-01
+DEAL:0::point found: -6.891652e-01 -4.062500e-01
+DEAL:0::point found: -6.875000e-01 -4.090071e-01
+DEAL:0::point found: -6.697182e-01 -4.375000e-01
+DEAL:0::point found: -6.891652e-01 -4.062500e-01
+DEAL:0::point found: -7.066284e-01 -3.750000e-01
+DEAL:0::point found: -6.562500e-01 -4.573651e-01
+DEAL:0::point found: -6.482349e-01 -4.687500e-01
+DEAL:0::point found: -3.437500e-01 -7.223697e-01
+DEAL:0::point found: -3.510815e-01 -7.187500e-01
+DEAL:0::point found: -3.437500e-01 -7.223697e-01
+DEAL:0::point found: -3.125000e-01 -7.364149e-01
+DEAL:0::point found: -3.125000e-01 -7.364149e-01
+DEAL:0::point found: -2.812500e-01 -7.489288e-01
+DEAL:0::point found: -3.750000e-01 -7.066284e-01
+DEAL:0::point found: -3.510815e-01 -7.187500e-01
+DEAL:0::point found: -2.812500e-01 -7.489288e-01
+DEAL:0::point found: -2.782530e-01 -7.500000e-01
+DEAL:0::point found: -7.187500e-01 -3.510815e-01
+DEAL:0::point found: -7.223697e-01 -3.437500e-01
+DEAL:0::point found: -7.187500e-01 -3.510815e-01
+DEAL:0::point found: -7.066284e-01 -3.750000e-01
+DEAL:0::point found: -7.223697e-01 -3.437500e-01
+DEAL:0::point found: -7.364149e-01 -3.125000e-01
+DEAL:0::point found: -7.364149e-01 -3.125000e-01
+DEAL:0::point found: -7.489288e-01 -2.812500e-01
+DEAL:0::point found: -7.500000e-01 -2.782530e-01
+DEAL:0::point found: -7.489288e-01 -2.812500e-01
+DEAL:0::point found: 0.000000e+00 -8.000000e-01
+DEAL:0::point found: 3.125000e-02 -7.993891e-01
+DEAL:0::point found: 3.125000e-02 -7.993891e-01
+DEAL:0::point found: 6.250000e-02 -7.975538e-01
+DEAL:0::point found: 6.250000e-02 -7.975538e-01
+DEAL:0::point found: 9.375000e-02 -7.944858e-01
+DEAL:0::point found: 9.375000e-02 -7.944858e-01
+DEAL:0::point found: 1.250000e-01 -7.901709e-01
+DEAL:0::point found: 1.250000e-01 -7.901709e-01
+DEAL:0::point found: 1.562500e-01 -7.845906e-01
+DEAL:0::point found: 1.562500e-01 -7.845906e-01
+DEAL:0::point found: 1.715099e-01 -7.812500e-01
+DEAL:0::point found: 1.715099e-01 -7.812500e-01
+DEAL:0::point found: 1.875000e-01 -7.777135e-01
+DEAL:0::point found: 1.875000e-01 -7.777135e-01
+DEAL:0::point found: 2.187500e-01 -7.695005e-01
+DEAL:0::point found: 2.187500e-01 -7.695005e-01
+DEAL:0::point found: 2.500000e-01 -7.599207e-01
+DEAL:0::point found: 2.500000e-01 -7.599207e-01
+DEAL:0::point found: 2.782530e-01 -7.500000e-01
+DEAL:0::point found: 2.782530e-01 -7.500000e-01
+DEAL:0::point found: 2.812500e-01 -7.489288e-01
+DEAL:0::point found: 2.812500e-01 -7.489288e-01
+DEAL:0::point found: 3.125000e-01 -7.364149e-01
+DEAL:0::point found: 3.125000e-01 -7.364149e-01
+DEAL:0::point found: 3.437500e-01 -7.223697e-01
+DEAL:0::point found: 3.437500e-01 -7.223697e-01
+DEAL:0::point found: 3.510815e-01 -7.187500e-01
+DEAL:0::point found: 3.510815e-01 -7.187500e-01
+DEAL:0::point found: 3.750000e-01 -7.066284e-01
+DEAL:0::point found: 3.750000e-01 -7.066284e-01
+DEAL:0::point found: 4.062500e-01 -6.891652e-01
+DEAL:0::point found: 4.062500e-01 -6.891652e-01
+DEAL:0::point found: 4.090071e-01 -6.875000e-01
+DEAL:0::point found: 4.090071e-01 -6.875000e-01
+DEAL:0::point found: 4.375000e-01 -6.697182e-01
+DEAL:0::point found: 4.375000e-01 -6.697182e-01
+DEAL:0::point found: 4.573651e-01 -6.562500e-01
+DEAL:0::point found: 4.573651e-01 -6.562500e-01
+DEAL:0::point found: 4.687500e-01 -6.482349e-01
+DEAL:0::point found: 4.687500e-01 -6.482349e-01
+DEAL:0::point found: 4.993626e-01 -6.250000e-01
+DEAL:0::point found: 4.993626e-01 -6.250000e-01
+DEAL:0::point found: 5.000000e-01 -6.244950e-01
+DEAL:0::point found: 5.000000e-01 -6.244950e-01
+DEAL:0::point found: 5.312500e-01 -5.980996e-01
+DEAL:0::point found: 5.312500e-01 -5.980996e-01
+DEAL:0::point found: 5.360895e-01 -5.937500e-01
+DEAL:0::point found: 5.360895e-01 -5.937500e-01
+DEAL:0::point found: 5.625000e-01 -5.687859e-01
+DEAL:0::point found: 5.625000e-01 -5.687859e-01
+DEAL:0::point found: 5.687859e-01 -5.625000e-01
+DEAL:0::point found: 5.687859e-01 -5.625000e-01
+DEAL:0::point found: 5.937500e-01 -5.360895e-01
+DEAL:0::point found: 5.937500e-01 -5.360895e-01
+DEAL:0::point found: 5.980996e-01 -5.312500e-01
+DEAL:0::point found: 5.980996e-01 -5.312500e-01
+DEAL:0::point found: 6.244950e-01 -5.000000e-01
+DEAL:0::point found: 6.244950e-01 -5.000000e-01
+DEAL:0::point found: 6.250000e-01 -4.993626e-01
+DEAL:0::point found: 6.250000e-01 -4.993626e-01
+DEAL:0::point found: 6.482349e-01 -4.687500e-01
+DEAL:0::point found: 6.482349e-01 -4.687500e-01
+DEAL:0::point found: 6.562500e-01 -4.573651e-01
+DEAL:0::point found: 6.562500e-01 -4.573651e-01
+DEAL:0::point found: 6.697182e-01 -4.375000e-01
+DEAL:0::point found: 6.697182e-01 -4.375000e-01
+DEAL:0::point found: 6.875000e-01 -4.090071e-01
+DEAL:0::point found: 6.875000e-01 -4.090071e-01
+DEAL:0::point found: 6.891652e-01 -4.062500e-01
+DEAL:0::point found: 6.891652e-01 -4.062500e-01
+DEAL:0::point found: 7.066284e-01 -3.750000e-01
+DEAL:0::point found: 7.066284e-01 -3.750000e-01
+DEAL:0::point found: 7.187500e-01 -3.510815e-01
+DEAL:0::point found: 7.187500e-01 -3.510815e-01
+DEAL:0::point found: 7.223697e-01 -3.437500e-01
+DEAL:0::point found: 7.223697e-01 -3.437500e-01
+DEAL:0::point found: 7.364149e-01 -3.125000e-01
+DEAL:0::point found: 7.364149e-01 -3.125000e-01
+DEAL:0::point found: 7.489288e-01 -2.812500e-01
+DEAL:0::point found: 7.489288e-01 -2.812500e-01
+DEAL:0::point found: 7.500000e-01 -2.782530e-01
+DEAL:0::point found: 7.500000e-01 -2.782530e-01
+DEAL:0::point found: 7.599207e-01 -2.500000e-01
+DEAL:0::point found: 7.599207e-01 -2.500000e-01
+DEAL:0::point found: 7.695005e-01 -2.187500e-01
+DEAL:0::point found: 7.695005e-01 -2.187500e-01
+DEAL:0::point found: 7.777135e-01 -1.875000e-01
+DEAL:0::point found: 7.777135e-01 -1.875000e-01
+DEAL:0::point found: 7.812500e-01 -1.715099e-01
+DEAL:0::point found: 7.812500e-01 -1.715099e-01
+DEAL:0::point found: 7.845906e-01 -1.562500e-01
+DEAL:0::point found: 7.845906e-01 -1.562500e-01
+DEAL:0::point found: 7.901709e-01 -1.250000e-01
+DEAL:0::point found: 7.901709e-01 -1.250000e-01
+DEAL:0::point found: 7.944858e-01 -9.375000e-02
+DEAL:0::point found: 7.944858e-01 -9.375000e-02
+DEAL:0::point found: 7.975538e-01 -6.250000e-02
+DEAL:0::point found: 7.975538e-01 -6.250000e-02
+DEAL:0::point found: 7.993891e-01 -3.125000e-02
+DEAL:0::point found: 7.993891e-01 -3.125000e-02
+DEAL:0::point found: 8.000000e-01 0.000000e+00
+DEAL:0::point found: -8.000000e-01 0.000000e+00
+DEAL:0::point found: -7.993891e-01 3.125000e-02
+DEAL:0::point found: -7.993891e-01 3.125000e-02
+DEAL:0::point found: -7.975538e-01 6.250000e-02
+DEAL:0::point found: -7.975538e-01 6.250000e-02
+DEAL:0::point found: -7.944858e-01 9.375000e-02
+DEAL:0::point found: -7.944858e-01 9.375000e-02
+DEAL:0::point found: -7.901709e-01 1.250000e-01
+DEAL:0::point found: -7.901709e-01 1.250000e-01
+DEAL:0::point found: -7.845906e-01 1.562500e-01
+DEAL:0::point found: -7.812500e-01 1.715099e-01
+DEAL:0::point found: -7.845906e-01 1.562500e-01
+DEAL:0::point found: -7.812500e-01 1.715099e-01
+DEAL:0::point found: -7.777135e-01 1.875000e-01
+DEAL:0::point found: -7.777135e-01 1.875000e-01
+DEAL:0::point found: -7.695005e-01 2.187500e-01
+DEAL:0::point found: -7.695005e-01 2.187500e-01
+DEAL:0::point found: -7.599207e-01 2.500000e-01
+DEAL:0::point found: -7.500000e-01 2.782530e-01
+DEAL:0::point found: -7.599207e-01 2.500000e-01
+DEAL:0::point found: -7.500000e-01 2.782530e-01
+DEAL:0::point found: -7.489288e-01 2.812500e-01
+DEAL:0::point found: -7.489288e-01 2.812500e-01
+DEAL:0::point found: -7.364149e-01 3.125000e-01
+DEAL:0::point found: -7.364149e-01 3.125000e-01
+DEAL:0::point found: -7.223697e-01 3.437500e-01
+DEAL:0::point found: -7.187500e-01 3.510815e-01
+DEAL:0::point found: -7.223697e-01 3.437500e-01
+DEAL:0::point found: -7.187500e-01 3.510815e-01
+DEAL:0::point found: -7.066284e-01 3.750000e-01
+DEAL:0::point found: -7.066284e-01 3.750000e-01
+DEAL:0::point found: -6.891652e-01 4.062500e-01
+DEAL:0::point found: -6.875000e-01 4.090071e-01
+DEAL:0::point found: -6.891652e-01 4.062500e-01
+DEAL:0::point found: -6.875000e-01 4.090071e-01
+DEAL:0::point found: -6.697182e-01 4.375000e-01
+DEAL:0::point found: -6.562500e-01 4.573651e-01
+DEAL:0::point found: -6.697182e-01 4.375000e-01
+DEAL:0::point found: -6.562500e-01 4.573651e-01
+DEAL:0::point found: -6.482349e-01 4.687500e-01
+DEAL:0::point found: -6.250000e-01 4.993626e-01
+DEAL:0::point found: -6.482349e-01 4.687500e-01
+DEAL:0::point found: -6.250000e-01 4.993626e-01
+DEAL:0::point found: -6.244950e-01 5.000000e-01
+DEAL:0::point found: -6.244950e-01 5.000000e-01
+DEAL:0::point found: -5.980996e-01 5.312500e-01
+DEAL:0::point found: -5.937500e-01 5.360895e-01
+DEAL:0::point found: -5.980996e-01 5.312500e-01
+DEAL:0::point found: -5.937500e-01 5.360895e-01
+DEAL:0::point found: -5.687859e-01 5.625000e-01
+DEAL:0::point found: -5.625000e-01 5.687859e-01
+DEAL:0::point found: -5.687859e-01 5.625000e-01
+DEAL:0::point found: -5.625000e-01 5.687859e-01
+DEAL:0::point found: -5.360895e-01 5.937500e-01
+DEAL:0::point found: -5.312500e-01 5.980996e-01
+DEAL:0::point found: -5.360895e-01 5.937500e-01
+DEAL:0::point found: -5.312500e-01 5.980996e-01
+DEAL:0::point found: -5.000000e-01 6.244950e-01
+DEAL:0::point found: -5.000000e-01 6.244950e-01
+DEAL:0::point found: -4.993626e-01 6.250000e-01
+DEAL:0::point found: -4.687500e-01 6.482349e-01
+DEAL:0::point found: -4.993626e-01 6.250000e-01
+DEAL:0::point found: -4.687500e-01 6.482349e-01
+DEAL:0::point found: -4.573651e-01 6.562500e-01
+DEAL:0::point found: -4.375000e-01 6.697182e-01
+DEAL:0::point found: -4.573651e-01 6.562500e-01
+DEAL:0::point found: -4.375000e-01 6.697182e-01
+DEAL:0::point found: -4.090071e-01 6.875000e-01
+DEAL:0::point found: -4.062500e-01 6.891652e-01
+DEAL:0::point found: -4.090071e-01 6.875000e-01
+DEAL:0::point found: -4.062500e-01 6.891652e-01
+DEAL:0::point found: -3.750000e-01 7.066284e-01
+DEAL:0::point found: -3.750000e-01 7.066284e-01
+DEAL:0::point found: -3.510815e-01 7.187500e-01
+DEAL:0::point found: -3.437500e-01 7.223697e-01
+DEAL:0::point found: -3.510815e-01 7.187500e-01
+DEAL:0::point found: -3.437500e-01 7.223697e-01
+DEAL:0::point found: -3.125000e-01 7.364149e-01
+DEAL:0::point found: -3.125000e-01 7.364149e-01
+DEAL:0::point found: -2.812500e-01 7.489288e-01
+DEAL:0::point found: -2.812500e-01 7.489288e-01
+DEAL:0::point found: -2.782530e-01 7.500000e-01
+DEAL:0::point found: -2.500000e-01 7.599207e-01
+DEAL:0::point found: -2.782530e-01 7.500000e-01
+DEAL:0::point found: -2.500000e-01 7.599207e-01
+DEAL:0::point found: -2.187500e-01 7.695005e-01
+DEAL:0::point found: -2.187500e-01 7.695005e-01
+DEAL:0::point found: -1.875000e-01 7.777135e-01
+DEAL:0::point found: -1.875000e-01 7.777135e-01
+DEAL:0::point found: -1.715099e-01 7.812500e-01
+DEAL:0::point found: -1.562500e-01 7.845906e-01
+DEAL:0::point found: -1.715099e-01 7.812500e-01
+DEAL:0::point found: -1.562500e-01 7.845906e-01
+DEAL:0::point found: -1.250000e-01 7.901709e-01
+DEAL:0::point found: -1.250000e-01 7.901709e-01
+DEAL:0::point found: -9.375000e-02 7.944858e-01
+DEAL:0::point found: -9.375000e-02 7.944858e-01
+DEAL:0::point found: -6.250000e-02 7.975538e-01
+DEAL:0::point found: -6.250000e-02 7.975538e-01
+DEAL:0::point found: -3.125000e-02 7.993891e-01
+DEAL:0::point found: -3.125000e-02 7.993891e-01
+DEAL:0::point found: 0.000000e+00 8.000000e-01
+DEAL:0::point found: 7.500000e-01 2.782530e-01
+DEAL:0::point found: 7.489288e-01 2.812500e-01
+DEAL:0::point found: 7.489288e-01 2.812500e-01
+DEAL:0::point found: 7.364149e-01 3.125000e-01
+DEAL:0::point found: 7.364149e-01 3.125000e-01
+DEAL:0::point found: 7.223697e-01 3.437500e-01
+DEAL:0::point found: 7.187500e-01 3.510815e-01
+DEAL:0::point found: 7.066284e-01 3.750000e-01
+DEAL:0::point found: 7.187500e-01 3.510815e-01
+DEAL:0::point found: 7.223697e-01 3.437500e-01
+DEAL:0::point found: 2.812500e-01 7.489288e-01
+DEAL:0::point found: 2.782530e-01 7.500000e-01
+DEAL:0::point found: 3.750000e-01 7.066284e-01
+DEAL:0::point found: 3.510815e-01 7.187500e-01
+DEAL:0::point found: 2.812500e-01 7.489288e-01
+DEAL:0::point found: 3.125000e-01 7.364149e-01
+DEAL:0::point found: 3.125000e-01 7.364149e-01
+DEAL:0::point found: 3.437500e-01 7.223697e-01
+DEAL:0::point found: 3.437500e-01 7.223697e-01
+DEAL:0::point found: 3.510815e-01 7.187500e-01
+DEAL:0::point found: 6.562500e-01 4.573651e-01
+DEAL:0::point found: 6.482349e-01 4.687500e-01
+DEAL:0::point found: 7.066284e-01 3.750000e-01
+DEAL:0::point found: 6.891652e-01 4.062500e-01
+DEAL:0::point found: 6.875000e-01 4.090071e-01
+DEAL:0::point found: 6.697182e-01 4.375000e-01
+DEAL:0::point found: 6.875000e-01 4.090071e-01
+DEAL:0::point found: 6.891652e-01 4.062500e-01
+DEAL:0::point found: 6.562500e-01 4.573651e-01
+DEAL:0::point found: 6.697182e-01 4.375000e-01
+DEAL:0::point found: 6.250000e-01 4.993626e-01
+DEAL:0::point found: 6.244950e-01 5.000000e-01
+DEAL:0::point found: 6.250000e-01 4.993626e-01
+DEAL:0::point found: 6.482349e-01 4.687500e-01
+DEAL:0::point found: 6.244950e-01 5.000000e-01
+DEAL:0::point found: 5.980996e-01 5.312500e-01
+DEAL:0::point found: 5.937500e-01 5.360895e-01
+DEAL:0::point found: 5.687859e-01 5.625000e-01
+DEAL:0::point found: 5.937500e-01 5.360895e-01
+DEAL:0::point found: 5.980996e-01 5.312500e-01
+DEAL:0::point found: 4.687500e-01 6.482349e-01
+DEAL:0::point found: 4.573651e-01 6.562500e-01
+DEAL:0::point found: 5.625000e-01 5.687859e-01
+DEAL:0::point found: 5.360895e-01 5.937500e-01
+DEAL:0::point found: 5.000000e-01 6.244950e-01
+DEAL:0::point found: 4.993626e-01 6.250000e-01
+DEAL:0::point found: 5.000000e-01 6.244950e-01
+DEAL:0::point found: 5.312500e-01 5.980996e-01
+DEAL:0::point found: 5.312500e-01 5.980996e-01
+DEAL:0::point found: 5.360895e-01 5.937500e-01
+DEAL:0::point found: 4.687500e-01 6.482349e-01
+DEAL:0::point found: 4.993626e-01 6.250000e-01
+DEAL:0::point found: 4.375000e-01 6.697182e-01
+DEAL:0::point found: 4.090071e-01 6.875000e-01
+DEAL:0::point found: 4.375000e-01 6.697182e-01
+DEAL:0::point found: 4.573651e-01 6.562500e-01
+DEAL:0::point found: 3.750000e-01 7.066284e-01
+DEAL:0::point found: 4.062500e-01 6.891652e-01
+DEAL:0::point found: 4.062500e-01 6.891652e-01
+DEAL:0::point found: 4.090071e-01 6.875000e-01
+DEAL:0::point found: 5.625000e-01 5.687859e-01
+DEAL:0::point found: 5.687859e-01 5.625000e-01
+DEAL:0::point found: 8.000000e-01 0.000000e+00
+DEAL:0::point found: 7.993891e-01 3.125000e-02
+DEAL:0::point found: 7.993891e-01 3.125000e-02
+DEAL:0::point found: 7.975538e-01 6.250000e-02
+DEAL:0::point found: 7.975538e-01 6.250000e-02
+DEAL:0::point found: 7.944858e-01 9.375000e-02
+DEAL:0::point found: 7.944858e-01 9.375000e-02
+DEAL:0::point found: 7.901709e-01 1.250000e-01
+DEAL:0::point found: 7.901709e-01 1.250000e-01
+DEAL:0::point found: 7.845906e-01 1.562500e-01
+DEAL:0::point found: 7.812500e-01 1.715099e-01
+DEAL:0::point found: 7.777135e-01 1.875000e-01
+DEAL:0::point found: 7.812500e-01 1.715099e-01
+DEAL:0::point found: 7.845906e-01 1.562500e-01
+DEAL:0::point found: 7.777135e-01 1.875000e-01
+DEAL:0::point found: 7.695005e-01 2.187500e-01
+DEAL:0::point found: 7.695005e-01 2.187500e-01
+DEAL:0::point found: 7.599207e-01 2.500000e-01
+DEAL:0::point found: 7.500000e-01 2.782530e-01
+DEAL:0::point found: 7.599207e-01 2.500000e-01
+DEAL:0::point found: 0.000000e+00 8.000000e-01
+DEAL:0::point found: 3.125000e-02 7.993891e-01
+DEAL:0::point found: 3.125000e-02 7.993891e-01
+DEAL:0::point found: 6.250000e-02 7.975538e-01
+DEAL:0::point found: 6.250000e-02 7.975538e-01
+DEAL:0::point found: 9.375000e-02 7.944858e-01
+DEAL:0::point found: 1.875000e-01 7.777135e-01
+DEAL:0::point found: 1.715099e-01 7.812500e-01
+DEAL:0::point found: 9.375000e-02 7.944858e-01
+DEAL:0::point found: 1.250000e-01 7.901709e-01
+DEAL:0::point found: 1.250000e-01 7.901709e-01
+DEAL:0::point found: 1.562500e-01 7.845906e-01
+DEAL:0::point found: 1.562500e-01 7.845906e-01
+DEAL:0::point found: 1.715099e-01 7.812500e-01
+DEAL:0::point found: 1.875000e-01 7.777135e-01
+DEAL:0::point found: 2.187500e-01 7.695005e-01
+DEAL:0::point found: 2.187500e-01 7.695005e-01
+DEAL:0::point found: 2.500000e-01 7.599207e-01
+DEAL:0::point found: 2.500000e-01 7.599207e-01
+DEAL:0::point found: 2.782530e-01 7.500000e-01

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.