--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2019 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Test GridGenerator::generate_from_name_and_arguments.
+
+#include <deal.II/base/tensor.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_out.h>
+#include <deal.II/grid/tria.h>
+
+#include "../tests.h"
+
+template <int dim, int spacedim>
+void
+test(const std::string &name, const std::string &arguments)
+{
+ Triangulation<dim, spacedim> tria;
+
+ deallog << "Generating Triangulation<" << dim << ", " << spacedim
+ << "> : " << name << '(' << arguments << ')' << std::endl;
+
+ GridGenerator::generate_from_name_and_arguments(tria, name, arguments);
+
+ GridOut go;
+ go.write_msh(tria, deallog.get_file_stream());
+
+ std::ofstream ofile(name + "_" + std::to_string(dim) + "_" +
+ std::to_string(spacedim) + ".msh");
+ go.write_msh(tria, ofile);
+}
+
+int
+main()
+{
+ initlog();
+
+ test<2, 3>("hyper_sphere", "0,0,0 : 1");
+
+ test<2, 2>("quarter_hyper_ball", "0,0 : 1");
+ test<3, 3>("quarter_hyper_ball", "0,0,0 : 1");
+
+ test<2, 2>("hyper_ball_balanced", "0,0 : 1");
+ test<3, 3>("hyper_ball_balanced", "0,0,0 : 1");
+}
--- /dev/null
+
+DEAL::Generating Triangulation<2, 3> : hyper_sphere(0,0,0 : 1)
+$NOD
+8
+1 -0.577350 -0.577350 -0.577350
+2 0.577350 -0.577350 -0.577350
+3 -0.577350 0.577350 -0.577350
+4 0.577350 0.577350 -0.577350
+5 0.577350 -0.577350 0.577350
+6 0.577350 0.577350 0.577350
+7 -0.577350 -0.577350 0.577350
+8 -0.577350 0.577350 0.577350
+$ENDNOD
+$ELM
+6
+1 3 0 0 4 1 3 4 2
+2 3 0 0 4 2 4 6 5
+3 3 0 0 4 7 5 6 8
+4 3 0 0 4 1 7 8 3
+5 3 0 0 4 1 2 5 7
+6 3 0 0 4 3 8 6 4
+$ENDELM
+DEAL::Generating Triangulation<2, 2> : quarter_hyper_ball(0,0 : 1)
+$NOD
+7
+1 0.00000 0.00000 0
+2 1.00000 0.00000 0
+3 0.556470 0.00000 0
+4 0.00000 0.556470 0
+5 0.428830 0.428830 0
+6 0.00000 1.00000 0
+7 0.707107 0.707107 0
+$ENDNOD
+$ELM
+3
+1 3 0 0 4 1 3 5 4
+2 3 0 0 4 2 7 5 3
+3 3 0 0 4 6 4 5 7
+$ENDELM
+DEAL::Generating Triangulation<3, 3> : quarter_hyper_ball(0,0,0 : 1)
+$NOD
+15
+1 0.00000 0.00000 0.00000
+2 1.00000 0.00000 0.00000
+3 0.528000 0.00000 0.00000
+4 0.00000 0.528000 0.00000
+5 0.453300 0.453300 0.00000
+6 0.00000 1.00000 0.00000
+7 0.707107 0.707107 0.00000
+8 0.00000 0.00000 0.528000
+9 0.707107 0.00000 0.707107
+10 0.453300 0.00000 0.453300
+11 0.00000 0.453300 0.453300
+12 0.375200 0.375200 0.375200
+13 0.00000 0.707107 0.707107
+14 0.577350 0.577350 0.577350
+15 0.00000 0.00000 1.00000
+$ENDNOD
+$ELM
+4
+1 5 0 0 8 1 3 10 8 4 5 12 11
+2 5 0 0 8 2 7 14 9 3 5 12 10
+3 5 0 0 8 6 4 11 13 7 5 12 14
+4 5 0 0 8 8 10 9 15 11 12 14 13
+$ENDELM
+DEAL::Generating Triangulation<2, 2> : hyper_ball_balanced(0,0 : 1)
+$NOD
+17
+1 0.00000 0.00000 0
+2 1.00000 0.00000 0
+3 0.556470 0.00000 0
+4 0.00000 0.556470 0
+5 0.428830 0.428830 0
+6 0.00000 1.00000 0
+7 0.707107 0.707107 0
+8 -0.556470 0.00000 0
+9 -0.428830 0.428830 0
+10 -1.00000 0.00000 0
+11 -0.707107 0.707107 0
+12 0.00000 -0.556470 0
+13 -0.428830 -0.428830 0
+14 0.00000 -1.00000 0
+15 -0.707107 -0.707107 0
+16 0.428830 -0.428830 0
+17 0.707107 -0.707107 0
+$ENDNOD
+$ELM
+12
+1 3 0 0 4 1 3 5 4
+2 3 0 0 4 2 7 5 3
+3 3 0 0 4 6 4 5 7
+4 3 0 0 4 1 4 9 8
+5 3 0 0 4 6 11 9 4
+6 3 0 0 4 10 8 9 11
+7 3 0 0 4 1 8 13 12
+8 3 0 0 4 10 15 13 8
+9 3 0 0 4 14 12 13 15
+10 3 0 0 4 1 12 16 3
+11 3 0 0 4 14 17 16 12
+12 3 0 0 4 2 3 16 17
+$ENDELM
+DEAL::Generating Triangulation<3, 3> : hyper_ball_balanced(0,0,0 : 1)
+$NOD
+53
+1 0.00000 0.00000 0.00000
+2 1.00000 0.00000 0.00000
+3 0.528000 0.00000 0.00000
+4 0.00000 0.528000 0.00000
+5 0.453300 0.453300 0.00000
+6 0.00000 1.00000 0.00000
+7 0.707107 0.707107 0.00000
+8 0.00000 0.00000 0.528000
+9 0.707107 0.00000 0.707107
+10 0.453300 0.00000 0.453300
+11 0.00000 0.453300 0.453300
+12 0.375200 0.375200 0.375200
+13 0.00000 0.707107 0.707107
+14 0.577350 0.577350 0.577350
+15 0.00000 0.00000 1.00000
+16 -0.528000 0.00000 0.00000
+17 -0.453300 0.453300 0.00000
+18 -1.00000 0.00000 0.00000
+19 -0.707107 0.707107 0.00000
+20 -0.453300 0.00000 0.453300
+21 -0.375200 0.375200 0.375200
+22 -0.707107 0.00000 0.707107
+23 -0.577350 0.577350 0.577350
+24 0.00000 -0.528000 0.00000
+25 -0.453300 -0.453300 0.00000
+26 0.00000 -1.00000 0.00000
+27 -0.707107 -0.707107 0.00000
+28 0.00000 -0.453300 0.453300
+29 -0.375200 -0.375200 0.375200
+30 0.00000 -0.707107 0.707107
+31 -0.577350 -0.577350 0.577350
+32 0.453300 -0.453300 0.00000
+33 0.707107 -0.707107 0.00000
+34 0.375200 -0.375200 0.375200
+35 0.577350 -0.577350 0.577350
+36 0.00000 0.00000 -0.528000
+37 -0.707107 0.00000 -0.707107
+38 -0.453300 0.00000 -0.453300
+39 0.00000 0.453300 -0.453300
+40 -0.375200 0.375200 -0.375200
+41 0.00000 0.707107 -0.707107
+42 -0.577350 0.577350 -0.577350
+43 0.00000 0.00000 -1.00000
+44 0.453300 0.00000 -0.453300
+45 0.375200 0.375200 -0.375200
+46 0.707107 0.00000 -0.707107
+47 0.577350 0.577350 -0.577350
+48 0.00000 -0.453300 -0.453300
+49 0.375200 -0.375200 -0.375200
+50 0.00000 -0.707107 -0.707107
+51 0.577350 -0.577350 -0.577350
+52 -0.375200 -0.375200 -0.375200
+53 -0.577350 -0.577350 -0.577350
+$ENDNOD
+$ELM
+32
+1 5 0 0 8 1 3 10 8 4 5 12 11
+2 5 0 0 8 2 7 14 9 3 5 12 10
+3 5 0 0 8 6 4 11 13 7 5 12 14
+4 5 0 0 8 15 8 10 9 13 11 12 14
+5 5 0 0 8 1 4 11 8 16 17 21 20
+6 5 0 0 8 6 19 23 13 4 17 21 11
+7 5 0 0 8 18 16 20 22 19 17 21 23
+8 5 0 0 8 15 8 11 13 22 20 21 23
+9 5 0 0 8 1 16 20 8 24 25 29 28
+10 5 0 0 8 18 27 31 22 16 25 29 20
+11 5 0 0 8 26 24 28 30 27 25 29 31
+12 5 0 0 8 15 8 20 22 30 28 29 31
+13 5 0 0 8 1 24 28 8 3 32 34 10
+14 5 0 0 8 26 33 35 30 24 32 34 28
+15 5 0 0 8 2 3 10 9 33 32 34 35
+16 5 0 0 8 15 8 28 30 9 10 34 35
+17 5 0 0 8 1 16 38 36 4 17 40 39
+18 5 0 0 8 18 19 42 37 16 17 40 38
+19 5 0 0 8 6 4 39 41 19 17 40 42
+20 5 0 0 8 43 36 38 37 41 39 40 42
+21 5 0 0 8 1 4 39 36 3 5 45 44
+22 5 0 0 8 6 7 47 41 4 5 45 39
+23 5 0 0 8 2 3 44 46 7 5 45 47
+24 5 0 0 8 43 36 39 41 46 44 45 47
+25 5 0 0 8 1 3 44 36 24 32 49 48
+26 5 0 0 8 2 33 51 46 3 32 49 44
+27 5 0 0 8 26 24 48 50 33 32 49 51
+28 5 0 0 8 43 36 44 46 50 48 49 51
+29 5 0 0 8 1 24 48 36 16 25 52 38
+30 5 0 0 8 26 27 53 50 24 25 52 48
+31 5 0 0 8 18 16 38 37 27 25 52 53
+32 5 0 0 8 43 36 48 50 37 38 52 53
+$ENDELM