]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Allow for all FE to be returned by get_fe_by_name
authorDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Fri, 8 Jul 2016 13:23:49 +0000 (15:23 +0200)
committerDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Wed, 13 Jul 2016 15:04:54 +0000 (17:04 +0200)
source/fe/fe_tools.cc
tests/bits/get_fe_from_name.cc [deleted file]
tests/bits/get_fe_from_name.output [deleted file]
tests/fe/get_fe_from_name_01.cc
tests/fe/get_fe_from_name_01.output

index 95cd4080c0d70c427594adfe87028fdb9cfd8275..58e0bbc736d5e38d1055b057ad15433345f81d05 100644 (file)
 #include <deal.II/grid/grid_generator.h>
 #include <deal.II/fe/fe_tools.h>
 #include <deal.II/fe/fe.h>
+#include <deal.II/fe/fe_face.h>
+#include <deal.II/fe/fe_q_iso_q1.h>
 #include <deal.II/fe/fe_q.h>
+#include <deal.II/fe/fe_q_dg0.h>
+#include <deal.II/fe/fe_q_bubbles.h>
 #include <deal.II/fe/fe_bernstein.h>
 #include <deal.II/fe/fe_q_hierarchical.h>
 #include <deal.II/fe/fe_dgq.h>
 #include <deal.II/fe/fe_dgp.h>
 #include <deal.II/fe/fe_dgp_monomial.h>
 #include <deal.II/fe/fe_dgp_nonparametric.h>
+#include <deal.II/fe/fe_dg_vector.h>
 #include <deal.II/fe/fe_nedelec.h>
 #include <deal.II/fe/fe_abf.h>
 #include <deal.II/fe/fe_bdm.h>
 #include <deal.II/fe/fe_raviart_thomas.h>
+#include <deal.II/fe/fe_rannacher_turek.h>
 #include <deal.II/fe/fe_nothing.h>
 #include <deal.II/fe/fe_system.h>
 #include <deal.II/fe/fe_values.h>
@@ -945,6 +951,46 @@ namespace FETools
     return new FE_Q<3>(quad);
   }
 
+  // Specializations for FE_Q_DG0.
+  template <>
+  FiniteElement<1, 1> *
+  FEFactory<FE_Q_DG0<1, 1> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_DG0<1>(quad);
+  }
+  template <>
+  FiniteElement<2, 2> *
+  FEFactory<FE_Q_DG0<2, 2> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_DG0<2>(quad);
+  }
+  template <>
+  FiniteElement<3, 3> *
+  FEFactory<FE_Q_DG0<3, 3> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_DG0<3>(quad);
+  }
+
+  // Specializations for FE_Q_Bubbles.
+  template <>
+  FiniteElement<1, 1> *
+  FEFactory<FE_Q_Bubbles<1, 1> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_Bubbles<1>(quad);
+  }
+  template <>
+  FiniteElement<2, 2> *
+  FEFactory<FE_Q_Bubbles<2, 2> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_Bubbles<2>(quad);
+  }
+  template <>
+  FiniteElement<3, 3> *
+  FEFactory<FE_Q_Bubbles<3, 3> >::get (const Quadrature<1> &quad) const
+  {
+    return new FE_Q_Bubbles<3>(quad);
+  }
+
 
   // Specializations for FE_DGQArbitraryNodes.
   template <>
@@ -1004,8 +1050,16 @@ namespace
       = FEFactoryPointer(new FETools::FEFactory<FE_Q_Hierarchical<dim> >);
     result["FE_ABF"]
       = FEFactoryPointer(new FETools::FEFactory<FE_ABF<dim> >);
+    result["FE_Bernstein"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Bernstein<dim> >);
     result["FE_BDM"]
       = FEFactoryPointer(new FETools::FEFactory<FE_BDM<dim> >);
+    result["FE_DGBDM"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_DGBDM<dim> >);
+    result["FE_DGNedelec"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_DGNedelec<dim> >);
+    result["FE_DGRaviartThomas"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_DGRaviartThomas<dim> >);
     result["FE_RaviartThomas"]
       = FEFactoryPointer(new FETools::FEFactory<FE_RaviartThomas<dim> >);
     result["FE_RaviartThomasNodal"]
@@ -1022,12 +1076,22 @@ namespace
       = FEFactoryPointer(new FETools::FEFactory<FE_DGQ<dim> >);
     result["FE_DGQArbitraryNodes"]
       = FEFactoryPointer(new FETools::FEFactory<FE_DGQ<dim> >);
+    result["FE_FaceQ"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_FaceQ<dim> >);
+    result["FE_FaceP"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_FaceP<dim> >);
     result["FE_Q"]
       = FEFactoryPointer(new FETools::FEFactory<FE_Q<dim> >);
-    result["FE_Bernstein"]
-      = FEFactoryPointer(new FETools::FEFactory<FE_Bernstein<dim> >);
+    result["FE_Q_DG0"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_DG0<dim> >);
+    result["FE_Q_Bubbles"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_Bubbles<dim> >);
+    result["FE_Q_iso_Q1"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_iso_Q1<dim> >);
     result["FE_Nothing"]
       = FEFactoryPointer(new FETools::FEFactory<FE_Nothing<dim> >);
