]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Add tests for the BR polynomials.
authorGraham Harper <grahambenharper@gmail.com>
Tue, 3 Jul 2018 21:23:11 +0000 (21:23 +0000)
committerGraham Harper <grahambenharper@gmail.com>
Mon, 9 Jul 2018 22:10:31 +0000 (22:10 +0000)
tests/base/polynomials_br.cc [new file with mode: 0644]
tests/base/polynomials_br.output [new file with mode: 0644]

diff --git a/tests/base/polynomials_br.cc b/tests/base/polynomials_br.cc
new file mode 100644 (file)
index 0000000..1350b77
--- /dev/null
@@ -0,0 +1,181 @@
+// ---------------------------------------------------------------------
+//
+// HEADER SPACE FOR LATER USE
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+// ---------------------------------------------------------------------
+
+
+// evaluate polynomials_bernardi_raugel on the reference cell
+// watch for the first dim*vertices_per_cell shape functions to
+// yield delta functions when evaluated on the nodes
+// watch for the remaining faces_per_cell shape functions to
+// have magnitude 1 on the face centers
+
+#include <deal.II/base/geometry_info.h>
+#include <deal.II/base/polynomials_bernardi_raugel.h>
+#include <deal.II/base/quadrature_lib.h>
+#include <deal.II/base/tensor.h>
+
+#include <vector>
+
+#include "../tests.h"
+
+template <int dim>
+void
+check_poly_q(const PolynomialsBernardiRaugel<dim> &poly)
+{
+  std::vector<Point<dim>>     points;
+  std::vector<Tensor<1, dim>> values;
+  std::vector<Tensor<2, dim>> grads;
+  std::vector<Tensor<3, dim>> grads2;
+  std::vector<Tensor<4, dim>> thirds;
+  std::vector<Tensor<5, dim>> fourths;
+
+  // set up reference cell vertices
+  if (dim == 2)
+    {
+      for (unsigned int i = 0; i < 2; ++i)
+        {
+          for (unsigned int j = 0; j < 2; ++j)
+            {
+              Point<dim> p;
+              p[0] = j;
+              p[1] = i;
+              points.push_back(p);
+            }
+        }
+    }
+  else if (dim == 3)
+    {
+      for (unsigned int i = 0; i < 2; ++i)
+        {
+          for (unsigned int j = 0; j < 2; ++j)
+            {
+              for (unsigned int k = 0; k < 2; ++k)
+                {
+                  Point<dim> p;
+                  p[0] = k;
+                  p[1] = j;
+                  p[2] = i;
+                  points.push_back(p);
+                }
+            }
+        }
+    }
+
+  // loop over vertices
+  for (unsigned int i = 0; i < points.size(); ++i)
+    {
+      values.clear();
+      grads.clear();
+      grads2.clear();
+      thirds.clear();
+      fourths.clear();
+      values.resize(dim * GeometryInfo<dim>::vertices_per_cell +
+                    GeometryInfo<dim>::faces_per_cell);
+
+      deallog << "BR1<" << dim << "> point " << i << " (" << points[i][0];
+      for (unsigned int d = 1; d < dim; ++d)
+        deallog << ", " << points[i][d];
+      deallog << ")" << std::endl;
+
+      poly.compute(points[i], values, grads, grads2, thirds, fourths);
+
+      // loop through the Q_1^d shape functions
+      for (unsigned int j = 0; j < dim * GeometryInfo<dim>::vertices_per_cell;
+           ++j)
+        {
+          deallog << "BR1<" << dim << "> shape fxn " << j << ": ";
+          for (unsigned int d = 0; d < dim; ++d)
+            deallog << '\t' << values[j][d];
+          deallog << std::endl;
+        }
+    }
+}
+
+
+
+template <int dim>
+void
+check_poly_bubble(const PolynomialsBernardiRaugel<dim> &poly)
+{
+  std::vector<Point<dim>>     points;
+  std::vector<Tensor<1, dim>> values;
+  std::vector<Tensor<2, dim>> grads;
+  std::vector<Tensor<3, dim>> grads2;
+  std::vector<Tensor<4, dim>> thirds;
+  std::vector<Tensor<5, dim>> fourths;
+
+  // set up reference cell face midpoints
+  for (unsigned int i = 0; i < dim; ++i)
+    {
+      for (unsigned int j = 0; j < 2; ++j)
+        {
+          Point<dim> p;
+          p[0] = 0.5;
+          p[1] = 0.5;
+          if (dim == 3)
+            p[2] = 0.5;
+          p[i] = j;
+          points.push_back(p);
+        }
+    }
+
+  // loop over vertices
+  for (unsigned int i = 0; i < points.size(); ++i)
+    {
+      values.clear();
+      grads.clear();
+      grads2.clear();
+      thirds.clear();
+      fourths.clear();
+      values.resize(dim * GeometryInfo<dim>::vertices_per_cell +
+                    GeometryInfo<dim>::faces_per_cell);
+
+      deallog << "BR1<" << dim << "> point "
+              << (i + GeometryInfo<dim>::vertices_per_cell) << " ("
+              << points[i][0];
+      for (unsigned int d = 1; d < dim; ++d)
+        deallog << ", " << points[i][d];
+      deallog << ")" << std::endl;
+
+      poly.compute(points[i], values, grads, grads2, thirds, fourths);
+
+      // loop through the bubble shape functions
+      for (unsigned int j = dim * GeometryInfo<dim>::vertices_per_cell;
+           j < dim * GeometryInfo<dim>::vertices_per_cell +
+                 GeometryInfo<dim>::faces_per_cell;
+           ++j)
+        {
+          deallog << "BR1<" << dim << "> shape fxn " << j << ": ";
+          for (unsigned int d = 0; d < dim; ++d)
+            deallog << '\t' << values[j][d];
+          deallog << std::endl;
+        }
+    }
+}
+
+int
+main()
+{
+  std::ofstream logfile("output");
+  deallog << std::setprecision(3);
+  deallog.attach(logfile);
+
+  PolynomialsBernardiRaugel<2> p_2d(1);
+  check_poly_q(p_2d);
+  check_poly_bubble(p_2d);
+
+  PolynomialsBernardiRaugel<3> p_3d(1);
+  check_poly_q(p_3d);
+  check_poly_bubble(p_3d);
+}
diff --git a/tests/base/polynomials_br.output b/tests/base/polynomials_br.output
new file mode 100644 (file)
index 0000000..04cd7ad
--- /dev/null
@@ -0,0 +1,299 @@
+
+DEAL::BR1<2> point 0 (0.00, 0.00)
+DEAL::BR1<2> shape fxn 0:      1.00    0.00
+DEAL::BR1<2> shape fxn 1:      0.00    1.00
+DEAL::BR1<2> shape fxn 2:      0.00    0.00
+DEAL::BR1<2> shape fxn 3:      0.00    0.00
+DEAL::BR1<2> shape fxn 4:      0.00    0.00
+DEAL::BR1<2> shape fxn 5:      0.00    0.00
+DEAL::BR1<2> shape fxn 6:      0.00    0.00
+DEAL::BR1<2> shape fxn 7:      0.00    0.00
+DEAL::BR1<2> point 1 (1.00, 0.00)
+DEAL::BR1<2> shape fxn 0:      0.00    0.00
+DEAL::BR1<2> shape fxn 1:      0.00    0.00
+DEAL::BR1<2> shape fxn 2:      1.00    0.00
+DEAL::BR1<2> shape fxn 3:      0.00    1.00
+DEAL::BR1<2> shape fxn 4:      0.00    0.00
+DEAL::BR1<2> shape fxn 5:      0.00    0.00
+DEAL::BR1<2> shape fxn 6:      0.00    0.00
+DEAL::BR1<2> shape fxn 7:      0.00    0.00
+DEAL::BR1<2> point 2 (0.00, 1.00)
+DEAL::BR1<2> shape fxn 0:      0.00    0.00
+DEAL::BR1<2> shape fxn 1:      0.00    0.00
+DEAL::BR1<2> shape fxn 2:      0.00    0.00
+DEAL::BR1<2> shape fxn 3:      0.00    0.00
+DEAL::BR1<2> shape fxn 4:      1.00    0.00
+DEAL::BR1<2> shape fxn 5:      0.00    1.00
+DEAL::BR1<2> shape fxn 6:      0.00    0.00
+DEAL::BR1<2> shape fxn 7:      0.00    0.00
+DEAL::BR1<2> point 3 (1.00, 1.00)
+DEAL::BR1<2> shape fxn 0:      0.00    0.00
+DEAL::BR1<2> shape fxn 1:      0.00    0.00
+DEAL::BR1<2> shape fxn 2:      0.00    0.00
+DEAL::BR1<2> shape fxn 3:      0.00    0.00
+DEAL::BR1<2> shape fxn 4:      0.00    0.00
+DEAL::BR1<2> shape fxn 5:      0.00    0.00
+DEAL::BR1<2> shape fxn 6:      1.00    0.00
+DEAL::BR1<2> shape fxn 7:      0.00    1.00
+DEAL::BR1<2> point 4 (0.00, 0.500)
+DEAL::BR1<2> shape fxn 8:      1.00    0.00
+DEAL::BR1<2> shape fxn 9:      0.00    0.00
+DEAL::BR1<2> shape fxn 10:     0.00    0.00
+DEAL::BR1<2> shape fxn 11:     0.00    0.00
+DEAL::BR1<2> point 5 (1.00, 0.500)
+DEAL::BR1<2> shape fxn 8:      0.00    0.00
+DEAL::BR1<2> shape fxn 9:      1.00    0.00
+DEAL::BR1<2> shape fxn 10:     0.00    0.00
+DEAL::BR1<2> shape fxn 11:     0.00    0.00
+DEAL::BR1<2> point 6 (0.500, 0.00)
+DEAL::BR1<2> shape fxn 8:      0.00    0.00
+DEAL::BR1<2> shape fxn 9:      0.00    0.00
+DEAL::BR1<2> shape fxn 10:     0.00    1.00
+DEAL::BR1<2> shape fxn 11:     0.00    0.00
+DEAL::BR1<2> point 7 (0.500, 1.00)
+DEAL::BR1<2> shape fxn 8:      0.00    0.00
+DEAL::BR1<2> shape fxn 9:      0.00    0.00
+DEAL::BR1<2> shape fxn 10:     0.00    0.00
+DEAL::BR1<2> shape fxn 11:     0.00    1.00
+DEAL::BR1<3> point 0 (0.00, 0.00, 0.00)
+DEAL::BR1<3> shape fxn 0:      1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 1 (1.00, 0.00, 0.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 2 (0.00, 1.00, 0.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 3 (1.00, 1.00, 0.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 4 (0.00, 0.00, 1.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 5 (1.00, 0.00, 1.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 6 (0.00, 1.00, 1.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 21:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    0.00
+DEAL::BR1<3> point 7 (1.00, 1.00, 1.00)
+DEAL::BR1<3> shape fxn 0:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 1:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 2:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 3:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 4:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 5:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 6:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 7:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 8:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 9:      0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 10:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 11:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 12:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 13:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 14:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 15:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 16:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 17:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 18:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 19:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 20:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 21:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 22:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 23:     0.00    0.00    1.00
+DEAL::BR1<3> point 8 (0.00, 0.500, 0.500)
+DEAL::BR1<3> shape fxn 24:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    0.00
+DEAL::BR1<3> point 9 (1.00, 0.500, 0.500)
+DEAL::BR1<3> shape fxn 24:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     1.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    0.00
+DEAL::BR1<3> point 10 (0.500, 0.00, 0.500)
+DEAL::BR1<3> shape fxn 24:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    0.00
+DEAL::BR1<3> point 11 (0.500, 1.00, 0.500)
+DEAL::BR1<3> shape fxn 24:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    1.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    0.00
+DEAL::BR1<3> point 12 (0.500, 0.500, 0.00)
+DEAL::BR1<3> shape fxn 24:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    1.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    0.00
+DEAL::BR1<3> point 13 (0.500, 0.500, 1.00)
+DEAL::BR1<3> shape fxn 24:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 25:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 26:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 27:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 28:     0.00    0.00    0.00
+DEAL::BR1<3> shape fxn 29:     0.00    0.00    1.00

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.