]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
copy flow to higher number
authorkanschat <kanschat@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 23 Sep 2010 22:28:52 +0000 (22:28 +0000)
committerkanschat <kanschat@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 23 Sep 2010 22:28:52 +0000 (22:28 +0000)
git-svn-id: https://svn.dealii.org/trunk@22140 0785d39b-7218-0410-832d-ea1e28bc413d

tests/base/functions_01.cc
tests/base/functions_01/cmp/generic
tests/base/functions_04.cc [new file with mode: 0644]
tests/base/functions_04/cmp/generic [new file with mode: 0644]

index 7673b8ef6b509d446fc9a1f37aef4b191071c043..8467588754bb0a979cdc1875dd67e4df92024cdf 100644 (file)
 #include "../tests.h"
 #include <base/data_out_base.h>
 #include <base/logstream.h>
+#include <base/job_identifier.h>
 #include <base/quadrature_lib.h>
 #include <base/function_lib.h>
 #include <base/auto_derivative_function.h>
 #include <base/flow_function.h>
 #include <lac/vector.h>
 
+#include "functions.h"
+
 #include <vector>
 #include <iomanip>
 #include <fstream>
 #include <string>
 
-
-/**
- * A class replacing the implemented derivatives of a function with
- * difference quotients. This way, the correctness of the
- * implementation can be tested.
- */
-template <int dim>
-class DerivativeTestFunction :
-  public AutoDerivativeFunction<dim>
-{
-  public:
-    DerivativeTestFunction(const Function<dim>&, const double h);
-    ~DerivativeTestFunction();
-    
-    virtual void vector_value (const Point<dim>& points, Vector<double>& value) const;
-    virtual double value (const Point<dim>& points, const unsigned int component) const;
-    virtual void vector_value_list (const std::vector< Point< dim > > &points,
-                                   std::vector< Vector< double > > &values) const;
-    
-  private:
-    const Function<dim>& func;
-};
-
-
-template<int dim>
-void
-check_function(const Functions::FlowFunction<dim>& f,
-              unsigned int sub,
-              std::ostream& out)
-{
-  DerivativeTestFunction<dim> dtest1(f, 1.e-2);
-  DerivativeTestFunction<dim> dtest2(f, 2.e-2);
-                                  // Prepare a vector with a single
-                                  // patch stretching over the cube
-                                  // [-1,1]^dim
-  std::vector<DataOutBase::Patch<dim,dim> > patches(1);
-  unsigned int vertex_number = 0;
-  for (unsigned int iz=0;iz < ((dim>2) ? 2 : 1) ;++iz)
-    for (unsigned int iy=0;iy < ((dim>1) ? 2 : 1) ;++iy)
-      for (unsigned int ix=0;ix < 2 ;++ix)
-       {
-         if (dim>0) patches[0].vertices[vertex_number](0) = -1. + 2.*ix;
-         if (dim>1) patches[0].vertices[vertex_number](1) = -1. + 2.*iy;
-         if (dim>2) patches[0].vertices[vertex_number](2) = -1. + 2.*iz;
-         ++vertex_number;
-       }
-  for (unsigned int i=0;i<GeometryInfo<dim>::faces_per_cell;++i)
-    patches[0].neighbors[i] = numbers::invalid_unsigned_int;
-  patches[0].patch_index = 0;
-  patches[0].n_subdivisions = sub;
-  patches[0].points_are_available = false;
-
-  vertex_number = 1;
-  for (unsigned int d=0;d<dim;++d)
-    vertex_number *= (sub+1);
-  patches[0].data.reinit(f.n_components, vertex_number);
-
-                                  // Build the vector of quadrature points;
-  std::vector<Point<dim> > points(vertex_number);
-  const double h = 2./sub;
-  vertex_number = 0;
-  for (unsigned int iz=0;iz <= ((dim>2) ? sub : 0) ;++iz)
-    for (unsigned int iy=0;iy <= ((dim>1) ? sub : 0) ;++iy)
-      for (unsigned int ix=0;ix <= sub ;++ix)
-       {
-         if (dim>0) points[vertex_number](0) = -1.+ix*h;
-         if (dim>1) points[vertex_number](1) = -1.+iy*h;
-         if (dim>2) points[vertex_number](2) = -1.+iz*h;
-         ++vertex_number;
-       }
-  
-  std::vector<Vector<double> > values(points.size(), Vector<double>(f.n_components));
-  std::vector<std::vector<double> > values2(f.n_components,
-                                           std::vector<double>(points.size()));
-  f.vector_value_list(points, values);
-  f.vector_values(points, values2);
-  for (unsigned int i=0;i<values.size();++i)
-    for (unsigned int j=0;j<values[i].size();++j)
-      {
-                                        // generate data, but
-                                        // truncate too small values
-                                        // to avoid output that
-                                        // depends on round-off
-       if (std::fabs (values[i](j)) > 1e-10)
-         patches[0].data(j, i) = values[i](j);
-       else
-         patches[0].data(j, i) = 0;
-       if (values[i](j) != values2[j][i])
-         deallog << "Error values (" << i << ',' << j << ") : "
-                 << values[i](j) << " != " << values2[j][i] << std::endl;
-      }
-  
-  deallog << "Gradients ";
-                                  // Compute gradients and difference approximations
-  std::vector<std::vector<Tensor<1,dim> > >
-    gradients(f.n_components, std::vector<Tensor<1,dim> >(points.size()));
-  std::vector<std::vector<Tensor<1,dim> > >
-    gradients1(points.size(), std::vector<Tensor<1,dim> >(f.n_components));
-  std::vector<std::vector<Tensor<1,dim> > >
-    gradients2(points.size(), std::vector<Tensor<1,dim> >(f.n_components));
-  
-  f.vector_gradients(points, gradients);
-  dtest1.vector_gradient_list(points, gradients1);
-  dtest2.vector_gradient_list(points, gradients2);
-
-                                  // Compare gradients and difference quotients
-  for (unsigned int k=0;k<gradients.size();++k)
-    for (unsigned int i=0;i<gradients[k].size();++i)
-      {
-                                        // Compute difference
-       Tensor<1,dim> d1 = gradients1[i][k] - gradients[k][i];
-       Tensor<1,dim> d2 = gradients2[i][k] - gradients[k][i];
-       
-                                        // If the difference is
-                                        // already small, we are fine
-       if (d1.norm() > 1.e-13)
-         {
-                                            // Check for
-                                            // convergence. For full
-                                            // 4th order, gradients2
-                                            // should be 16 times as
-                                            // large, so let's be a
-                                            // bit generous
-           if (d2.norm() < 12.* d1.norm())
-             {
-               deallog << "Gradient error: point " << i
-                       << " (" << points[i] << " )"
-                       << " comp " << k
-//                     << " norms " << d1.norm() << " " << d2.norm()
-                       << std::endl;
-               for (unsigned int d=0;d<dim;++d)
-                 deallog
-                   << " " << gradients[k][i][d]
-                   << " " << gradients1[i][k][d]
-                   << std::endl;
-             }
-         }
-      }
-  deallog << "tested" << std::endl;
-
-                                  // Check if divergence is zero
-  deallog << "Divergence ";
-  
-  for (unsigned int k=0;k<points.size();++k)
-    {
-      double div = 0.;
-      for (unsigned int d=0;d<dim;++d)
-       div += gradients[d][k][d];
-      if (std::fabs(div)> 1.e-13)
-       deallog << "Divergence " << k << " "
-               << div << std::endl;
-    }
-  deallog << "tested" << std::endl;
-  
-  f.vector_laplacian_list(points, values);
-  f.vector_laplacians(points, values2);
-  double sum = 0.;
-  for (unsigned int i=0;i<values.size();++i)
-    for (unsigned int j=0;j<values[i].size();++j)
-      {
-       sum += values[i](j)*values[i](j);
-       if (values[i](j) != values2[j][i])
-         deallog << "Error values (" << i << ',' << j << ") : "
-                 << values[i](j) << " != " << values2[j][i] << std::endl;
-      }
-  deallog << "Laplacians " << std::sqrt(sum)/points.size() << std::endl;
-  
-  std::vector<std::string> names(f.n_components);
-  for (unsigned int i=0;i<names.size();++i)
-    {
-      names[i] = std::string("comp");
-    }
-  
-  DataOutBase dout;
-  DataOutBase::DXFlags dxflags;
-  DataOutBase::GnuplotFlags gflags;
-  std::vector<std_cxx1x::tuple<unsigned int, unsigned int, std::string> > vectors;
-  if (dim==2)
-    dout.write_gnuplot(patches, names, vectors, gflags, out);
-  else
-    dout.write_dx(patches, names, vectors, dxflags, out);
-}
-
-
 int main()
 {
   std::string logname = JobIdentifier::base_name(__FILE__) + std::string("/output");
   std::ofstream logfile(logname.c_str());
   deallog.attach(logfile);
   deallog.depth_console(0);
-  deallog.threshold_double(1.e-10);
-  
-  if (true)
-    {
-      deallog << " Functions::StokesCosine<2>" << std::endl;
-      Functions::StokesCosine<2> f(1.);
-      check_function(f, 4, logfile);
-    }
-
-  if (true)
-    {
-      deallog << " Functions::StokesCosine<3>" << std::endl;
-      Functions::StokesCosine<3> f(1.);
-      check_function(f, 4, logfile);
-    }
-
-  if (true)
-    {
-      deallog << "Functions::StokesLSingularity" << std::endl;
-      Functions::StokesLSingularity f;
-                                      // Use odd number of points to
-                                      // avoid lines with
-                                      // discontinuous derivatives.
-      check_function(f, 5, logfile);
-    }
-
-  if (true)
-    {
-      deallog << "Functions::Kovasznay" << std::endl;
-      Functions::Kovasznay f(10.);
-      check_function(f, 4, logfile);
-    }
-  
-  if (true)
-    {
-      deallog << "Functions::PoisseuilleFlow<2>" << std::endl;
-      Functions::PoisseuilleFlow<2> f(.8, 10.);
-      check_function(f, 4, logfile);
-    }
-  
-  if (true)
-    {
-      deallog << "Functions::PoisseuilleFlow<3>" << std::endl;
-      Functions::PoisseuilleFlow<3> f(.8, 10.);
-      check_function(f, 4, logfile);
-    }
-}
-
-
-template <int dim>
-DerivativeTestFunction<dim>::DerivativeTestFunction(const Function<dim>& f,
-                                                   const double h)
-               :
-               AutoDerivativeFunction<dim>(h, f.n_components),
-               func(f)
-{
-  this->set_formula(AutoDerivativeFunction<dim>::FourthOrder);
-}
-
-
-template <int dim>
-DerivativeTestFunction<dim>::~DerivativeTestFunction()
-{}
-
-
-template <int dim>
-void
-DerivativeTestFunction<dim>::vector_value_list (
-  const std::vector< Point< dim > > &points,
-  std::vector< Vector< double > > &values) const
-{
-  func.vector_value_list(points, values);
-}
-
-
-template<int dim>
-void DerivativeTestFunction<dim>::vector_value (
-  const Point<dim>& point,
-  Vector<double>& value) const
-{
-  func.vector_value(point, value);
-}
-
-
-template<int dim>
-double DerivativeTestFunction<dim>::value (
-    const Point<dim>& point,
-    const unsigned int comp) const
-{
-//  std::cerr << '[' << point << '!' << func.value(point, comp) << ']';
-  
-  return func.value(point, comp);
 }