+    result["FE_RannacherTurek"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_RannacherTurek<dim> >);
   }
 
   // This function fills a map from names to finite elements for any
@@ -1039,12 +1103,22 @@ namespace
   {
     typedef std_cxx11::shared_ptr<const Subscriptor> FEFactoryPointer;
 
+    result["FE_Bernstein"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Bernstein<dim,spacedim> >);
     result["FE_DGP"]
       = FEFactoryPointer(new FETools::FEFactory<FE_DGP<dim,spacedim> >);
     result["FE_DGQ"]
       = FEFactoryPointer(new FETools::FEFactory<FE_DGQ<dim,spacedim> >);
+    result["FE_Nothing"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Nothing<dim,spacedim> >);
     result["FE_DGQArbitraryNodes"]
       = FEFactoryPointer(new FETools::FEFactory<FE_DGQ<dim,spacedim> >);
+    result["FE_Q_Bubbles"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_Bubbles<dim,spacedim> >);
+    result["FE_Q_DG0"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_DG0<dim,spacedim> >);
+    result["FE_Q_iso_Q1"]
+      = FEFactoryPointer(new FETools::FEFactory<FE_Q_iso_Q1<dim,spacedim> >);
     result["FE_Q"]
       = FEFactoryPointer(new FETools::FEFactory<FE_Q<dim,spacedim> >);
     result["FE_Bernstein"]
diff --git a/tests/bits/get_fe_from_name.cc b/tests/bits/get_fe_from_name.cc
deleted file mode 100644 (file)
index 4d11c9f..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-// ---------------------------------------------------------------------
-//
-// Copyright (C) 2005 - 2015 by the deal.II authors
-//
-// This file is part of the deal.II library.
-//
-// The deal.II library is free software; you can use it, redistribute
-// it, and/or modify it under the terms of the GNU Lesser General
-// Public License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// The full text of the license can be found in the file LICENSE at
-// the top level of the deal.II distribution.
-//
-// ---------------------------------------------------------------------
-
-
-#include "../tests.h"
-#include <fstream>
-#include <deal.II/base/logstream.h>
-#include <deal.II/fe/fe.h>
-#include <deal.II/fe/fe_tools.h>
-
-class Test
-{
-public:
-
-  void generate(const char *myname)
-  {
-    std::string name = myname;
-
-    fe1 = FETools::get_fe_from_name<1>(name);
-    fe2 = FETools::get_fe_from_name<2>(name);
-    fe3 = FETools::get_fe_from_name<3>(name);
-
-    deallog << "Read " << name << std::endl;
-    deallog << "Generated :" << std::endl;
-    deallog << fe1->get_name()  << std::endl;
-    deallog << fe2->get_name()  << std::endl;
-    deallog << fe3->get_name()  << std::endl;
-
-    delete fe1;
-    delete fe2;
-    delete fe3;
-  }
-
-  FiniteElement<1> *fe1;
-  FiniteElement<2> *fe2;
-  FiniteElement<3> *fe3;
-
-};
-
-int main ()
-{
-  std::ofstream logfile("output");
-  deallog.attach(logfile);
-
-  deallog.threshold_double(1.e-10);
-
-  Test gen;
-
-  gen.generate("FE_Q_Hierarchical(1)");
-  gen.generate("FE_DGPNonparametric(1)");
-  gen.generate("FE_DGQ(1)");
-  gen.generate("FE_Q(1)");
-
-  gen.generate("FE_Q_Hierarchical(2)");
-  gen.generate("FE_DGPNonparametric(2)");
-  gen.generate("FE_DGQ(2)");
-  gen.generate("FE_Q(2)");
-
-  gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]");
-  gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]");
-  gen.generate("FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]");
-
-  gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]");
-  gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]");
-  gen.generate("FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]");
-
-  gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]");
-  gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]");
-  gen.generate("FESystem[FE_DGQ(1)^2-FE_DGQ(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_DGQ(1)]");
-
-
-  gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]");
-  gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]");
-  gen.generate("FESystem[FE_DGQ(1)^2-FE_Q(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_Q(1)]");
-
-
-  return 0;
-}
-
diff --git a/tests/bits/get_fe_from_name.output b/tests/bits/get_fe_from_name.output
deleted file mode 100644 (file)
index 17ba896..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-
-DEAL::Read FE_Q_Hierarchical(1)
-DEAL::Generated :
-DEAL::FE_Q_Hierarchical<1>(1)
-DEAL::FE_Q_Hierarchical<2>(1)
-DEAL::FE_Q_Hierarchical<3>(1)
-DEAL::Read FE_DGPNonparametric(1)
-DEAL::Generated :
-DEAL::FE_DGPNonparametric<1>(1)
-DEAL::FE_DGPNonparametric<2>(1)
-DEAL::FE_DGPNonparametric<3>(1)
-DEAL::Read FE_DGQ(1)
-DEAL::Generated :
-DEAL::FE_DGQ<1>(1)
-DEAL::FE_DGQ<2>(1)
-DEAL::FE_DGQ<3>(1)
-DEAL::Read FE_Q(1)
-DEAL::Generated :
-DEAL::FE_Q<1>(1)
-DEAL::FE_Q<2>(1)
-DEAL::FE_Q<3>(1)
-DEAL::Read FE_Q_Hierarchical(2)
-DEAL::Generated :
-DEAL::FE_Q_Hierarchical<1>(2)
-DEAL::FE_Q_Hierarchical<2>(2)
-DEAL::FE_Q_Hierarchical<3>(2)
-DEAL::Read FE_DGPNonparametric(2)
-DEAL::Generated :
-DEAL::FE_DGPNonparametric<1>(2)
-DEAL::FE_DGPNonparametric<2>(2)
-DEAL::FE_DGPNonparametric<3>(2)
-DEAL::Read FE_DGQ(2)
-DEAL::Generated :
-DEAL::FE_DGQ<1>(2)
-DEAL::FE_DGQ<2>(2)
-DEAL::FE_DGQ<3>(2)
-DEAL::Read FE_Q(2)
-DEAL::Generated :
-DEAL::FE_Q<1>(2)
-DEAL::FE_Q<2>(2)
-DEAL::FE_Q<3>(2)
-DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_Q_Hierarchical<1>(1)]
-DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_Q_Hierarchical<2>(1)]
-DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_Q_Hierarchical<3>(1)]
-DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_Q_Hierarchical<1>(1)]
-DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_Q_Hierarchical<2>(1)]
-DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_Q_Hierarchical<3>(1)]
-DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_Q_Hierarchical<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_Q_Hierarchical<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_Q_Hierarchical<3>(1)]
-DEAL::Read FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_Q_Hierarchical<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q_Hierarchical<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q_Hierarchical<3>(1)]
-DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_DGPNonparametric<1>(1)]
-DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_DGPNonparametric<2>(1)]
-DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_DGPNonparametric<3>(1)]
-DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_DGPNonparametric<1>(1)]
-DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_DGPNonparametric<2>(1)]
-DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_DGPNonparametric<3>(1)]
-DEAL::Read FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_DGPNonparametric<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_DGPNonparametric<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_DGPNonparametric<3>(1)]
-DEAL::Read FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_DGPNonparametric<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGPNonparametric<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGPNonparametric<3>(1)]
-DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_DGQ<3>(1)]
-DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_DGQ<3>(1)]
-DEAL::Read FESystem[FE_DGQ(1)^2-FE_DGQ(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_DGQ<3>(1)]
-DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGQ<3>(1)]
-DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_Q<3>(1)]
-DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_Q<3>(1)]
-DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_Q<3>(1)]
-DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
-DEAL::Generated :
-DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q<3>(1)]
index 27ef32ac62abb51ff04851605f3feace6888e4fa..3dcc3410199079878f82ad342f772cc506afbd27 100644 (file)
@@ -24,41 +24,38 @@ class Test
 {
 public:
 
+  void generate_all_dim(const char *myname)
+  {
+    generate<1,1>(myname);
+    generate<2,2>(myname);
+    generate<3,3>(myname);
+  }
+
+
+  template <int dim, int spacedim>
   void generate(const char *myname)
   {
     std::string name = myname;
 
-    fe1 = FETools::get_fe_by_name<1,1>(name);
-    fe2 = FETools::get_fe_by_name<2,2>(name);
-    fe3 = FETools::get_fe_by_name<3,3>(name);
-    fe4 = FETools::get_fe_by_name<1,2>(name);
-    fe5 = FETools::get_fe_by_name<1,3>(name);
-    fe6 = FETools::get_fe_by_name<2,3>(name);
+    FiniteElement<dim, spacedim> *fe = FETools::get_fe_by_name<dim, spacedim>(name);
 
     deallog << "Read " << name << std::endl;
     deallog << "Generated :" << std::endl;
-    deallog << fe1->get_name()  << std::endl;
-    deallog << fe2->get_name()  << std::endl;
-    deallog << fe3->get_name()  << std::endl;
-    deallog << fe4->get_name()  << std::endl;
-    deallog << fe5->get_name()  << std::endl;
-    deallog << fe6->get_name()  << std::endl;
-
-    delete fe1;
-    delete fe2;
-    delete fe3;
-    delete fe4;
-    delete fe5;
-    delete fe6;
+    deallog << fe->get_name()  << std::endl;
+
+    delete fe;
   }
 
-  FiniteElement<1,1> *fe1;
-  FiniteElement<2,2> *fe2;
-  FiniteElement<3,3> *fe3;
-  FiniteElement<1,2> *fe4;
-  FiniteElement<1,3> *fe5;
-  FiniteElement<2,3> *fe6;
 
+  void generate_all_codim(const char *myname)
+  {
+    generate<1,1> (myname);
+    generate<1,2> (myname);
+    generate<2,2> (myname);
+    generate<1,3> (myname);
+    generate<2,3> (myname);
+    generate<3,3> (myname);
+  }
 };
 
 int main ()
