#include <fe/fe.h>
#include <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("get_fe_from_name.output");
deallog.attach(logfile);
+
deallog.depth_console(0);
- FiniteElement<1> * fe1;
- FiniteElement<2> * fe2;
- FiniteElement<3> * fe3;
+ 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)]");
- std::string name;
- name = "FE_Q(1)";
- fe1 = FETools::get_fe_from_name<1>(name);
- fe2 = FETools::get_fe_from_name<2>(name);
- fe3 = FETools::get_fe_from_name<3>(name);
+ 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)]");
- 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;
+ 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;
}
--- /dev/null
+
+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)]