index 77be59b82a810433f58c8462bb48b3cfa8d4ff76..8b137891791fe96927ad78e64b0aad7bded08bdc 100644 (file)
@@ -1,843 +1 @@
 
-DEAL:: Functions::StokesCosine<2>
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0.719980
-# This file was generated by the deal.II library.
-
-
-#
-# For a description of the GNUPLOT format see the GNUPLOT manual.
-#
-# <x> <y> <comp> <comp> <comp> 
--1.00000 -1.00000 0.00000 0.00000 0.00000 
--0.500000 -1.00000 0.00000 0.00000 0.00000 
-0.00000 -1.00000 0.00000 0.00000 0.00000 
-0.500000 -1.00000 0.00000 0.00000 0.00000 
-1.00000 -1.00000 0.00000 0.00000 0.00000 
-
--1.00000 -0.500000 0.00000 0.00000 0.00000 
--0.500000 -0.500000 -0.250000 0.250000 0.250000 
-0.00000 -0.500000 -0.500000 0.00000 0.00000 
-0.500000 -0.500000 -0.250000 -0.250000 -0.250000 
-1.00000 -0.500000 0.00000 0.00000 0.00000 
-
--1.00000 0.00000 0.00000 0.00000 0.00000 
--0.500000 0.00000 0.00000 0.500000 0.00000 
-0.00000 0.00000 0.00000 0.00000 0.00000 
-0.500000 0.00000 0.00000 -0.500000 0.00000 
-1.00000 0.00000 0.00000 0.00000 0.00000 
-
--1.00000 0.500000 0.00000 0.00000 0.00000 
--0.500000 0.500000 0.250000 0.250000 -0.250000 
-0.00000 0.500000 0.500000 0.00000 0.00000 
-0.500000 0.500000 0.250000 -0.250000 0.250000 
-1.00000 0.500000 0.00000 0.00000 0.00000 
-
--1.00000 1.00000 0.00000 0.00000 0.00000 
--0.500000 1.00000 0.00000 0.00000 0.00000 
-0.00000 1.00000 0.00000 0.00000 0.00000 
-0.500000 1.00000 0.00000 0.00000 0.00000 
-1.00000 1.00000 0.00000 0.00000 0.00000 
-
-
-DEAL:: Functions::StokesCosine<3>
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0.119270
-object "vertices" class array type float rank 1 shape 3 items 125 data follows
--1.00000       -1.00000        -1.00000        
--0.500000      -1.00000        -1.00000        
-0.00000        -1.00000        -1.00000        
-0.500000       -1.00000        -1.00000        
-1.00000        -1.00000        -1.00000        
--1.00000       -0.500000       -1.00000        
--0.500000      -0.500000       -1.00000        
-0.00000        -0.500000       -1.00000        
-0.500000       -0.500000       -1.00000        
-1.00000        -0.500000       -1.00000        
--1.00000       0.00000 -1.00000        
--0.500000      0.00000 -1.00000        
-0.00000        0.00000 -1.00000        
-0.500000       0.00000 -1.00000        
-1.00000        0.00000 -1.00000        
--1.00000       0.500000        -1.00000        
--0.500000      0.500000        -1.00000        
-0.00000        0.500000        -1.00000        
-0.500000       0.500000        -1.00000        
-1.00000        0.500000        -1.00000        
--1.00000       1.00000 -1.00000        
--0.500000      1.00000 -1.00000        
-0.00000        1.00000 -1.00000        
-0.500000       1.00000 -1.00000        
-1.00000        1.00000 -1.00000        
--1.00000       -1.00000        -0.500000       
--0.500000      -1.00000        -0.500000       
-0.00000        -1.00000        -0.500000       
-0.500000       -1.00000        -0.500000       
-1.00000        -1.00000        -0.500000       
--1.00000       -0.500000       -0.500000       
--0.500000      -0.500000       -0.500000       
-0.00000        -0.500000       -0.500000       
-0.500000       -0.500000       -0.500000       
-1.00000        -0.500000       -0.500000       
--1.00000       0.00000 -0.500000       
--0.500000      0.00000 -0.500000       
-0.00000        0.00000 -0.500000       
-0.500000       0.00000 -0.500000       
-1.00000        0.00000 -0.500000       
--1.00000       0.500000        -0.500000       
--0.500000      0.500000        -0.500000       
-0.00000        0.500000        -0.500000       
-0.500000       0.500000        -0.500000       
-1.00000        0.500000        -0.500000       
--1.00000       1.00000 -0.500000       
--0.500000      1.00000 -0.500000       
-0.00000        1.00000 -0.500000       
-0.500000       1.00000 -0.500000       
-1.00000        1.00000 -0.500000       
--1.00000       -1.00000        0.00000 
--0.500000      -1.00000        0.00000 
-0.00000        -1.00000        0.00000 
-0.500000       -1.00000        0.00000 
-1.00000        -1.00000        0.00000 
--1.00000       -0.500000       0.00000 
--0.500000      -0.500000       0.00000 
-0.00000        -0.500000       0.00000 
-0.500000       -0.500000       0.00000 
-1.00000        -0.500000       0.00000 
--1.00000       0.00000 0.00000 
--0.500000      0.00000 0.00000 
-0.00000        0.00000 0.00000 
-0.500000       0.00000 0.00000 
-1.00000        0.00000 0.00000 
--1.00000       0.500000        0.00000 
--0.500000      0.500000        0.00000 
-0.00000        0.500000        0.00000 
-0.500000       0.500000        0.00000 
-1.00000        0.500000        0.00000 
--1.00000       1.00000 0.00000 
--0.500000      1.00000 0.00000 
-0.00000        1.00000 0.00000 
-0.500000       1.00000 0.00000 
-1.00000        1.00000 0.00000 
--1.00000       -1.00000        0.500000        
--0.500000      -1.00000        0.500000        
-0.00000        -1.00000        0.500000        
-0.500000       -1.00000        0.500000        
-1.00000        -1.00000        0.500000        
--1.00000       -0.500000       0.500000        
--0.500000      -0.500000       0.500000        
-0.00000        -0.500000       0.500000        
-0.500000       -0.500000       0.500000        
-1.00000        -0.500000       0.500000        
--1.00000       0.00000 0.500000        
--0.500000      0.00000 0.500000        
-0.00000        0.00000 0.500000        
-0.500000       0.00000 0.500000        
-1.00000        0.00000 0.500000        
--1.00000       0.500000        0.500000        
--0.500000      0.500000        0.500000        
-0.00000        0.500000        0.500000        
-0.500000       0.500000        0.500000        
-1.00000        0.500000        0.500000        
--1.00000       1.00000 0.500000        
--0.500000      1.00000 0.500000        
-0.00000        1.00000 0.500000        
-0.500000       1.00000 0.500000        
-1.00000        1.00000 0.500000        
--1.00000       -1.00000        1.00000 
--0.500000      -1.00000        1.00000 
-0.00000        -1.00000        1.00000 
-0.500000       -1.00000        1.00000 
-1.00000        -1.00000        1.00000 
--1.00000       -0.500000       1.00000 
--0.500000      -0.500000       1.00000 
-0.00000        -0.500000       1.00000 
-0.500000       -0.500000       1.00000 
-1.00000        -0.500000       1.00000 
--1.00000       0.00000 1.00000 
--0.500000      0.00000 1.00000 
-0.00000        0.00000 1.00000 
-0.500000       0.00000 1.00000 
-1.00000        0.00000 1.00000 
--1.00000       0.500000        1.00000 
--0.500000      0.500000        1.00000 
-0.00000        0.500000        1.00000 
-0.500000       0.500000        1.00000 
-1.00000        0.500000        1.00000 
--1.00000       1.00000 1.00000 
--0.500000      1.00000 1.00000 
-0.00000        1.00000 1.00000 
-0.500000       1.00000 1.00000 
-1.00000        1.00000 1.00000 
-object "cells" class array type int rank 1 shape 8 items 64 data follows
-0      25      5       30      1       26      6       31
-1      26      6       31      2       27      7       32
-2      27      7       32      3       28      8       33
-3      28      8       33      4       29      9       34
-5      30      10      35      6       31      11      36
-6      31      11      36      7       32      12      37
-7      32      12      37      8       33      13      38
-8      33      13      38      9       34      14      39
-10     35      15      40      11      36      16      41
-11     36      16      41      12      37      17      42
-12     37      17      42      13      38      18      43
-13     38      18      43      14      39      19      44
-15     40      20      45      16      41      21      46
-16     41      21      46      17      42      22      47
-17     42      22      47      18      43      23      48
-18     43      23      48      19      44      24      49
-25     50      30      55      26      51      31      56
-26     51      31      56      27      52      32      57
-27     52      32      57      28      53      33      58
-28     53      33      58      29      54      34      59
-30     55      35      60      31      56      36      61
-31     56      36      61      32      57      37      62
-32     57      37      62      33      58      38      63
-33     58      38      63      34      59      39      64
-35     60      40      65      36      61      41      66
-36     61      41      66      37      62      42      67
-37     62      42      67      38      63      43      68
-38     63      43      68      39      64      44      69
-40     65      45      70      41      66      46      71
-41     66      46      71      42      67      47      72
-42     67      47      72      43      68      48      73
-43     68      48      73      44      69      49      74
-50     75      55      80      51      76      56      81
-51     76      56      81      52      77      57      82
-52     77      57      82      53      78      58      83
-53     78      58      83      54      79      59      84
-55     80      60      85      56      81      61      86
-56     81      61      86      57      82      62      87
-57     82      62      87      58      83      63      88
-58     83      63      88      59      84      64      89
-60     85      65      90      61      86      66      91
-61     86      66      91      62      87      67      92
-62     87      67      92      63      88      68      93
-63     88      68      93      64      89      69      94
-65     90      70      95      66      91      71      96
-66     91      71      96      67      92      72      97
-67     92      72      97      68      93      73      98
-68     93      73      98      69      94      74      99
-75     100     80      105     76      101     81      106
-76     101     81      106     77      102     82      107
-77     102     82      107     78      103     83      108
-78     103     83      108     79      104     84      109
-80     105     85      110     81      106     86      111
-81     106     86      111     82      107     87      112
-82     107     87      112     83      108     88      113
-83     108     88      113     84      109     89      114
-85     110     90      115     86      111     91      116
-86     111     91      116     87      112     92      117
-87     112     92      117     88      113     93      118
-88     113     93      118     89      114     94      119
-90     115     95      120     91      116     96      121
-91     116     96      121     92      117     97      122
-92     117     97      122     93      118     98      123
-93     118     98      123     94      119     99      124
-
-attribute "element type" string "cubes"
-attribute "ref" string "positions"
-object "data" class array type float rank 1 shape 4 items 125 data follows
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.125000        0.125000        -0.250000       -0.125000
-       0.250000        0.00000 0.00000 0.00000
-       0.125000        -0.125000       0.250000        0.125000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.250000        0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 -0.250000       0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       -0.125000       0.125000        0.250000        0.125000
-       -0.250000       0.00000 0.00000 0.00000
-       -0.125000       -0.125000       -0.250000       -0.125000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 -0.500000       0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.500000        0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.500000        0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 -0.500000       0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       -0.125000       -0.125000       -0.250000       0.125000
-       -0.250000       0.00000 0.00000 0.00000
-       -0.125000       0.125000        0.250000        -0.125000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 -0.250000       0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.250000        0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.125000        -0.125000       0.250000        -0.125000
-       0.250000        0.00000 0.00000 0.00000
-       0.125000        0.125000        -0.250000       0.125000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-       0.00000 0.00000 0.00000 0.00000
-attribute "dep" string "positions"
-object "deal data" class field
-component "positions" value "vertices"
-component "connections" value "cells"
-component "data" value "data"
-attribute 
-end
-DEAL::Functions::StokesLSingularity
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0
-# This file was generated by the deal.II library.
-
-
-#
-# For a description of the GNUPLOT format see the GNUPLOT manual.
-#
-# <x> <y> <comp> <comp> <comp> 
--1.00000 -1.00000 4.26453 -4.26453 0.00000 
--0.600000 -1.00000 4.09873 -3.41727 -0.473831 
--0.200000 -1.00000 3.84003 -2.45659 -1.19703 
-0.200000 -1.00000 3.41329 -1.55228 -1.95790 
-0.600000 -1.00000 2.90816 -0.922336 -2.41631 
-1.00000 -1.00000 2.47239 -0.566216 -2.55657 
-
--1.00000 -0.600000 3.41727 -4.09873 0.473831 
--0.600000 -0.600000 3.22908 -3.22908 0.00000 
--0.200000 -0.600000 2.98575 -2.10725 -1.17869 
-0.200000 -0.600000 2.45684 -0.989538 -2.71696 
-0.600000 -0.600000 1.87208 -0.428735 -3.22637 
-1.00000 -0.600000 1.49487 -0.221862 -3.13156 
-
--1.00000 -0.200000 2.45659 -3.84003 1.19703 
--0.600000 -0.200000 2.10725 -2.98575 1.17869 
--0.200000 -0.200000 1.77539 -1.77539 0.00000 
-0.200000 -0.200000 1.02929 -0.235724 -5.32170 
-0.600000 -0.200000 0.609245 -0.0505464 -4.49620 
-1.00000 -0.200000 0.467523 -0.0228120 -3.76482 
-
--1.00000 0.200000 1.55228 -3.41329 1.95790 
--0.600000 0.200000 0.989538 -2.45684 2.71696 
--0.200000 0.200000 0.235724 -1.02929 5.32170 
-0.200000 0.200000 0.00000 0.00000 0.00000 
-0.600000 0.200000 0.00000 0.00000 0.00000 
-1.00000 0.200000 0.00000 0.00000 0.00000 
-
--1.00000 0.600000 0.922336 -2.90816 2.41631 
--0.600000 0.600000 0.428735 -1.87208 3.22637 
--0.200000 0.600000 0.0505464 -0.609245 4.49620 
-0.200000 0.600000 0.00000 0.00000 0.00000 
-0.600000 0.600000 0.00000 0.00000 0.00000 
-1.00000 0.600000 0.00000 0.00000 0.00000 
-
--1.00000 1.00000 0.566216 -2.47239 2.55657 
--0.600000 1.00000 0.221862 -1.49487 3.13156 
--0.200000 1.00000 0.0228120 -0.467523 3.76482 
-0.200000 1.00000 0.00000 0.00000 0.00000 
-0.600000 1.00000 0.00000 0.00000 0.00000 
-1.00000 1.00000 0.00000 0.00000 0.00000 
-
-
-DEAL::Functions::Kovasznay
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0
-# This file was generated by the deal.II library.
-
-
-#
-# For a description of the GNUPLOT format see the GNUPLOT manual.
-#
-# <x> <y> <comp> <comp> <comp> 
--1.00000 -1.00000 -19.6940 0.00000 -213.268 
--0.500000 -1.00000 -3.54907 0.00000 -9.49326 
-0.00000 -1.00000 0.00000 0.00000 0.353753 
-0.500000 -1.00000 0.780175 0.00000 0.829592 
-1.00000 -1.00000 0.951677 0.00000 0.852586 
-
--1.00000 -0.500000 21.6940 0.00000 -213.268 
--0.500000 -0.500000 5.54907 0.00000 -9.49326 
-0.00000 -0.500000 2.00000 0.00000 0.353753 
-0.500000 -0.500000 1.21983 0.00000 0.829592 
-1.00000 -0.500000 1.04832 0.00000 0.852586 
-
--1.00000 0.00000 -19.6940 0.00000 -213.268 
--0.500000 0.00000 -3.54907 0.00000 -9.49326 
-0.00000 0.00000 0.00000 0.00000 0.353753 
-0.500000 0.00000 0.780175 0.00000 0.829592 
-1.00000 0.00000 0.951677 0.00000 0.852586 
-
--1.00000 0.500000 21.6940 0.00000 -213.268 
--0.500000 0.500000 5.54907 0.00000 -9.49326 
-0.00000 0.500000 2.00000 0.00000 0.353753 
-0.500000 0.500000 1.21983 0.00000 0.829592 
-1.00000 0.500000 1.04832 0.00000 0.852586 
-
--1.00000 1.00000 -19.6940 0.00000 -213.268 
--0.500000 1.00000 -3.54907 0.00000 -9.49326 
-0.00000 1.00000 0.00000 0.00000 0.353753 
-0.500000 1.00000 0.780175 0.00000 0.829592 
-1.00000 1.00000 0.951677 0.00000 0.852586 
-
-
-DEAL::Functions::PoisseuilleFlow<2>
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0
-# This file was generated by the deal.II library.
-
-
-#
-# For a description of the GNUPLOT format see the GNUPLOT manual.
-#
-# <x> <y> <comp> <comp> <comp> 
--1.00000 -1.00000 -0.562500 0.00000 0.312500 
--0.500000 -1.00000 -0.562500 0.00000 0.156250 
-0.00000 -1.00000 -0.562500 0.00000 0.00000 
-0.500000 -1.00000 -0.562500 0.00000 -0.156250 
-1.00000 -1.00000 -0.562500 0.00000 -0.312500 
-
--1.00000 -0.500000 0.609375 0.00000 0.312500 
--0.500000 -0.500000 0.609375 0.00000 0.156250 
-0.00000 -0.500000 0.609375 0.00000 0.00000 
-0.500000 -0.500000 0.609375 0.00000 -0.156250 
-1.00000 -0.500000 0.609375 0.00000 -0.312500 
-
--1.00000 0.00000 1.00000 0.00000 0.312500 
--0.500000 0.00000 1.00000 0.00000 0.156250 
-0.00000 0.00000 1.00000 0.00000 0.00000 
-0.500000 0.00000 1.00000 0.00000 -0.156250 
-1.00000 0.00000 1.00000 0.00000 -0.312500 
-
--1.00000 0.500000 0.609375 0.00000 0.312500 
--0.500000 0.500000 0.609375 0.00000 0.156250 
-0.00000 0.500000 0.609375 0.00000 0.00000 
-0.500000 0.500000 0.609375 0.00000 -0.156250 
-1.00000 0.500000 0.609375 0.00000 -0.312500 
-
--1.00000 1.00000 -0.562500 0.00000 0.312500 
--0.500000 1.00000 -0.562500 0.00000 0.156250 
-0.00000 1.00000 -0.562500 0.00000 0.00000 
-0.500000 1.00000 -0.562500 0.00000 -0.156250 
-1.00000 1.00000 -0.562500 0.00000 -0.312500 
-
-
-DEAL::Functions::PoisseuilleFlow<3>
-DEAL::Gradients tested
-DEAL::Divergence tested
-DEAL::Laplacians 0
-object "vertices" class array type float rank 1 shape 3 items 125 data follows
--1.00000       -1.00000        -1.00000        
--0.500000      -1.00000        -1.00000        
-0.00000        -1.00000        -1.00000        
-0.500000       -1.00000        -1.00000        
-1.00000        -1.00000        -1.00000        
--1.00000       -0.500000       -1.00000        
--0.500000      -0.500000       -1.00000        
-0.00000        -0.500000       -1.00000        
-0.500000       -0.500000       -1.00000        
-1.00000        -0.500000       -1.00000        
--1.00000       0.00000 -1.00000        
--0.500000      0.00000 -1.00000        
-0.00000        0.00000 -1.00000        
-0.500000       0.00000 -1.00000        
-1.00000        0.00000 -1.00000        
--1.00000       0.500000        -1.00000        
--0.500000      0.500000        -1.00000        
-0.00000        0.500000        -1.00000        
-0.500000       0.500000        -1.00000        
-1.00000        0.500000        -1.00000        
--1.00000       1.00000 -1.00000        
--0.500000      1.00000 -1.00000        
-0.00000        1.00000 -1.00000        
-0.500000       1.00000 -1.00000        
-1.00000        1.00000 -1.00000        
--1.00000       -1.00000        -0.500000       
--0.500000      -1.00000        -0.500000       
-0.00000        -1.00000        -0.500000       
-0.500000       -1.00000        -0.500000       
-1.00000        -1.00000        -0.500000       
--1.00000       -0.500000       -0.500000       
--0.500000      -0.500000       -0.500000       
-0.00000        -0.500000       -0.500000       
-0.500000       -0.500000       -0.500000       
-1.00000        -0.500000       -0.500000       
--1.00000       0.00000 -0.500000       
--0.500000      0.00000 -0.500000       
-0.00000        0.00000 -0.500000       
-0.500000       0.00000 -0.500000       
-1.00000        0.00000 -0.500000       
--1.00000       0.500000        -0.500000       
--0.500000      0.500000        -0.500000       
-0.00000        0.500000        -0.500000       
-0.500000       0.500000        -0.500000       
-1.00000        0.500000        -0.500000       
--1.00000       1.00000 -0.500000       
--0.500000      1.00000 -0.500000       
-0.00000        1.00000 -0.500000       
-0.500000       1.00000 -0.500000       
-1.00000        1.00000 -0.500000       
--1.00000       -1.00000        0.00000 
--0.500000      -1.00000        0.00000 
-0.00000        -1.00000        0.00000 
-0.500000       -1.00000        0.00000 
-1.00000        -1.00000        0.00000 
--1.00000       -0.500000       0.00000 
--0.500000      -0.500000       0.00000 
-0.00000        -0.500000       0.00000 
-0.500000       -0.500000       0.00000 
-1.00000        -0.500000       0.00000 
--1.00000       0.00000 0.00000 
--0.500000      0.00000 0.00000 
-0.00000        0.00000 0.00000 
-0.500000       0.00000 0.00000 
-1.00000        0.00000 0.00000 
--1.00000       0.500000        0.00000 
--0.500000      0.500000        0.00000 
-0.00000        0.500000        0.00000 
-0.500000       0.500000        0.00000 
-1.00000        0.500000        0.00000 
--1.00000       1.00000 0.00000 
--0.500000      1.00000 0.00000 
-0.00000        1.00000 0.00000 
-0.500000       1.00000 0.00000 
-1.00000        1.00000 0.00000 
--1.00000       -1.00000        0.500000        
--0.500000      -1.00000        0.500000        
-0.00000        -1.00000        0.500000        
-0.500000       -1.00000        0.500000        
-1.00000        -1.00000        0.500000        
--1.00000       -0.500000       0.500000        
--0.500000      -0.500000       0.500000        
-0.00000        -0.500000       0.500000        
-0.500000       -0.500000       0.500000        
-1.00000        -0.500000       0.500000        
--1.00000       0.00000 0.500000        
--0.500000      0.00000 0.500000        
-0.00000        0.00000 0.500000        
-0.500000       0.00000 0.500000        
-1.00000        0.00000 0.500000        
--1.00000       0.500000        0.500000        
--0.500000      0.500000        0.500000        
-0.00000        0.500000        0.500000        
-0.500000       0.500000        0.500000        
-1.00000        0.500000        0.500000        
--1.00000       1.00000 0.500000        
--0.500000      1.00000 0.500000        
-0.00000        1.00000 0.500000        
-0.500000       1.00000 0.500000        
-1.00000        1.00000 0.500000        
--1.00000       -1.00000        1.00000 
--0.500000      -1.00000        1.00000 
-0.00000        -1.00000        1.00000 
-0.500000       -1.00000        1.00000 
-1.00000        -1.00000        1.00000 
--1.00000       -0.500000       1.00000 
--0.500000      -0.500000       1.00000 
-0.00000        -0.500000       1.00000 
-0.500000       -0.500000       1.00000 
-1.00000        -0.500000       1.00000 
--1.00000       0.00000 1.00000 
--0.500000      0.00000 1.00000 
-0.00000        0.00000 1.00000 
-0.500000       0.00000 1.00000 
-1.00000        0.00000 1.00000 
--1.00000       0.500000        1.00000 
--0.500000      0.500000        1.00000 
-0.00000        0.500000        1.00000 
-0.500000       0.500000        1.00000 
-1.00000        0.500000        1.00000 
--1.00000       1.00000 1.00000 
--0.500000      1.00000 1.00000 
-0.00000        1.00000 1.00000 
-0.500000       1.00000 1.00000 
-1.00000        1.00000 1.00000 
-object "cells" class array type int rank 1 shape 8 items 64 data follows
-0      25      5       30      1       26      6       31
-1      26      6       31      2       27      7       32
-2      27      7       32      3       28      8       33
-3      28      8       33      4       29      9       34
-5      30      10      35      6       31      11      36
-6      31      11      36      7       32      12      37
-7      32      12      37      8       33      13      38
-8      33      13      38      9       34      14      39
-10     35      15      40      11      36      16      41
-11     36      16      41      12      37      17      42
-12     37      17      42      13      38      18      43
-13     38      18      43      14      39      19      44
-15     40      20      45      16      41      21      46
-16     41      21      46      17      42      22      47
-17     42      22      47      18      43      23      48
-18     43      23      48      19      44      24      49
-25     50      30      55      26      51      31      56
-26     51      31      56      27      52      32      57
-27     52      32      57      28      53      33      58
-28     53      33      58      29      54      34      59
-30     55      35      60      31      56      36      61
-31     56      36      61      32      57      37      62
-32     57      37      62      33      58      38      63
-33     58      38      63      34      59      39      64
-35     60      40      65      36      61      41      66
-36     61      41      66      37      62      42      67
-37     62      42      67      38      63      43      68
-38     63      43      68      39      64      44      69
-40     65      45      70      41      66      46      71
-41     66      46      71      42      67      47      72
-42     67      47      72      43      68      48      73
-43     68      48      73      44      69      49      74
-50     75      55      80      51      76      56      81
-51     76      56      81      52      77      57      82
-52     77      57      82      53      78      58      83
-53     78      58      83      54      79      59      84
-55     80      60      85      56      81      61      86
-56     81      61      86      57      82      62      87
-57     82      62      87      58      83      63      88
-58     83      63      88      59      84      64      89
-60     85      65      90      61      86      66      91
-61     86      66      91      62      87      67      92
-62     87      67      92      63      88      68      93
-63     88      68      93      64      89      69      94
-65     90      70      95      66      91      71      96
-66     91      71      96      67      92      72      97
-67     92      72      97      68      93      73      98
-68     93      73      98      69      94      74      99
-75     100     80      105     76      101     81      106
-76     101     81      106     77      102     82      107
-77     102     82      107     78      103     83      108
-78     103     83      108     79      104     84      109
-80     105     85      110     81      106     86      111
-81     106     86      111     82      107     87      112
-82     107     87      112     83      108     88      113
-83     108     88      113     84      109     89      114
-85     110     90      115     86      111     91      116
-86     111     91      116     87      112     92      117
-87     112     92      117     88      113     93      118
-88     113     93      118     89      114     94      119
-90     115     95      120     91      116     96      121
-91     116     96      121     92      117     97      122
-92     117     97      122     93      118     98      123
-93     118     98      123     94      119     99      124
-
-attribute "element type" string "cubes"
-attribute "ref" string "positions"
-object "data" class array type float rank 1 shape 4 items 125 data follows
-       -2.12500        0.00000 0.00000 0.625000
-       -2.12500        0.00000 0.00000 0.312500
-       -2.12500        0.00000 0.00000 0.00000
-       -2.12500        0.00000 0.00000 -0.312500
-       -2.12500        0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -0.562500       0.00000 0.00000 0.625000
-       -0.562500       0.00000 0.00000 0.312500
-       -0.562500       0.00000 0.00000 0.00000
-       -0.562500       0.00000 0.00000 -0.312500
-       -0.562500       0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -2.12500        0.00000 0.00000 0.625000
-       -2.12500        0.00000 0.00000 0.312500
-       -2.12500        0.00000 0.00000 0.00000
-       -2.12500        0.00000 0.00000 -0.312500
-       -2.12500        0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       0.218750        0.00000 0.00000 0.625000
-       0.218750        0.00000 0.00000 0.312500
-       0.218750        0.00000 0.00000 0.00000
-       0.218750        0.00000 0.00000 -0.312500
-       0.218750        0.00000 0.00000 -0.625000
-       0.609375        0.00000 0.00000 0.625000
-       0.609375        0.00000 0.00000 0.312500
-       0.609375        0.00000 0.00000 0.00000
-       0.609375        0.00000 0.00000 -0.312500
-       0.609375        0.00000 0.00000 -0.625000
-       0.218750        0.00000 0.00000 0.625000
-       0.218750        0.00000 0.00000 0.312500
-       0.218750        0.00000 0.00000 0.00000
-       0.218750        0.00000 0.00000 -0.312500
-       0.218750        0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -0.562500       0.00000 0.00000 0.625000
-       -0.562500       0.00000 0.00000 0.312500
-       -0.562500       0.00000 0.00000 0.00000
-       -0.562500       0.00000 0.00000 -0.312500
-       -0.562500       0.00000 0.00000 -0.625000
-       0.609375        0.00000 0.00000 0.625000
-       0.609375        0.00000 0.00000 0.312500
-       0.609375        0.00000 0.00000 0.00000
-       0.609375        0.00000 0.00000 -0.312500
-       0.609375        0.00000 0.00000 -0.625000
-       1.00000 0.00000 0.00000 0.625000
-       1.00000 0.00000 0.00000 0.312500
-       1.00000 0.00000 0.00000 0.00000
-       1.00000 0.00000 0.00000 -0.312500
-       1.00000 0.00000 0.00000 -0.625000
-       0.609375        0.00000 0.00000 0.625000
-       0.609375        0.00000 0.00000 0.312500
-       0.609375        0.00000 0.00000 0.00000
-       0.609375        0.00000 0.00000 -0.312500
-       0.609375        0.00000 0.00000 -0.625000
-       -0.562500       0.00000 0.00000 0.625000
-       -0.562500       0.00000 0.00000 0.312500
-       -0.562500       0.00000 0.00000 0.00000
-       -0.562500       0.00000 0.00000 -0.312500
-       -0.562500       0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       0.218750        0.00000 0.00000 0.625000
-       0.218750        0.00000 0.00000 0.312500
-       0.218750        0.00000 0.00000 0.00000
-       0.218750        0.00000 0.00000 -0.312500
-       0.218750        0.00000 0.00000 -0.625000
-       0.609375        0.00000 0.00000 0.625000
-       0.609375        0.00000 0.00000 0.312500
-       0.609375        0.00000 0.00000 0.00000
-       0.609375        0.00000 0.00000 -0.312500
-       0.609375        0.00000 0.00000 -0.625000
-       0.218750        0.00000 0.00000 0.625000
-       0.218750        0.00000 0.00000 0.312500
-       0.218750        0.00000 0.00000 0.00000
-       0.218750        0.00000 0.00000 -0.312500
-       0.218750        0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -2.12500        0.00000 0.00000 0.625000
-       -2.12500        0.00000 0.00000 0.312500
-       -2.12500        0.00000 0.00000 0.00000
-       -2.12500        0.00000 0.00000 -0.312500
-       -2.12500        0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -0.562500       0.00000 0.00000 0.625000
-       -0.562500       0.00000 0.00000 0.312500
-       -0.562500       0.00000 0.00000 0.00000
-       -0.562500       0.00000 0.00000 -0.312500
-       -0.562500       0.00000 0.00000 -0.625000
-       -0.953125       0.00000 0.00000 0.625000
-       -0.953125       0.00000 0.00000 0.312500
-       -0.953125       0.00000 0.00000 0.00000
-       -0.953125       0.00000 0.00000 -0.312500
-       -0.953125       0.00000 0.00000 -0.625000
-       -2.12500        0.00000 0.00000 0.625000
-       -2.12500        0.00000 0.00000 0.312500
-       -2.12500        0.00000 0.00000 0.00000
-       -2.12500        0.00000 0.00000 -0.312500
-       -2.12500        0.00000 0.00000 -0.625000
-attribute "dep" string "positions"
-object "deal data" class field
-component "positions" value "vertices"
-component "connections" value "cells"
-component "data" value "data"
-attribute 
-end
diff --git a/tests/base/functions_04.cc b/tests/base/functions_04.cc
new file mode 100644 (file)
index 0000000..aedbe82
--- /dev/null
@@ -0,0 +1,313 @@
+//-----------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$ 
+//
+//    Copyright (C) 2007, 2008, 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//-----------------------------------------------------------------------------
+
+// Plot flow functions in library and check their consistency
+
+#include "../tests.h"
+#include <base/data_out_base.h>
+#include <base/logstream.h>
+#include <base/job_identifier.h>
+#include <base/quadrature_lib.h>
+#include <base/function_lib.h>
+#include <base/auto_derivative_function.h>
+#include <base/flow_function.h>
+#include <lac/vector.h>
+
+#include <vector>
+#include <iomanip>
+#include <fstream>
+#include <string>
+
+
+/**
+ * A class replacing the implemented derivatives of a function with
+ * difference quotients. This way, the correctness of the
+ * implementation can be tested.
+ */
+template <int dim>
+class DerivativeTestFunction :
+  public AutoDerivativeFunction<dim>
+{
+  public:
+    DerivativeTestFunction(const Function<dim>&, const double h);
+    ~DerivativeTestFunction();
+    
+    virtual void vector_value (const Point<dim>& points, Vector<double>& value) const;
+    virtual double value (const Point<dim>& points, const unsigned int component) const;
+    virtual void vector_value_list (const std::vector< Point< dim > > &points,
+                                   std::vector< Vector< double > > &values) const;
+    
+  private:
+    const Function<dim>& func;
+};
+
+
+template<int dim>
+void
+check_function(const Functions::FlowFunction<dim>& f,
+              unsigned int sub,
+              std::ostream& out)
+{
+  DerivativeTestFunction<dim> dtest1(f, 1.e-2);
+  DerivativeTestFunction<dim> dtest2(f, 2.e-2);
+                                  // Prepare a vector with a single
+                                  // patch stretching over the cube
+                                  // [-1,1]^dim
+  std::vector<DataOutBase::Patch<dim,dim> > patches(1);
+  unsigned int vertex_number = 0;
+  for (unsigned int iz=0;iz < ((dim>2) ? 2 : 1) ;++iz)
+    for (unsigned int iy=0;iy < ((dim>1) ? 2 : 1) ;++iy)
+      for (unsigned int ix=0;ix < 2 ;++ix)
+       {
+         if (dim>0) patches[0].vertices[vertex_number](0) = -1. + 2.*ix;
+         if (dim>1) patches[0].vertices[vertex_number](1) = -1. + 2.*iy;
+         if (dim>2) patches[0].vertices[vertex_number](2) = -1. + 2.*iz;
+         ++vertex_number;
+       }
+  for (unsigned int i=0;i<GeometryInfo<dim>::faces_per_cell;++i)
+    patches[0].neighbors[i] = numbers::invalid_unsigned_int;
+  patches[0].patch_index = 0;
+  patches[0].n_subdivisions = sub;
+  patches[0].points_are_available = false;
+
+  vertex_number = 1;
+  for (unsigned int d=0;d<dim;++d)
+    vertex_number *= (sub+1);
+  patches[0].data.reinit(f.n_components, vertex_number);
+
+                                  // Build the vector of quadrature points;
+  std::vector<Point<dim> > points(vertex_number);
+  const double h = 2./sub;
+  vertex_number = 0;
+  for (unsigned int iz=0;iz <= ((dim>2) ? sub : 0) ;++iz)
+    for (unsigned int iy=0;iy <= ((dim>1) ? sub : 0) ;++iy)
+      for (unsigned int ix=0;ix <= sub ;++ix)
+       {
+         if (dim>0) points[vertex_number](0) = -1.+ix*h;
+         if (dim>1) points[vertex_number](1) = -1.+iy*h;
+         if (dim>2) points[vertex_number](2) = -1.+iz*h;
+         ++vertex_number;
+       }
+  
+  std::vector<Vector<double> > values(points.size(), Vector<double>(f.n_components));
+  std::vector<std::vector<double> > values2(f.n_components,
+                                           std::vector<double>(points.size()));
+  f.vector_value_list(points, values);
+  f.vector_values(points, values2);
+  for (unsigned int i=0;i<values.size();++i)
+    for (unsigned int j=0;j<values[i].size();++j)
+      {
+                                        // generate data, but
+                                        // truncate too small values
+                                        // to avoid output that
+                                        // depends on round-off
+       if (std::fabs (values[i](j)) > 1e-10)
+         patches[0].data(j, i) = values[i](j);
+       else
+         patches[0].data(j, i) = 0;
+       if (values[i](j) != values2[j][i])
+         deallog << "Error values (" << i << ',' << j << ") : "
+                 << values[i](j) << " != " << values2[j][i] << std::endl;
+      }
+  
+  deallog << "Gradients ";
+                                  // Compute gradients and difference approximations
+  std::vector<std::vector<Tensor<1,dim> > >
+    gradients(f.n_components, std::vector<Tensor<1,dim> >(points.size()));
+  std::vector<std::vector<Tensor<1,dim> > >
+    gradients1(points.size(), std::vector<Tensor<1,dim> >(f.n_components));
+  std::vector<std::vector<Tensor<1,dim> > >
+    gradients2(points.size(), std::vector<Tensor<1,dim> >(f.n_components));
+  
+  f.vector_gradients(points, gradients);
+  dtest1.vector_gradient_list(points, gradients1);
+  dtest2.vector_gradient_list(points, gradients2);
+
+                                  // Compare gradients and difference quotients
+  for (unsigned int k=0;k<gradients.size();++k)
+    for (unsigned int i=0;i<gradients[k].size();++i)
+      {
+                                        // Compute difference
+       Tensor<1,dim> d1 = gradients1[i][k] - gradients[k][i];
+       Tensor<1,dim> d2 = gradients2[i][k] - gradients[k][i];
+       
+                                        // If the difference is
+                                        // already small, we are fine
+       if (d1.norm() > 1.e-13)
+         {
+                                            // Check for
+                                            // convergence. For full
+                                            // 4th order, gradients2
+                                            // should be 16 times as
+                                            // large, so let's be a
+                                            // bit generous
+           if (d2.norm() < 12.* d1.norm())
+             {
+               deallog << "Gradient error: point " << i
+                       << " (" << points[i] << " )"
+                       << " comp " << k
+//                     << " norms " << d1.norm() << " " << d2.norm()
+                       << std::endl;
+               for (unsigned int d=0;d<dim;++d)
+                 deallog
+                   << " " << gradients[k][i][d]
+                   << " " << gradients1[i][k][d]
+                   << std::endl;
+             }
+         }
+      }
+  deallog << "tested" << std::endl;
+
+                                  // Check if divergence is zero
+  deallog << "Divergence ";
+  
+  for (unsigned int k=0;k<points.size();++k)
+    {
+      double div = 0.;
+      for (unsigned int d=0;d<dim;++d)
+       div += gradients[d][k][d];
+      if (std::fabs(div)> 1.e-13)
+       deallog << "Divergence " << k << " "
+               << div << std::endl;
+    }
+  deallog << "tested" << std::endl;
+  
+  f.vector_laplacian_list(points, values);
+  f.vector_laplacians(points, values2);
+  double sum = 0.;
+  for (unsigned int i=0;i<values.size();++i)
+    for (unsigned int j=0;j<values[i].size();++j)
+      {
+       sum += values[i](j)*values[i](j);
+       if (values[i](j) != values2[j][i])
+         deallog << "Error values (" << i << ',' << j << ") : "
+                 << values[i](j) << " != " << values2[j][i] << std::endl;
+      }
+  deallog << "Laplacians " << std::sqrt(sum)/points.size() << std::endl;
+  
+  std::vector<std::string> names(f.n_components);
+  for (unsigned int i=0;i<names.size();++i)
+    {
+      names[i] = std::string("comp");
+    }
+  
+  DataOutBase dout;
+  DataOutBase::DXFlags dxflags;
+  DataOutBase::GnuplotFlags gflags;
+  std::vector<std_cxx1x::tuple<unsigned int, unsigned int, std::string> > vectors;
+  if (dim==2)
+    dout.write_gnuplot(patches, names, vectors, gflags, out);
+  else
+    dout.write_dx(patches, names, vectors, dxflags, out);
+}
+
+
+int main()
+{
+  std::string logname = JobIdentifier::base_name(__FILE__) + std::string("/output");
+  std::ofstream logfile(logname.c_str());
+  deallog.attach(logfile);
+  deallog.depth_console(0);
+  deallog.threshold_double(1.e-10);
+  
+  if (true)
+    {
+      deallog << " Functions::StokesCosine<2>" << std::endl;
+      Functions::StokesCosine<2> f(1.);
+      check_function(f, 4, logfile);
+    }
+
+  if (true)
+    {
+      deallog << " Functions::StokesCosine<3>" << std::endl;
+      Functions::StokesCosine<3> f(1.);
+      check_function(f, 4, logfile);
+    }
+
+  if (true)
+    {
+      deallog << "Functions::StokesLSingularity" << std::endl;
+      Functions::StokesLSingularity f;
+                                      // Use odd number of points to
+                                      // avoid lines with
+                                      // discontinuous derivatives.
+      check_function(f, 5, logfile);
+    }
+
+  if (true)
+    {
+      deallog << "Functions::Kovasznay" << std::endl;
+      Functions::Kovasznay f(10.);
+      check_function(f, 4, logfile);
+    }
+  
+  if (true)
+    {
+      deallog << "Functions::PoisseuilleFlow<2>" << std::endl;
+      Functions::PoisseuilleFlow<2> f(.8, 10.);
+      check_function(f, 4, logfile);
+    }
+  
+  if (true)
+    {
+      deallog << "Functions::PoisseuilleFlow<3>" << std::endl;
+      Functions::PoisseuilleFlow<3> f(.8, 10.);
+      check_function(f, 4, logfile);
+    }
+}
+
+
+template <int dim>
+DerivativeTestFunction<dim>::DerivativeTestFunction(const Function<dim>& f,
+                                                   const double h)
+               :
+               AutoDerivativeFunction<dim>(h, f.n_components),
+               func(f)
+{
+  this->set_formula(AutoDerivativeFunction<dim>::FourthOrder);
+}
+
+
+template <int dim>
+DerivativeTestFunction<dim>::~DerivativeTestFunction()
+{}
+
+
+template <int dim>
+void
+DerivativeTestFunction<dim>::vector_value_list (
+  const std::vector< Point< dim > > &points,
+  std::vector< Vector< double > > &values) const
+{
+  func.vector_value_list(points, values);
+}
+
+
+template<int dim>
+void DerivativeTestFunction<dim>::vector_value (
+  const Point<dim>& point,
+  Vector<double>& value) const
+{
+  func.vector_value(point, value);
+}
+
+
+template<int dim>
+double DerivativeTestFunction<dim>::value (
+    const Point<dim>& point,
+    const unsigned int comp) const
+{
+//  std::cerr << '[' << point << '!' << func.value(point, comp) << ']';
+  
+  return func.value(point, comp);
+}
diff --git a/tests/base/functions_04/cmp/generic b/tests/base/functions_04/cmp/generic
new file mode 100644 (file)
index 0000000..77be59b
--- /dev/null
@@ -0,0 +1,843 @@
+
+DEAL:: Functions::StokesCosine<2>
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0.719980
+# This file was generated by the deal.II library.
+
+
+#
+# For a description of the GNUPLOT format see the GNUPLOT manual.
+#
+# <x> <y> <comp> <comp> <comp> 
+-1.00000 -1.00000 0.00000 0.00000 0.00000 
+-0.500000 -1.00000 0.00000 0.00000 0.00000 
+0.00000 -1.00000 0.00000 0.00000 0.00000 
+0.500000 -1.00000 0.00000 0.00000 0.00000 
+1.00000 -1.00000 0.00000 0.00000 0.00000 
+
+-1.00000 -0.500000 0.00000 0.00000 0.00000 
+-0.500000 -0.500000 -0.250000 0.250000 0.250000 
+0.00000 -0.500000 -0.500000 0.00000 0.00000 
+0.500000 -0.500000 -0.250000 -0.250000 -0.250000 
+1.00000 -0.500000 0.00000 0.00000 0.00000 
+
+-1.00000 0.00000 0.00000 0.00000 0.00000 
+-0.500000 0.00000 0.00000 0.500000 0.00000 
+0.00000 0.00000 0.00000 0.00000 0.00000 
+0.500000 0.00000 0.00000 -0.500000 0.00000 
+1.00000 0.00000 0.00000 0.00000 0.00000 
+
+-1.00000 0.500000 0.00000 0.00000 0.00000 
+-0.500000 0.500000 0.250000 0.250000 -0.250000 
+0.00000 0.500000 0.500000 0.00000 0.00000 
+0.500000 0.500000 0.250000 -0.250000 0.250000 
+1.00000 0.500000 0.00000 0.00000 0.00000 
+
+-1.00000 1.00000 0.00000 0.00000 0.00000 
+-0.500000 1.00000 0.00000 0.00000 0.00000 
+0.00000 1.00000 0.00000 0.00000 0.00000 
+0.500000 1.00000 0.00000 0.00000 0.00000 
+1.00000 1.00000 0.00000 0.00000 0.00000 
+
+
+DEAL:: Functions::StokesCosine<3>
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0.119270
+object "vertices" class array type float rank 1 shape 3 items 125 data follows
+-1.00000       -1.00000        -1.00000        
+-0.500000      -1.00000        -1.00000        
+0.00000        -1.00000        -1.00000        
+0.500000       -1.00000        -1.00000        
+1.00000        -1.00000        -1.00000        
+-1.00000       -0.500000       -1.00000        
+-0.500000      -0.500000       -1.00000        
+0.00000        -0.500000       -1.00000        
+0.500000       -0.500000       -1.00000        
+1.00000        -0.500000       -1.00000        
+-1.00000       0.00000 -1.00000        
+-0.500000      0.00000 -1.00000        
+0.00000        0.00000 -1.00000        
+0.500000       0.00000 -1.00000        
+1.00000        0.00000 -1.00000        
+-1.00000       0.500000        -1.00000        
+-0.500000      0.500000        -1.00000        
+0.00000        0.500000        -1.00000        
+0.500000       0.500000        -1.00000        
+1.00000        0.500000        -1.00000        
+-1.00000       1.00000 -1.00000        
+-0.500000      1.00000 -1.00000        
+0.00000        1.00000 -1.00000        
+0.500000       1.00000 -1.00000        
+1.00000        1.00000 -1.00000        
+-1.00000       -1.00000        -0.500000       
+-0.500000      -1.00000        -0.500000       
+0.00000        -1.00000        -0.500000       
+0.500000       -1.00000        -0.500000       
+1.00000        -1.00000        -0.500000       
+-1.00000       -0.500000       -0.500000       
+-0.500000      -0.500000       -0.500000       
+0.00000        -0.500000       -0.500000       
+0.500000       -0.500000       -0.500000       
+1.00000        -0.500000       -0.500000       
+-1.00000       0.00000 -0.500000       
+-0.500000      0.00000 -0.500000       
+0.00000        0.00000 -0.500000       
+0.500000       0.00000 -0.500000       
+1.00000        0.00000 -0.500000       
+-1.00000       0.500000        -0.500000       
+-0.500000      0.500000        -0.500000       
+0.00000        0.500000        -0.500000       
+0.500000       0.500000        -0.500000       
+1.00000        0.500000        -0.500000       
+-1.00000       1.00000 -0.500000       
+-0.500000      1.00000 -0.500000       
+0.00000        1.00000 -0.500000       
+0.500000       1.00000 -0.500000       
+1.00000        1.00000 -0.500000       
+-1.00000       -1.00000        0.00000 
+-0.500000      -1.00000        0.00000 
+0.00000        -1.00000        0.00000 
+0.500000       -1.00000        0.00000 
+1.00000        -1.00000        0.00000 
+-1.00000       -0.500000       0.00000 
+-0.500000      -0.500000       0.00000 
+0.00000        -0.500000       0.00000 
+0.500000       -0.500000       0.00000 
+1.00000        -0.500000       0.00000 
+-1.00000       0.00000 0.00000 
+-0.500000      0.00000 0.00000 
+0.00000        0.00000 0.00000 
+0.500000       0.00000 0.00000 
+1.00000        0.00000 0.00000 
+-1.00000       0.500000        0.00000 
+-0.500000      0.500000        0.00000 
+0.00000        0.500000        0.00000 
+0.500000       0.500000        0.00000 
+1.00000        0.500000        0.00000 
+-1.00000       1.00000 0.00000 
+-0.500000      1.00000 0.00000 
+0.00000        1.00000 0.00000 
+0.500000       1.00000 0.00000 
+1.00000        1.00000 0.00000 
+-1.00000       -1.00000        0.500000        
+-0.500000      -1.00000        0.500000        
+0.00000        -1.00000        0.500000        
+0.500000       -1.00000        0.500000        
+1.00000        -1.00000        0.500000        
+-1.00000       -0.500000       0.500000        
+-0.500000      -0.500000       0.500000        
+0.00000        -0.500000       0.500000        
+0.500000       -0.500000       0.500000        
+1.00000        -0.500000       0.500000        
+-1.00000       0.00000 0.500000        
+-0.500000      0.00000 0.500000        
+0.00000        0.00000 0.500000        
+0.500000       0.00000 0.500000        
+1.00000        0.00000 0.500000        
+-1.00000       0.500000        0.500000        
+-0.500000      0.500000        0.500000        
+0.00000        0.500000        0.500000        
+0.500000       0.500000        0.500000        
+1.00000        0.500000        0.500000        
+-1.00000       1.00000 0.500000        
+-0.500000      1.00000 0.500000        
+0.00000        1.00000 0.500000        
+0.500000       1.00000 0.500000        
+1.00000        1.00000 0.500000        
+-1.00000       -1.00000        1.00000 
+-0.500000      -1.00000        1.00000 
+0.00000        -1.00000        1.00000 
+0.500000       -1.00000        1.00000 
+1.00000        -1.00000        1.00000 
+-1.00000       -0.500000       1.00000 
+-0.500000      -0.500000       1.00000 
+0.00000        -0.500000       1.00000 
+0.500000       -0.500000       1.00000 
+1.00000        -0.500000       1.00000 
+-1.00000       0.00000 1.00000 
+-0.500000      0.00000 1.00000 
+0.00000        0.00000 1.00000 
+0.500000       0.00000 1.00000 
+1.00000        0.00000 1.00000 
+-1.00000       0.500000        1.00000 
+-0.500000      0.500000        1.00000 
+0.00000        0.500000        1.00000 
+0.500000       0.500000        1.00000 
+1.00000        0.500000        1.00000 
+-1.00000       1.00000 1.00000 
+-0.500000      1.00000 1.00000 
+0.00000        1.00000 1.00000 
+0.500000       1.00000 1.00000 
+1.00000        1.00000 1.00000 
+object "cells" class array type int rank 1 shape 8 items 64 data follows
+0      25      5       30      1       26      6       31
+1      26      6       31      2       27      7       32
+2      27      7       32      3       28      8       33
+3      28      8       33      4       29      9       34
+5      30      10      35      6       31      11      36
+6      31      11      36      7       32      12      37
+7      32      12      37      8       33      13      38
+8      33      13      38      9       34      14      39
+10     35      15      40      11      36      16      41
+11     36      16      41      12      37      17      42
+12     37      17      42      13      38      18      43
+13     38      18      43      14      39      19      44
+15     40      20      45      16      41      21      46
+16     41      21      46      17      42      22      47
+17     42      22      47      18      43      23      48
+18     43      23      48      19      44      24      49
+25     50      30      55      26      51      31      56
+26     51      31      56      27      52      32      57
+27     52      32      57      28      53      33      58
+28     53      33      58      29      54      34      59
+30     55      35      60      31      56      36      61
+31     56      36      61      32      57      37      62
+32     57      37      62      33      58      38      63
+33     58      38      63      34      59      39      64
+35     60      40      65      36      61      41      66
+36     61      41      66      37      62      42      67
+37     62      42      67      38      63      43      68
+38     63      43      68      39      64      44      69
+40     65      45      70      41      66      46      71
+41     66      46      71      42      67      47      72
+42     67      47      72      43      68      48      73
+43     68      48      73      44      69      49      74
+50     75      55      80      51      76      56      81
+51     76      56      81      52      77      57      82
+52     77      57      82      53      78      58      83
+53     78      58      83      54      79      59      84
+55     80      60      85      56      81      61      86
+56     81      61      86      57      82      62      87
+57     82      62      87      58      83      63      88
+58     83      63      88      59      84      64      89
+60     85      65      90      61      86      66      91
+61     86      66      91      62      87      67      92
+62     87      67      92      63      88      68      93
+63     88      68      93      64      89      69      94
+65     90      70      95      66      91      71      96
+66     91      71      96      67      92      72      97
+67     92      72      97      68      93      73      98
+68     93      73      98      69      94      74      99
+75     100     80      105     76      101     81      106
+76     101     81      106     77      102     82      107
+77     102     82      107     78      103     83      108
+78     103     83      108     79      104     84      109
+80     105     85      110     81      106     86      111
+81     106     86      111     82      107     87      112
+82     107     87      112     83      108     88      113
+83     108     88      113     84      109     89      114
+85     110     90      115     86      111     91      116
+86     111     91      116     87      112     92      117
+87     112     92      117     88      113     93      118
+88     113     93      118     89      114     94      119
+90     115     95      120     91      116     96      121
+91     116     96      121     92      117     97      122
+92     117     97      122     93      118     98      123
+93     118     98      123     94      119     99      124
+
+attribute "element type" string "cubes"
+attribute "ref" string "positions"
+object "data" class array type float rank 1 shape 4 items 125 data follows
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.125000        0.125000        -0.250000       -0.125000
+       0.250000        0.00000 0.00000 0.00000
+       0.125000        -0.125000       0.250000        0.125000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.250000        0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 -0.250000       0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       -0.125000       0.125000        0.250000        0.125000
+       -0.250000       0.00000 0.00000 0.00000
+       -0.125000       -0.125000       -0.250000       -0.125000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 -0.500000       0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.500000        0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.500000        0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 -0.500000       0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       -0.125000       -0.125000       -0.250000       0.125000
+       -0.250000       0.00000 0.00000 0.00000
+       -0.125000       0.125000        0.250000        -0.125000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 -0.250000       0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.250000        0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.125000        -0.125000       0.250000        -0.125000
+       0.250000        0.00000 0.00000 0.00000
+       0.125000        0.125000        -0.250000       0.125000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+       0.00000 0.00000 0.00000 0.00000
+attribute "dep" string "positions"
+object "deal data" class field
+component "positions" value "vertices"
+component "connections" value "cells"
+component "data" value "data"
+attribute 
+end
+DEAL::Functions::StokesLSingularity
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0
+# This file was generated by the deal.II library.
+
+
+#
+# For a description of the GNUPLOT format see the GNUPLOT manual.
+#
+# <x> <y> <comp> <comp> <comp> 
+-1.00000 -1.00000 4.26453 -4.26453 0.00000 
+-0.600000 -1.00000 4.09873 -3.41727 -0.473831 
+-0.200000 -1.00000 3.84003 -2.45659 -1.19703 
+0.200000 -1.00000 3.41329 -1.55228 -1.95790 
+0.600000 -1.00000 2.90816 -0.922336 -2.41631 
+1.00000 -1.00000 2.47239 -0.566216 -2.55657 
+
+-1.00000 -0.600000 3.41727 -4.09873 0.473831 
+-0.600000 -0.600000 3.22908 -3.22908 0.00000 
+-0.200000 -0.600000 2.98575 -2.10725 -1.17869 
+0.200000 -0.600000 2.45684 -0.989538 -2.71696 
+0.600000 -0.600000 1.87208 -0.428735 -3.22637 
+1.00000 -0.600000 1.49487 -0.221862 -3.13156 
+
+-1.00000 -0.200000 2.45659 -3.84003 1.19703 
+-0.600000 -0.200000 2.10725 -2.98575 1.17869 
+-0.200000 -0.200000 1.77539 -1.77539 0.00000 
+0.200000 -0.200000 1.02929 -0.235724 -5.32170 
+0.600000 -0.200000 0.609245 -0.0505464 -4.49620 
+1.00000 -0.200000 0.467523 -0.0228120 -3.76482 
+
+-1.00000 0.200000 1.55228 -3.41329 1.95790 
+-0.600000 0.200000 0.989538 -2.45684 2.71696 
+-0.200000 0.200000 0.235724 -1.02929 5.32170 
+0.200000 0.200000 0.00000 0.00000 0.00000 
+0.600000 0.200000 0.00000 0.00000 0.00000 
+1.00000 0.200000 0.00000 0.00000 0.00000 
+
+-1.00000 0.600000 0.922336 -2.90816 2.41631 
+-0.600000 0.600000 0.428735 -1.87208 3.22637 
+-0.200000 0.600000 0.0505464 -0.609245 4.49620 
+0.200000 0.600000 0.00000 0.00000 0.00000 
+0.600000 0.600000 0.00000 0.00000 0.00000 
+1.00000 0.600000 0.00000 0.00000 0.00000 
+
+-1.00000 1.00000 0.566216 -2.47239 2.55657 
+-0.600000 1.00000 0.221862 -1.49487 3.13156 
+-0.200000 1.00000 0.0228120 -0.467523 3.76482 
+0.200000 1.00000 0.00000 0.00000 0.00000 
+0.600000 1.00000 0.00000 0.00000 0.00000 
+1.00000 1.00000 0.00000 0.00000 0.00000 
+
+
+DEAL::Functions::Kovasznay
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0
+# This file was generated by the deal.II library.
+
+
+#
+# For a description of the GNUPLOT format see the GNUPLOT manual.
+#
+# <x> <y> <comp> <comp> <comp> 
+-1.00000 -1.00000 -19.6940 0.00000 -213.268 
+-0.500000 -1.00000 -3.54907 0.00000 -9.49326 
+0.00000 -1.00000 0.00000 0.00000 0.353753 
+0.500000 -1.00000 0.780175 0.00000 0.829592 
+1.00000 -1.00000 0.951677 0.00000 0.852586 
+
+-1.00000 -0.500000 21.6940 0.00000 -213.268 
+-0.500000 -0.500000 5.54907 0.00000 -9.49326 
+0.00000 -0.500000 2.00000 0.00000 0.353753 
+0.500000 -0.500000 1.21983 0.00000 0.829592 
+1.00000 -0.500000 1.04832 0.00000 0.852586 
+
+-1.00000 0.00000 -19.6940 0.00000 -213.268 
+-0.500000 0.00000 -3.54907 0.00000 -9.49326 
+0.00000 0.00000 0.00000 0.00000 0.353753 
+0.500000 0.00000 0.780175 0.00000 0.829592 
+1.00000 0.00000 0.951677 0.00000 0.852586 
+
+-1.00000 0.500000 21.6940 0.00000 -213.268 
+-0.500000 0.500000 5.54907 0.00000 -9.49326 
+0.00000 0.500000 2.00000 0.00000 0.353753 
+0.500000 0.500000 1.21983 0.00000 0.829592 
+1.00000 0.500000 1.04832 0.00000 0.852586 
+
+-1.00000 1.00000 -19.6940 0.00000 -213.268 
+-0.500000 1.00000 -3.54907 0.00000 -9.49326 
+0.00000 1.00000 0.00000 0.00000 0.353753 
+0.500000 1.00000 0.780175 0.00000 0.829592 
+1.00000 1.00000 0.951677 0.00000 0.852586 
+
+
+DEAL::Functions::PoisseuilleFlow<2>
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0
+# This file was generated by the deal.II library.
+
+
+#
+# For a description of the GNUPLOT format see the GNUPLOT manual.
+#
+# <x> <y> <comp> <comp> <comp> 
+-1.00000 -1.00000 -0.562500 0.00000 0.312500 
+-0.500000 -1.00000 -0.562500 0.00000 0.156250 
+0.00000 -1.00000 -0.562500 0.00000 0.00000 
+0.500000 -1.00000 -0.562500 0.00000 -0.156250 
+1.00000 -1.00000 -0.562500 0.00000 -0.312500 
+
+-1.00000 -0.500000 0.609375 0.00000 0.312500 
+-0.500000 -0.500000 0.609375 0.00000 0.156250 
+0.00000 -0.500000 0.609375 0.00000 0.00000 
+0.500000 -0.500000 0.609375 0.00000 -0.156250 
+1.00000 -0.500000 0.609375 0.00000 -0.312500 
+
+-1.00000 0.00000 1.00000 0.00000 0.312500 
+-0.500000 0.00000 1.00000 0.00000 0.156250 
+0.00000 0.00000 1.00000 0.00000 0.00000 
+0.500000 0.00000 1.00000 0.00000 -0.156250 
+1.00000 0.00000 1.00000 0.00000 -0.312500 
+
+-1.00000 0.500000 0.609375 0.00000 0.312500 
+-0.500000 0.500000 0.609375 0.00000 0.156250 
+0.00000 0.500000 0.609375 0.00000 0.00000 
+0.500000 0.500000 0.609375 0.00000 -0.156250 
+1.00000 0.500000 0.609375 0.00000 -0.312500 
+
+-1.00000 1.00000 -0.562500 0.00000 0.312500 
+-0.500000 1.00000 -0.562500 0.00000 0.156250 
+0.00000 1.00000 -0.562500 0.00000 0.00000 
+0.500000 1.00000 -0.562500 0.00000 -0.156250 
+1.00000 1.00000 -0.562500 0.00000 -0.312500 
+
+
+DEAL::Functions::PoisseuilleFlow<3>
+DEAL::Gradients tested
+DEAL::Divergence tested
+DEAL::Laplacians 0
+object "vertices" class array type float rank 1 shape 3 items 125 data follows
+-1.00000       -1.00000        -1.00000        
+-0.500000      -1.00000        -1.00000        
+0.00000        -1.00000        -1.00000        
+0.500000       -1.00000        -1.00000        
+1.00000        -1.00000        -1.00000        
+-1.00000       -0.500000       -1.00000        
+-0.500000      -0.500000       -1.00000        
+0.00000        -0.500000       -1.00000        
+0.500000       -0.500000       -1.00000        
+1.00000        -0.500000       -1.00000        
+-1.00000       0.00000 -1.00000        
+-0.500000      0.00000 -1.00000        
+0.00000        0.00000 -1.00000        
+0.500000       0.00000 -1.00000        
+1.00000        0.00000 -1.00000        
+-1.00000       0.500000        -1.00000        
+-0.500000      0.500000        -1.00000        
+0.00000        0.500000        -1.00000        
+0.500000       0.500000        -1.00000        
+1.00000        0.500000        -1.00000        
+-1.00000       1.00000 -1.00000        
+-0.500000      1.00000 -1.00000        
+0.00000        1.00000 -1.00000        
+0.500000       1.00000 -1.00000        
+1.00000        1.00000 -1.00000        
+-1.00000       -1.00000        -0.500000       
+-0.500000      -1.00000        -0.500000       
+0.00000        -1.00000        -0.500000       
+0.500000       -1.00000        -0.500000       
+1.00000        -1.00000        -0.500000       
+-1.00000       -0.500000       -0.500000       
+-0.500000      -0.500000       -0.500000       
+0.00000        -0.500000       -0.500000       
+0.500000       -0.500000       -0.500000       
+1.00000        -0.500000       -0.500000       
+-1.00000       0.00000 -0.500000       
+-0.500000      0.00000 -0.500000       
+0.00000        0.00000 -0.500000       
+0.500000       0.00000 -0.500000       
+1.00000        0.00000 -0.500000       
+-1.00000       0.500000        -0.500000       
+-0.500000      0.500000        -0.500000       
+0.00000        0.500000        -0.500000       
+0.500000       0.500000        -0.500000       
+1.00000        0.500000        -0.500000       
+-1.00000       1.00000 -0.500000       
+-0.500000      1.00000 -0.500000       
+0.00000        1.00000 -0.500000       
+0.500000       1.00000 -0.500000       
+1.00000        1.00000 -0.500000       
+-1.00000       -1.00000        0.00000 
+-0.500000      -1.00000        0.00000 
+0.00000        -1.00000        0.00000 
+0.500000       -1.00000        0.00000 
+1.00000        -1.00000        0.00000 
+-1.00000       -0.500000       0.00000 
+-0.500000      -0.500000       0.00000 
+0.00000        -0.500000       0.00000 
+0.500000       -0.500000       0.00000 
+1.00000        -0.500000       0.00000 
+-1.00000       0.00000 0.00000 
+-0.500000      0.00000 0.00000 
+0.00000        0.00000 0.00000 
+0.500000       0.00000 0.00000 
+1.00000        0.00000 0.00000 
+-1.00000       0.500000        0.00000 
+-0.500000      0.500000        0.00000 
+0.00000        0.500000        0.00000 
+0.500000       0.500000        0.00000 
+1.00000        0.500000        0.00000 
+-1.00000       1.00000 0.00000 
+-0.500000      1.00000 0.00000 
+0.00000        1.00000 0.00000 
+0.500000       1.00000 0.00000 
+1.00000        1.00000 0.00000 
+-1.00000       -1.00000        0.500000        
+-0.500000      -1.00000        0.500000        
+0.00000        -1.00000        0.500000        
+0.500000       -1.00000        0.500000        
+1.00000        -1.00000        0.500000        
+-1.00000       -0.500000       0.500000        
+-0.500000      -0.500000       0.500000        
+0.00000        -0.500000       0.500000        
+0.500000       -0.500000       0.500000        
+1.00000        -0.500000       0.500000        
+-1.00000       0.00000 0.500000        
+-0.500000      0.00000 0.500000        
+0.00000        0.00000 0.500000        
+0.500000       0.00000 0.500000        
+1.00000        0.00000 0.500000        
+-1.00000       0.500000        0.500000        
+-0.500000      0.500000        0.500000        
+0.00000        0.500000        0.500000        
+0.500000       0.500000        0.500000        
+1.00000        0.500000        0.500000        
+-1.00000       1.00000 0.500000        
+-0.500000      1.00000 0.500000        
+0.00000        1.00000 0.500000        
+0.500000       1.00000 0.500000        
+1.00000        1.00000 0.500000        
+-1.00000       -1.00000        1.00000 
+-0.500000      -1.00000        1.00000 
+0.00000        -1.00000        1.00000 
+0.500000       -1.00000        1.00000 
+1.00000        -1.00000        1.00000 
+-1.00000       -0.500000       1.00000 
+-0.500000      -0.500000       1.00000 
+0.00000        -0.500000       1.00000 
+0.500000       -0.500000       1.00000 
+1.00000        -0.500000       1.00000 
+-1.00000       0.00000 1.00000 
+-0.500000      0.00000 1.00000 
+0.00000        0.00000 1.00000 
+0.500000       0.00000 1.00000 
+1.00000        0.00000 1.00000 
+-1.00000       0.500000        1.00000 
+-0.500000      0.500000        1.00000 
+0.00000        0.500000        1.00000 
+0.500000       0.500000        1.00000 
+1.00000        0.500000        1.00000 
+-1.00000       1.00000 1.00000 
+-0.500000      1.00000 1.00000 
+0.00000        1.00000 1.00000 
+0.500000       1.00000 1.00000 
+1.00000        1.00000 1.00000 
+object "cells" class array type int rank 1 shape 8 items 64 data follows
+0      25      5       30      1       26      6       31
+1      26      6       31      2       27      7       32
+2      27      7       32      3       28      8       33
+3      28      8       33      4       29      9       34
+5      30      10      35      6       31      11      36
+6      31      11      36      7       32      12      37
+7      32      12      37      8       33      13      38
+8      33      13      38      9       34      14      39
+10     35      15      40      11      36      16      41
+11     36      16      41      12      37      17      42
+12     37      17      42      13      38      18      43
+13     38      18      43      14      39      19      44
+15     40      20      45      16      41      21      46
+16     41      21      46      17      42      22      47
+17     42      22      47      18      43      23      48
+18     43      23      48      19      44      24      49
+25     50      30      55      26      51      31      56
+26     51      31      56      27      52      32      57
+27     52      32      57      28      53      33      58
+28     53      33      58      29      54      34      59
+30     55      35      60      31      56      36      61
+31     56      36      61      32      57      37      62
+32     57      37      62      33      58      38      63
+33     58      38      63      34      59      39      64
+35     60      40      65      36      61      41      66
+36     61      41      66      37      62      42      67
+37     62      42      67      38      63      43      68
+38     63      43      68      39      64      44      69
+40     65      45      70      41      66      46      71
+41     66      46      71      42      67      47      72
+42     67      47      72      43      68      48      73
+43     68      48      73      44      69      49      74
+50     75      55      80      51      76      56      81
+51     76      56      81      52      77      57      82
+52     77      57      82      53      78      58      83
+53     78      58      83      54      79      59      84
+55     80      60      85      56      81      61      86
+56     81      61      86      57      82      62      87
+57     82      62      87      58      83      63      88
+58     83      63      88      59      84      64      89
+60     85      65      90      61      86      66      91
+61     86      66      91      62      87      67      92
+62     87      67      92      63      88      68      93
+63     88      68      93      64      89      69      94
+65     90      70      95      66      91      71      96
+66     91      71      96      67      92      72      97
+67     92      72      97      68      93      73      98
+68     93      73      98      69      94      74      99
+75     100     80      105     76      101     81      106
+76     101     81      106     77      102     82      107
+77     102     82      107     78      103     83      108
+78     103     83      108     79      104     84      109
+80     105     85      110     81      106     86      111
+81     106     86      111     82      107     87      112
+82     107     87      112     83      108     88      113
+83     108     88      113     84      109     89      114
+85     110     90      115     86      111     91      116
+86     111     91      116     87      112     92      117
+87     112     92      117     88      113     93      118
+88     113     93      118     89      114     94      119
+90     115     95      120     91      116     96      121
+91     116     96      121     92      117     97      122
+92     117     97      122     93      118     98      123
+93     118     98      123     94      119     99      124
+
+attribute "element type" string "cubes"
+attribute "ref" string "positions"
+object "data" class array type float rank 1 shape 4 items 125 data follows
+       -2.12500        0.00000 0.00000 0.625000
+       -2.12500        0.00000 0.00000 0.312500
+       -2.12500        0.00000 0.00000 0.00000
+       -2.12500        0.00000 0.00000 -0.312500
+       -2.12500        0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -0.562500       0.00000 0.00000 0.625000
+       -0.562500       0.00000 0.00000 0.312500
+       -0.562500       0.00000 0.00000 0.00000
+       -0.562500       0.00000 0.00000 -0.312500
+       -0.562500       0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -2.12500        0.00000 0.00000 0.625000
+       -2.12500        0.00000 0.00000 0.312500
+       -2.12500        0.00000 0.00000 0.00000
+       -2.12500        0.00000 0.00000 -0.312500
+       -2.12500        0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       0.218750        0.00000 0.00000 0.625000
+       0.218750        0.00000 0.00000 0.312500
+       0.218750        0.00000 0.00000 0.00000
+       0.218750        0.00000 0.00000 -0.312500
+       0.218750        0.00000 0.00000 -0.625000
+       0.609375        0.00000 0.00000 0.625000
+       0.609375        0.00000 0.00000 0.312500
+       0.609375        0.00000 0.00000 0.00000
+       0.609375        0.00000 0.00000 -0.312500
+       0.609375        0.00000 0.00000 -0.625000
+       0.218750        0.00000 0.00000 0.625000
+       0.218750        0.00000 0.00000 0.312500
+       0.218750        0.00000 0.00000 0.00000
+       0.218750        0.00000 0.00000 -0.312500
+       0.218750        0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -0.562500       0.00000 0.00000 0.625000
+       -0.562500       0.00000 0.00000 0.312500
+       -0.562500       0.00000 0.00000 0.00000
+       -0.562500       0.00000 0.00000 -0.312500
+       -0.562500       0.00000 0.00000 -0.625000
+       0.609375        0.00000 0.00000 0.625000
+       0.609375        0.00000 0.00000 0.312500
+       0.609375        0.00000 0.00000 0.00000
+       0.609375        0.00000 0.00000 -0.312500
+       0.609375        0.00000 0.00000 -0.625000
+       1.00000 0.00000 0.00000 0.625000
+       1.00000 0.00000 0.00000 0.312500
+       1.00000 0.00000 0.00000 0.00000
+       1.00000 0.00000 0.00000 -0.312500
+       1.00000 0.00000 0.00000 -0.625000
+       0.609375        0.00000 0.00000 0.625000
+       0.609375        0.00000 0.00000 0.312500
+       0.609375        0.00000 0.00000 0.00000
+       0.609375        0.00000 0.00000 -0.312500
+       0.609375        0.00000 0.00000 -0.625000
+       -0.562500       0.00000 0.00000 0.625000
+       -0.562500       0.00000 0.00000 0.312500
+       -0.562500       0.00000 0.00000 0.00000
+       -0.562500       0.00000 0.00000 -0.312500
+       -0.562500       0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       0.218750        0.00000 0.00000 0.625000
+       0.218750        0.00000 0.00000 0.312500
+       0.218750        0.00000 0.00000 0.00000
+       0.218750        0.00000 0.00000 -0.312500
+       0.218750        0.00000 0.00000 -0.625000
+       0.609375        0.00000 0.00000 0.625000
+       0.609375        0.00000 0.00000 0.312500
+       0.609375        0.00000 0.00000 0.00000
+       0.609375        0.00000 0.00000 -0.312500
+       0.609375        0.00000 0.00000 -0.625000
+       0.218750        0.00000 0.00000 0.625000
+       0.218750        0.00000 0.00000 0.312500
+       0.218750        0.00000 0.00000 0.00000
+       0.218750        0.00000 0.00000 -0.312500
+       0.218750        0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -2.12500        0.00000 0.00000 0.625000
+       -2.12500        0.00000 0.00000 0.312500
+       -2.12500        0.00000 0.00000 0.00000
+       -2.12500        0.00000 0.00000 -0.312500
+       -2.12500        0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -0.562500       0.00000 0.00000 0.625000
+       -0.562500       0.00000 0.00000 0.312500
+       -0.562500       0.00000 0.00000 0.00000
+       -0.562500       0.00000 0.00000 -0.312500
+       -0.562500       0.00000 0.00000 -0.625000
+       -0.953125       0.00000 0.00000 0.625000
+       -0.953125       0.00000 0.00000 0.312500
+       -0.953125       0.00000 0.00000 0.00000
+       -0.953125       0.00000 0.00000 -0.312500
+       -0.953125       0.00000 0.00000 -0.625000
+       -2.12500        0.00000 0.00000 0.625000
+       -2.12500        0.00000 0.00000 0.312500
+       -2.12500        0.00000 0.00000 0.00000
+       -2.12500        0.00000 0.00000 -0.312500
+       -2.12500        0.00000 0.00000 -0.625000
+attribute "dep" string "positions"
+object "deal data" class field
+component "positions" value "vertices"
+component "connections" value "cells"
+component "data" value "data"
+attribute 
+end

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.