@@ -69,44 +66,97 @@ int main ()
   deallog.threshold_double(1.e-10);
 
   Test gen;
-  // Some of the finite element types are commented out, since their
+  // For some of the finite element types, their
   // implementation or instantiation for codimension != 0 is still
-  // missing. This was opened as issue #92.
-
-  // gen.generate("FE_Q_Hierarchical(1)");
-  // gen.generate("FE_DGPNonparametric(1)");
-  gen.generate("FE_DGQ     (1)");
-  gen.generate("FE_Q(1)");
-  gen.generate("FE_DGQArbitraryNodes(QGauss(2))");
-  // gen.generate("FE_Q_Hierarchical(2)");
-  // gen.generate("FE_DGPNonparametric(2)");
-  gen.generate("FE_DGQ(2)");
-  gen.generate("FE_Q(2)");
-  gen.generate("FE_DGQArbitraryNodes(QGauss(3))");
-
-  // gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]");
-  // gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]");
-  // gen.generate("FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]");
-  // gen.generate("FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]");
-
-  // gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]");
-  // gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]");
-  // gen.generate("FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]");
-  // gen.generate("FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]");
-
-  // gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]");
-  // gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]");
-  gen.generate("      FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_DGQ(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]");
-  gen.generate("FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]");
-
-
-  // gen.generate("FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]");
-  // gen.generate("FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]");
-  gen.generate("FESystem[FE_DGQ(1)^2-FE_Q(1)]");
-  gen.generate("FESystem[FE_Q(1)^2-FE_Q(1)]");
-
+  // missing. In these case we just test for spacedim==dim
+
+  //generate_all_dim
+  gen.generate_all_dim("FE_Q_Hierarchical(1)");
+//  gen.generate<2,2>("FE_ABF(1)");
+//  gen.generate<3,3>("FE_ABF(1)");
+  gen.generate<2,2>("FE_BDM(1)");
+  gen.generate<3,3>("FE_BDM(1)");
+  gen.generate<2,2>("FE_DGBDM(1)");
+  gen.generate<3,3>("FE_DGBDM(1)");
+  gen.generate<2,2>("FE_DGNedelec(1)");
+  gen.generate<3,3>("FE_DGNedelec(1)");
+  gen.generate<2,2>("FE_DGRaviartThomas(1)");
+  gen.generate<3,3>("FE_DGRaviartThomas(1)");
+  gen.generate<2,2>("FE_RaviartThomas(1)");
+  gen.generate<3,3>("FE_RaviartThomas(1)");
+  gen.generate<2,2>("FE_RaviartThomasNodal(1)");
+  gen.generate<3,3>("FE_RaviartThomasNodal(1)");
+  gen.generate<2,2>("FE_Nedelec(1)");
+  gen.generate<3,3>("FE_Nedelec(1)");
+  gen.generate_all_dim("FE_DGPNonparametric(1)");
+  gen.generate_all_dim("FE_DGPMonomial(1)");
+  gen.generate_all_dim("FE_FaceQ(1)");
+  gen.generate_all_dim("FE_FaceP(1)");
+  gen.generate<2,2>("FE_RannacherTurek(0)");
+  gen.generate_all_dim("FE_Q_Hierarchical(2)");
+//  gen.generate<2,2>("FE_ABF(2)");
+//  gen.generate<3,3>("FE_ABF(2)");
+  gen.generate<2,2>("FE_BDM(2)");
+  gen.generate<3,3>("FE_BDM(2)");
+  gen.generate<2,2>("FE_DGBDM(2)");
+  gen.generate<3,3>("FE_DGBDM(2)");
+  gen.generate<2,2>("FE_DGNedelec(2)");
+  gen.generate<3,3>("FE_DGNedelec(2)");
+  gen.generate<2,2>("FE_DGRaviartThomas(2)");
+  gen.generate<3,3>("FE_DGRaviartThomas(2)");
+  gen.generate<2,2>("FE_RaviartThomas(2)");
+  gen.generate<3,3>("FE_RaviartThomas(2)");
+  gen.generate<2,2>("FE_RaviartThomasNodal(2)");
+  gen.generate<3,3>("FE_RaviartThomasNodal(2)");
+  gen.generate<2,2>("FE_Nedelec(2)");
+  gen.generate<3,3>("FE_Nedelec(2)");
+  gen.generate_all_dim("FE_DGPNonparametric(2)");
+  gen.generate_all_dim("FE_DGPMonomial(2)");
+  gen.generate_all_dim("FE_FaceQ(2)");
+  gen.generate_all_dim("FE_FaceP(2)");
+
+  //generate_all_codim
+  gen.generate_all_codim("FE_Bernstein(1)");
+  gen.generate_all_codim("FE_DGP(1)");
+  gen.generate_all_codim("FE_DGQ(1)");
+  gen.generate_all_codim("FE_Nothing()");
+  gen.generate_all_codim("FE_DGQArbitraryNodes(QGauss(2))");
+  gen.generate_all_codim("FE_Q_Bubbles(1)");
+  gen.generate_all_codim("FE_Q_DG0(1)");
+  gen.generate_all_codim("FE_Q_iso_Q1(1)");
+  gen.generate_all_codim("FE_Q(1)");
+  gen.generate_all_codim("FE_Bernstein(2)");
+  gen.generate_all_codim("FE_DGP(2)");
+  gen.generate_all_codim("FE_DGQ(2)");
+  gen.generate_all_codim("FE_DGQArbitraryNodes(QGauss(3))");
+  gen.generate_all_codim("FE_Q_Bubbles(2)");
+  gen.generate_all_codim("FE_Q_DG0(2)");
+  gen.generate_all_codim("FE_Q_iso_Q1(2)");
+  gen.generate_all_codim("FE_Q(2)");
+  gen.generate_all_codim("FE_Bernstein(2)");
+
+  //systems
+  gen.generate_all_dim("FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]");
+  gen.generate_all_dim("FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]");
+  gen.generate_all_dim("FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]");
+  gen.generate_all_dim("FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]");
+
+  gen.generate_all_dim("FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]");
+  gen.generate_all_dim("FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]");
+  gen.generate_all_dim("FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]");
+  gen.generate_all_dim("FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]");
+
+  gen.generate_all_dim("FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]");
+  gen.generate_all_dim("FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]");
+  gen.generate_all_codim("      FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]");
+  gen.generate_all_codim("FESystem[FE_Q(1)^2-FE_DGQ(1)]");
+  gen.generate_all_codim("FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]");
+  gen.generate_all_codim("FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]");
+
+  gen.generate_all_dim("FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]");
+  gen.generate_all_dim("FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]");
+  gen.generate_all_codim("FESystem[FE_DGQ(1)^2-FE_Q(1)]");
+  gen.generate_all_codim("FESystem[FE_Q(1)^2-FE_Q(1)]");
 
   return 0;
 }
index 8369f3bd0017f539702e20f90edd3153cc39389e..ac275c0e2ab8bb7b0847bbad7f5be734b40e9ea1 100644 (file)
 
-DEAL::Read FE_DGQ     (1)
+DEAL::Read FE_Q_Hierarchical(1)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<1>(1)
+DEAL::Read FE_Q_Hierarchical(1)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<2>(1)
+DEAL::Read FE_Q_Hierarchical(1)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<3>(1)
+DEAL::Read FE_BDM(1)
+DEAL::Generated :
+DEAL::FE_BDM<2>(1)
+DEAL::Read FE_BDM(1)
+DEAL::Generated :
+DEAL::FE_BDM<3>(1)
+DEAL::Read FE_DGBDM(1)
+DEAL::Generated :
+DEAL::FE_DGBDM<2>(1)
+DEAL::Read FE_DGBDM(1)
+DEAL::Generated :
+DEAL::FE_DGBDM<3>(1)
+DEAL::Read FE_DGNedelec(1)
+DEAL::Generated :
+DEAL::FE_DGNedelec<2>(1)
+DEAL::Read FE_DGNedelec(1)
+DEAL::Generated :
+DEAL::FE_DGNedelec<3>(1)
+DEAL::Read FE_DGRaviartThomas(1)
+DEAL::Generated :
+DEAL::FE_DGRaviartThomas<2>(1)
+DEAL::Read FE_DGRaviartThomas(1)
+DEAL::Generated :
+DEAL::FE_DGRaviartThomas<3>(1)
+DEAL::Read FE_RaviartThomas(1)
+DEAL::Generated :
+DEAL::FE_RaviartThomas<2>(1)
+DEAL::Read FE_RaviartThomas(1)
+DEAL::Generated :
+DEAL::FE_RaviartThomas<3>(1)
+DEAL::Read FE_RaviartThomasNodal(1)
+DEAL::Generated :
+DEAL::FE_RaviartThomasNodal<2>(1)
+DEAL::Read FE_RaviartThomasNodal(1)
+DEAL::Generated :
+DEAL::FE_RaviartThomasNodal<3>(1)
+DEAL::Read FE_Nedelec(1)
+DEAL::Generated :
+DEAL::FE_Nedelec<2>(1)
+DEAL::Read FE_Nedelec(1)
+DEAL::Generated :
+DEAL::FE_Nedelec<3>(1)
+DEAL::Read FE_DGPNonparametric(1)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<1>(1)
+DEAL::Read FE_DGPNonparametric(1)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<2>(1)
+DEAL::Read FE_DGPNonparametric(1)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<3>(1)
+DEAL::Read FE_DGPMonomial(1)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<1>(1)
+DEAL::Read FE_DGPMonomial(1)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<2>(1)
+DEAL::Read FE_DGPMonomial(1)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<3>(1)
+DEAL::Read FE_FaceQ(1)
+DEAL::Generated :
+DEAL::FE_FaceQ<1>(1)
+DEAL::Read FE_FaceQ(1)
+DEAL::Generated :
+DEAL::FE_FaceQ<2>(1)
+DEAL::Read FE_FaceQ(1)
+DEAL::Generated :
+DEAL::FE_FaceQ<3>(1)
+DEAL::Read FE_FaceP(1)
+DEAL::Generated :
+DEAL::FE_FaceP<1>(1)
+DEAL::Read FE_FaceP(1)
+DEAL::Generated :
+DEAL::FE_FaceP<2>(1)
+DEAL::Read FE_FaceP(1)
+DEAL::Generated :
+DEAL::FE_FaceP<3>(1)
+DEAL::Read FE_RannacherTurek(0)
+DEAL::Generated :
+DEAL::FE_RannacherTurek<2>(0, 2)
+DEAL::Read FE_Q_Hierarchical(2)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<1>(2)
+DEAL::Read FE_Q_Hierarchical(2)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<2>(2)
+DEAL::Read FE_Q_Hierarchical(2)
+DEAL::Generated :
+DEAL::FE_Q_Hierarchical<3>(2)
+DEAL::Read FE_BDM(2)
+DEAL::Generated :
+DEAL::FE_BDM<2>(2)
+DEAL::Read FE_BDM(2)
+DEAL::Generated :
+DEAL::FE_BDM<3>(2)
+DEAL::Read FE_DGBDM(2)
+DEAL::Generated :
+DEAL::FE_DGBDM<2>(2)
+DEAL::Read FE_DGBDM(2)
+DEAL::Generated :
+DEAL::FE_DGBDM<3>(2)
+DEAL::Read FE_DGNedelec(2)
+DEAL::Generated :
+DEAL::FE_DGNedelec<2>(2)
+DEAL::Read FE_DGNedelec(2)
+DEAL::Generated :
+DEAL::FE_DGNedelec<3>(2)
+DEAL::Read FE_DGRaviartThomas(2)
+DEAL::Generated :
+DEAL::FE_DGRaviartThomas<2>(2)
+DEAL::Read FE_DGRaviartThomas(2)
+DEAL::Generated :
+DEAL::FE_DGRaviartThomas<3>(2)
+DEAL::Read FE_RaviartThomas(2)
+DEAL::Generated :
+DEAL::FE_RaviartThomas<2>(2)
+DEAL::Read FE_RaviartThomas(2)
+DEAL::Generated :
+DEAL::FE_RaviartThomas<3>(2)
+DEAL::Read FE_RaviartThomasNodal(2)
+DEAL::Generated :
+DEAL::FE_RaviartThomasNodal<2>(2)
+DEAL::Read FE_RaviartThomasNodal(2)
+DEAL::Generated :
+DEAL::FE_RaviartThomasNodal<3>(2)
+DEAL::Read FE_Nedelec(2)
+DEAL::Generated :
+DEAL::FE_Nedelec<2>(2)
+DEAL::Read FE_Nedelec(2)
+DEAL::Generated :
+DEAL::FE_Nedelec<3>(2)
+DEAL::Read FE_DGPNonparametric(2)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<1>(2)
+DEAL::Read FE_DGPNonparametric(2)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<2>(2)
+DEAL::Read FE_DGPNonparametric(2)
+DEAL::Generated :
+DEAL::FE_DGPNonparametric<3>(2)
+DEAL::Read FE_DGPMonomial(2)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<1>(2)
+DEAL::Read FE_DGPMonomial(2)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<2>(2)
+DEAL::Read FE_DGPMonomial(2)
+DEAL::Generated :
+DEAL::FE_DGPMonomial<3>(2)
+DEAL::Read FE_FaceQ(2)
+DEAL::Generated :
+DEAL::FE_FaceQ<1>(2)
+DEAL::Read FE_FaceQ(2)
+DEAL::Generated :
+DEAL::FE_FaceQ<2>(2)
+DEAL::Read FE_FaceQ(2)
+DEAL::Generated :
+DEAL::FE_FaceQ<3>(2)
+DEAL::Read FE_FaceP(2)
+DEAL::Generated :
+DEAL::FE_FaceP<1>(2)
+DEAL::Read FE_FaceP(2)
+DEAL::Generated :
+DEAL::FE_FaceP<2>(2)
+DEAL::Read FE_FaceP(2)
+DEAL::Generated :
+DEAL::FE_FaceP<3>(2)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(1)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(1)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(1)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(1)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(1)
+DEAL::Read FE_Bernstein(1)
+DEAL::Generated :
+DEAL::FE_Bernstein<3>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<1>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<1,2>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<2>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<1,3>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<2,3>(1)
+DEAL::Read FE_DGP(1)
+DEAL::Generated :
+DEAL::FE_DGP<3>(1)
+DEAL::Read FE_DGQ(1)
 DEAL::Generated :
 DEAL::FE_DGQ<1>(1)
-DEAL::FE_DGQ<2>(1)
-DEAL::FE_DGQ<3>(1)
+DEAL::Read FE_DGQ(1)
+DEAL::Generated :
 DEAL::FE_DGQ<1,2>(1)
+DEAL::Read FE_DGQ(1)
+DEAL::Generated :
+DEAL::FE_DGQ<2>(1)
+DEAL::Read FE_DGQ(1)
+DEAL::Generated :
 DEAL::FE_DGQ<1,3>(1)
+DEAL::Read FE_DGQ(1)
+DEAL::Generated :
 DEAL::FE_DGQ<2,3>(1)
-DEAL::Read FE_Q(1)
+DEAL::Read FE_DGQ(1)
 DEAL::Generated :
-DEAL::FE_Q<1>(1)
-DEAL::FE_Q<2>(1)
-DEAL::FE_Q<3>(1)
-DEAL::FE_Q<1,2>(1)
-DEAL::FE_Q<1,3>(1)
-DEAL::FE_Q<2,3>(1)
+DEAL::FE_DGQ<3>(1)
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<1>()
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<1>()
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<2>()
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<1>()
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<2>()
+DEAL::Read FE_Nothing()
+DEAL::Generated :
+DEAL::FE_Nothing<3>()
 DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
 DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1>(QGauss(2))
-DEAL::FE_DGQArbitraryNodes<2>(QGauss(2))
-DEAL::FE_DGQArbitraryNodes<3>(QGauss(2))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1,2>(QGauss(2))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
+DEAL::Generated :
+DEAL::FE_DGQArbitraryNodes<2>(QGauss(2))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1,3>(QGauss(2))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<2,3>(QGauss(2))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(2))
+DEAL::Generated :
+DEAL::FE_DGQArbitraryNodes<3>(QGauss(2))
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(2))
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(2))
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<2>(1)
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(2))
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<2,3>(1)
+DEAL::Read FE_Q_Bubbles(1)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<3>(1)
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1>(QUnknownNodes(1))
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1,2>(QUnknownNodes(1))
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<2>(1)
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1,3>(QUnknownNodes(1))
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<2,3>(1)
+DEAL::Read FE_Q_DG0(1)
+DEAL::Generated :
+DEAL::FE_Q_DG0<3>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1,2>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<2>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1,3>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<2,3>(1)
+DEAL::Read FE_Q_iso_Q1(1)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<3>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<1>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<1,2>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<2>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<1,3>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<2,3>(1)
+DEAL::Read FE_Q(1)
+DEAL::Generated :
+DEAL::FE_Q<3>(1)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<3>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<1>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<1,2>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<2>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<1,3>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<2,3>(2)
+DEAL::Read FE_DGP(2)
+DEAL::Generated :
+DEAL::FE_DGP<3>(2)
 DEAL::Read FE_DGQ(2)
 DEAL::Generated :
 DEAL::FE_DGQ<1>(2)
-DEAL::FE_DGQ<2>(2)
-DEAL::FE_DGQ<3>(2)
+DEAL::Read FE_DGQ(2)
+DEAL::Generated :
 DEAL::FE_DGQ<1,2>(2)
+DEAL::Read FE_DGQ(2)
+DEAL::Generated :
+DEAL::FE_DGQ<2>(2)
+DEAL::Read FE_DGQ(2)
+DEAL::Generated :
 DEAL::FE_DGQ<1,3>(2)
+DEAL::Read FE_DGQ(2)
+DEAL::Generated :
 DEAL::FE_DGQ<2,3>(2)
-DEAL::Read FE_Q(2)
+DEAL::Read FE_DGQ(2)
 DEAL::Generated :
-DEAL::FE_Q<1>(2)
-DEAL::FE_Q<2>(2)
-DEAL::FE_Q<3>(2)
-DEAL::FE_Q<1,2>(2)
-DEAL::FE_Q<1,3>(2)
-DEAL::FE_Q<2,3>(2)
+DEAL::FE_DGQ<3>(2)
 DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
 DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1>(QGauss(3))
-DEAL::FE_DGQArbitraryNodes<2>(QGauss(3))
-DEAL::FE_DGQArbitraryNodes<3>(QGauss(3))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1,2>(QGauss(3))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
+DEAL::Generated :
+DEAL::FE_DGQArbitraryNodes<2>(QGauss(3))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<1,3>(QGauss(3))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
+DEAL::Generated :
 DEAL::FE_DGQArbitraryNodes<2,3>(QGauss(3))
+DEAL::Read FE_DGQArbitraryNodes(QGauss(3))
+DEAL::Generated :
+DEAL::FE_DGQArbitraryNodes<3>(QGauss(3))
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(3))
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(3))
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<2>(2)
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<1>(QUnknownNodes(3))
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<2,3>(2)
+DEAL::Read FE_Q_Bubbles(2)
+DEAL::Generated :
+DEAL::FE_Q_Bubbles<3>(2)
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1>(QUnknownNodes(2))
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1,2>(QUnknownNodes(2))
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<2>(2)
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<1,3>(QUnknownNodes(2))
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<2,3>(2)
+DEAL::Read FE_Q_DG0(2)
+DEAL::Generated :
+DEAL::FE_Q_DG0<3>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1,2>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<2>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<1,3>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<2,3>(2)
+DEAL::Read FE_Q_iso_Q1(2)
+DEAL::Generated :
+DEAL::FE_Q_iso_Q1<3>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<1>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<1,2>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<2>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<1,3>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<2,3>(2)
+DEAL::Read FE_Q(2)
+DEAL::Generated :
+DEAL::FE_Q<3>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<1>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<2>(2)
+DEAL::Read FE_Bernstein(2)
+DEAL::Generated :
+DEAL::FE_Bernstein<3>(2)
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_Q_Hierarchical<1>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_Q_Hierarchical<2>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_Q_Hierarchical<3>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_Q_Hierarchical<1>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_Q_Hierarchical<2>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_Q_Hierarchical<3>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_Q_Hierarchical<1>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_Q_Hierarchical<2>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_Q_Hierarchical<3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_Q_Hierarchical<1>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q_Hierarchical<2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q_Hierarchical(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q_Hierarchical<3>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_DGPNonparametric<1>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_DGPNonparametric<2>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_DGPNonparametric<3>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_DGPNonparametric<1>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_DGPNonparametric<2>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_DGPNonparametric<3>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_DGPNonparametric<1>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_DGPNonparametric<2>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_DGPNonparametric<3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_DGPNonparametric<1>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGPNonparametric<2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGPNonparametric(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGPNonparametric<3>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_DGQ<1>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_DGQ<2>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_DGQ<3>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_DGQ<1>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_DGQ<2>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_DGQ<3>(1)]
 DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_DGQ<3>(1)]
+DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_DGQ<1,2>(1)^2-FE_DGQ<1,2>(1)]
+DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_DGQ<2>(1)]
+DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_DGQ<1,3>(1)^2-FE_DGQ<1,3>(1)]
+DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_DGQ<2,3>(1)^2-FE_DGQ<2,3>(1)]
+DEAL::Read       FESystem[FE_DGQ(1)^2     -FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_DGQ<3>(1)]
 DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_DGQ<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGQ<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGQ<3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_Q<1,2>(1)^2-FE_DGQ<1,2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGQ<2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_Q<1,3>(1)^2-FE_DGQ<1,3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_Q<2,3>(1)^2-FE_DGQ<2,3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQ(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGQ<3>(1)]
 DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_DGQArbitraryNodes<1>(QGauss(2))]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGQArbitraryNodes<2>(QGauss(2))]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGQArbitraryNodes<3>(QGauss(2))]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_Q<1,2>(1)^2-FE_DGQArbitraryNodes<1,2>(QGauss(2))]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_DGQArbitraryNodes<2>(QGauss(2))]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_Q<1,3>(1)^2-FE_DGQArbitraryNodes<1,3>(QGauss(2))]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_Q<2,3>(1)^2-FE_DGQArbitraryNodes<2,3>(QGauss(2))]
+DEAL::Read FESystem[FE_Q(1)^2-FE_DGQArbitraryNodes(QGauss(2))]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_DGQArbitraryNodes<3>(QGauss(2))]
 DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_DGQArbitraryNodes<1>(QGauss(2))^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_DGQArbitraryNodes<2>(QGauss(2))^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_DGQArbitraryNodes<3>(QGauss(2))^2-FE_Q<3>(1)]
+DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_DGQArbitraryNodes<1,2>(QGauss(2))^2-FE_Q<1,2>(1)]
+DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGQArbitraryNodes<2>(QGauss(2))^2-FE_Q<2>(1)]
+DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_DGQArbitraryNodes<1,3>(QGauss(2))^2-FE_Q<1,3>(1)]
+DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_DGQArbitraryNodes<2,3>(QGauss(2))^2-FE_Q<2,3>(1)]
+DEAL::Read FESystem[FE_DGQArbitraryNodes(QGauss(2))^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGQArbitraryNodes<3>(QGauss(2))^2-FE_Q<3>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_Q_Hierarchical<1>(1)^2-FE_Q<1>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q_Hierarchical<2>(1)^2-FE_Q<2>(1)]
+DEAL::Read FESystem[FE_Q_Hierarchical(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q_Hierarchical<3>(1)^2-FE_Q<3>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<1>[FE_DGPNonparametric<1>(1)^2-FE_Q<1>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGPNonparametric<2>(1)^2-FE_Q<2>(1)]
+DEAL::Read FESystem[FE_DGPNonparametric(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGPNonparametric<3>(1)^2-FE_Q<3>(1)]
 DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_DGQ<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_Q<3>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_DGQ<1,2>(1)^2-FE_Q<1,2>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_DGQ<2>(1)^2-FE_Q<2>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_DGQ<1,3>(1)^2-FE_Q<1,3>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_DGQ<2,3>(1)^2-FE_Q<2,3>(1)]
+DEAL::Read FESystem[FE_DGQ(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_DGQ<3>(1)^2-FE_Q<3>(1)]
 DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
 DEAL::Generated :
 DEAL::FESystem<1>[FE_Q<1>(1)^2-FE_Q<1>(1)]
-DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q<2>(1)]
-DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q<3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,2>[FE_Q<1,2>(1)^2-FE_Q<1,2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<2>[FE_Q<2>(1)^2-FE_Q<2>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<1,3>[FE_Q<1,3>(1)^2-FE_Q<1,3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
+DEAL::Generated :
 DEAL::FESystem<2,3>[FE_Q<2,3>(1)^2-FE_Q<2,3>(1)]
+DEAL::Read FESystem[FE_Q(1)^2-FE_Q(1)]
+DEAL::Generated :
+DEAL::FESystem<3>[FE_Q<3>(1)^2-FE_Q<3>(1)]

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.