]> https://gitweb.dealii.org/ - dealii.git/commitdiff
fix negative measure on a tri mesh
authorJiaqi Zhang <jiaqi2@clemson.edu>
Sun, 27 Mar 2022 17:16:43 +0000 (13:16 -0400)
committerJiaqi Zhang <jiaqi2@clemson.edu>
Sun, 27 Mar 2022 17:16:43 +0000 (13:16 -0400)
source/grid/grid_in.cc
source/grid/grid_tools.cc
source/grid/grid_tools_nontemplates.cc
tests/grid/grid_in_gmsh_03.cc [new file with mode: 0644]
tests/grid/grid_in_gmsh_03.geo [new file with mode: 0644]
tests/grid/grid_in_gmsh_03.msh [new file with mode: 0644]
tests/grid/grid_in_gmsh_03.output [new file with mode: 0644]

index 69203c35f4a68b0ac75f052df7a2064ba90b62ef..d249afc9debe7287b8d3fcf306ee78f0a6d010cf 100644 (file)
@@ -2691,6 +2691,11 @@ GridIn<dim, spacedim>::read_msh(std::istream &in)
         GridTools::invert_cells_with_negative_measure(vertices, cells);
       GridTools::consistently_order_cells(cells);
     }
+  else if (is_tria_or_tet_mesh)
+    {
+      if (dim == spacedim)
+        GridTools::invert_cells_with_negative_measure(vertices, cells);
+    }
   tria->create_triangulation(vertices, cells, subcelldata);
 
   // in 1d, we also have to attach boundary ids to vertices, which does not
index c0961adac3d474a9a61d1fe0dc6133ad6526d35c..d294c10e08f981fbc48e4d9e64c6c2fd0c54f6f0 100644 (file)
@@ -872,34 +872,60 @@ namespace GridTools
     std::size_t n_negative_cells = 0;
     for (auto &cell : cells)
       {
-        Assert(cell.vertices.size() ==
-                 ReferenceCells::get_hypercube<dim>().n_vertices(),
-               ExcNotImplemented());
-        const ArrayView<const unsigned int> vertices(cell.vertices);
-        if (GridTools::cell_measure(all_vertices, vertices) < 0)
+        if (cell.vertices.size() ==
+            ReferenceCells::get_hypercube<dim>().n_vertices())
           {
-            ++n_negative_cells;
-
-            // TODO: this only works for quads and hexes
-            if (dim == 2)
+            const ArrayView<const unsigned int> vertices(cell.vertices);
+            if (GridTools::cell_measure(all_vertices, vertices) < 0)
               {
-                // flip the cell across the y = x line in 2D
-                std::swap(cell.vertices[1], cell.vertices[2]);
+                ++n_negative_cells;
+
+                // TODO: this only works for quads and hexes
+                if (dim == 2)
+                  {
+                    // flip the cell across the y = x line in 2D
+                    std::swap(cell.vertices[1], cell.vertices[2]);
+                  }
+                else if (dim == 3)
+                  {
+                    // swap the front and back faces in 3D
+                    std::swap(cell.vertices[0], cell.vertices[2]);
+                    std::swap(cell.vertices[1], cell.vertices[3]);
+                    std::swap(cell.vertices[4], cell.vertices[6]);
+                    std::swap(cell.vertices[5], cell.vertices[7]);
+                  }
+
+                // Check whether the resulting cell is now ok.
+                // If not, then the grid is seriously broken and
+                // we just give up.
+                AssertThrow(GridTools::cell_measure(all_vertices, vertices) > 0,
+                            ExcInternalError());
               }
-            else if (dim == 3)
+          }
+        else if (cell.vertices.size() ==
+                 ReferenceCells::get_simplex<dim>().n_vertices())
+          {
+            const ArrayView<const unsigned int> vertices(cell.vertices);
+            if (GridTools::cell_measure(all_vertices, vertices) < 0)
               {
-                // swap the front and back faces in 3D
-                std::swap(cell.vertices[0], cell.vertices[2]);
-                std::swap(cell.vertices[1], cell.vertices[3]);
-                std::swap(cell.vertices[4], cell.vertices[6]);
-                std::swap(cell.vertices[5], cell.vertices[7]);
+                ++n_negative_cells;
+                if (dim == 2)
+                  {
+                    // Triangular mesh, swap any two vertices
+                    std::swap(cell.vertices[1], cell.vertices[2]);
+                    AssertThrow(GridTools::cell_measure(all_vertices,
+                                                        vertices) > 0,
+                                ExcInternalError());
+                  }
+                else
+                  {
+                    Assert(false, ExcNotImplemented());
+                  }
               }
-
-            // Check whether the resulting cell is now ok.
-            // If not, then the grid is seriously broken and
-            // we just give up.
-            AssertThrow(GridTools::cell_measure(all_vertices, vertices) > 0,
-                        ExcInternalError());
+          }
+        else
+          {
+            Assert(false, ExcNotImplemented());
           }
       }
     return n_negative_cells;
index 38f9d14cc2263b5048267f159553bb6d84345a43..03e867d3cc5bfc401110d709d2c47d71ade4aca8 100644 (file)
@@ -57,8 +57,8 @@ namespace GridTools
                              all_vertices[vertex_indices[1]](1),
                              all_vertices[vertex_indices[2]](1)};
 
-        return 0.5 * std::abs((x[0] - x[2]) * (y[1] - y[0]) -
-                              (x[0] - x[1]) * (y[2] - y[0]));
+        return 0.5 *
+               ((x[0] - x[2]) * (y[1] - y[0]) - (x[1] - x[0]) * (y[0] - y[2]));
       }
 
     AssertDimension(vertex_indices.size(), GeometryInfo<2>::vertices_per_cell);
diff --git a/tests/grid/grid_in_gmsh_03.cc b/tests/grid/grid_in_gmsh_03.cc
new file mode 100644 (file)
index 0000000..e9ccacf
--- /dev/null
@@ -0,0 +1,89 @@
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2016 - 2022 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 loading a .msh file from gmsh with some triangular cells having
+// negative volume
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_in.h>
+#include <deal.II/grid/grid_out.h>
+#include <deal.II/grid/grid_tools.h>
+#include <deal.II/grid/manifold_lib.h>
+#include <deal.II/grid/tria.h>
+#include <deal.II/grid/tria_accessor.h>
+#include <deal.II/grid/tria_iterator.h>
+
+#include <fstream>
+#include <iostream>
+#include <map>
+
+#include "../tests.h"
+
+using namespace dealii;
+
+
+template <int dim>
+void
+print_mesh_info(const Triangulation<dim> &triangulation,
+                const std::string &       filename)
+{
+  deallog << "Mesh info:" << std::endl
+          << " dimension: " << dim << std::endl
+          << " no. of cells: " << triangulation.n_active_cells() << std::endl;
+
+  {
+    std::map<types::boundary_id, unsigned int> boundary_count;
+    for (const auto &face : triangulation.active_face_iterators())
+      if (face->at_boundary())
+        boundary_count[face->boundary_id()]++;
+
+    deallog << " boundary indicators: ";
+    for (const std::pair<const types::boundary_id, unsigned int> &pair :
+         boundary_count)
+      {
+        deallog << pair.first << "(" << pair.second << " times) ";
+      }
+    deallog << std::endl;
+  }
+
+  // Finally, produce a graphical representation of the mesh to an output
+  // file:
+  std::ofstream out(filename);
+  GridOut       grid_out;
+  grid_out.write_vtu(triangulation, out);
+  deallog << " written to " << filename << std::endl << std::endl;
+}
+
+
+void
+grid()
+{
+  Triangulation<2> triangulation;
+
+  GridIn<2> gridin;
+  gridin.attach_triangulation(triangulation);
+  std::ifstream f(SOURCE_DIR "/grid_in_gmsh_03.msh");
+  gridin.read_msh(f);
+
+  print_mesh_info(triangulation, "grid.vtu");
+}
+
+
+int
+main()
+{
+  initlog();
+  grid();
+}
diff --git a/tests/grid/grid_in_gmsh_03.geo b/tests/grid/grid_in_gmsh_03.geo
new file mode 100644 (file)
index 0000000..a09a181
--- /dev/null
@@ -0,0 +1,27 @@
+Point (2) = {0, 0, 0 ,0.1 };
+Point (3) = {2, 0, 0 ,0.1 };
+Point (4) = {0, 2, 0 ,0.1 };
+Point (5) = {2, 2, 0 ,0.1 };
+Point (6) = {1, 0, 0 ,0.1 };
+Point (7) = {0, 1, 0 ,0.1 };
+
+Line (2) = {2, 7 };
+Line (3) = {7, 4 };
+Line (4) = {4, 5 };
+Line (5) = {5, 3 };
+Line (6) = {3, 6 };
+Line (7) = {6, 2 };
+
+Circle(8) = {6, 2, 7};
+Curve Loop(1) = {7, 2, -8};
+Plane Surface(1) = {1};
+
+Curve Loop(2) = {8, 3, 4, 5, 6};
+Plane Surface(2) = {2};
+
+Physical Curve("1", 10) = {2, 7, 6, 5, 4, 3};
+Physical Surface("1", 9) = {2, 1};
+
+
+
+
diff --git a/tests/grid/grid_in_gmsh_03.msh b/tests/grid/grid_in_gmsh_03.msh
new file mode 100644 (file)
index 0000000..d3ebad3
--- /dev/null
@@ -0,0 +1,2185 @@
+$MeshFormat
+4.1 0 8
+$EndMeshFormat
+$PhysicalNames
+2
+1 10 "1"
+2 9 "1"
+$EndPhysicalNames
+$Entities
+6 7 2 0
+2 0 0 0 0 
+3 2 0 0 0 
+4 0 2 0 0 
+5 2 2 0 0 
+6 1 0 0 0 
+7 0 1 0 0 
+2 0 0 0 0 1 0 1 10 2 2 -7 
+3 0 1 0 0 2 0 1 10 2 7 -4 
+4 0 2 0 2 2 0 1 10 2 4 -5 
+5 2 0 0 2 2 0 1 10 2 5 -3 
+6 1 0 0 2 0 0 1 10 2 3 -6 
+7 0 0 0 1 0 0 1 10 2 6 -2 
+8 5.551115123125783e-17 0 0 1 1 0 0 2 6 -7 
+1 0 0 0 1 1 0 1 9 3 7 2 -8 
+2 0 0 0 2 2 0 1 9 5 8 3 4 5 6 
+$EndEntities
+$Nodes
+15 533 1 533
+0 2 0 1
+1
+0 0 0
+0 3 0 1
+2
+2 0 0
+0 4 0 1
+3
+0 2 0
+0 5 0 1
+4
+2 2 0
+0 6 0 1
+5
+1 0 0
+0 7 0 1
+6
+0 1 0
+1 2 0 9
+7
+8
+9
+10
+11
+12
+13
+14
+15
+0 0.09999999999981467 0
+0 0.1999999999995579 0
+0 0.2999999999992664 0
+0 0.3999999999989749 0
+0 0.4999999999986943 0
+0 0.5999999999989468 0
+0 0.69999999999921 0
+0 0.7999999999994734 0
+0 0.8999999999997368 0
+1 3 0 9
+16
+17
+18
+19
+20
+21
+22
+23
+24
+0 1.1 0
+0 1.2 0
+0 1.3 0
+0 1.4 0
+0 1.5 0
+0 1.6 0
+0 1.7 0
+0 1.8 0
+0 1.9 0
+1 4 0 19
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+0.0999999999997993 2 0
+0.1999999999996293 2 0
+0.2999999999994072 2 0
+0.3999999999991157 2 0
+0.4999999999988242 2 0
+0.5999999999985328 2 0
+0.6999999999982413 2 0
+0.7999999999979498 2 0
+0.8999999999976585 2 0
+0.9999999999973885 2 0
+1.09999999999763 2 0
+1.199999999997894 2 0
+1.299999999998157 2 0
+1.39999999999842 2 0
+1.499999999998683 2 0
+1.599999999998947 2 0
+1.69999999999921 2 0
+1.799999999999474 2 0
+1.899999999999737 2 0
+1 5 0 19
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+2 1.899999999999584 0
+2 1.799999999999167 0
+2 1.699999999999306 0
+2 1.6 0
+2 1.500000000000693 0
+2 1.400000000001387 0
+2 1.30000000000208 0
+2 1.200000000002774 0
+2 1.100000000003467 0
+2 1.000000000004117 0
+2 0.9000000000037447 0
+2 0.8000000000033287 0
+2 0.7000000000029127 0
+2 0.6000000000024965 0
+2 0.5000000000020806 0
+2 0.4000000000016644 0
+2 0.3000000000012482 0
+2 0.200000000000832 0
+2 0.100000000000416 0
+1 6 0 9
+63
+64
+65
+66
+67
+68
+69
+70
+71
+1.9 0 0
+1.8 0 0
+1.7 0 0
+1.6 0 0
+1.5 0 0
+1.4 0 0
+1.3 0 0
+1.2 0 0
+1.1 0 0
+1 7 0 9
+72
+73
+74
+75
+76
+77
+78
+79
+80
+0.8999999999995836 0 0
+0.7999999999999998 0 0
+0.7000000000006934 0 0
+0.6000000000013869 0 0
+0.5000000000020587 0 0
+0.4000000000016644 0 0
+0.3000000000012483 0 0
+0.2000000000008322 0 0
+0.100000000000416 0 0
+1 8 0 15
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+0.9951847266502585 0.09801714055230534 0
+0.9807852803038259 0.1950903225158687 0
+0.9569403355024331 0.2902846780119318 0
+0.9238795320817892 0.3826834334019886 0
+0.8819212636904032 0.4713967380569389 0
+0.8314696113679687 0.5555702344182949 0
+0.7730104520841969 0.6343932857215511 0
+0.7071067795733449 0.7071067827997501 0
+0.634393282646958 0.7730104546074502 0
+0.5555702316245595 0.8314696132346829 0
+0.471396735522105 0.8819212650453002 0
+0.3826834312318057 0.9238795329807084 0
+0.2902846763682919 0.9569403360010258 0
+0.1950903214145686 0.980785280522888 0
+0.0980171400302339 0.995184726701678 0
+2 1 0 82
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+0.6767795667695582 0.609668076142952 0
+0.07977297824683213 0.4541890186712618 0
+0.4500000000018615 0.0866025403783237 0
+0.4684815831413743 0.783169333374764 0
+0.8333191634690273 0.4020683139618611 0
+0.07616445564514877 0.6510279847155449 0
+0.2506126821046618 0.08659412224411786 0
+0.6502246974972052 0.08646529651963142 0
+0.318043255597328 0.8585999148833539 0
+0.8864220777466522 0.2220371723140561 0
+0.08992802814027417 0.241209803257404 0
+0.08660254037867185 0.8499999999996052 0
+0.8500500766292995 0.07677409560714064 0
+0.7500822069700397 0.08478026207135021 0
+0.7002696495235359 0.172433115906415 0
+0.6006949521236298 0.1728395835644025 0
+0.6506937621924007 0.2587900974738798 0
+0.5514106799121807 0.2591782744376004 0
+0.6012997045497654 0.3449127886895321 0
+0.5021350525006757 0.3453233235098738 0
+0.5519613817645724 0.4309721768982789 0
+0.4528391359669491 0.4313920443517976 0
+0.4029463562996536 0.3456266656274203 0
+0.3536841745919595 0.4317526041657788 0
+0.4035847711003026 0.5174800775942174 0
+0.3044380425251368 0.5178679899372787 0
+0.3036436546987583 0.3459486340407851 0
+0.3543808575895205 0.6035077571788081 0
+0.4566776437635452 0.6054931045318264 0
+0.3530347723705626 0.2597029067640731 0
+0.6500031838650799 0.4311351721223118 0
+0.2564657985669527 0.6032167526417849 0
+0.3078895664096041 0.6906631705887778 0
+0.2555109773139391 0.2613155904970151 0
+0.2063833877948193 0.3472513142939831 0
+0.7417420042580117 0.2558397260243201 0
+0.214086971735294 0.513041450945817 0
+0.2125007028760783 0.6919366425412916 0
+0.6044208186125645 0.517869736706283 0
+0.7046713666816594 0.5090184051282766 0
+0.5641990535120249 0.6080307709748474 0
+0.3019951365681867 0.1734379085816478 0
+0.5011364898102255 0.1730540841591001 0
+0.2620347449949352 0.7769070686198543 0
+0.1624629142431979 0.772751128408408 0
+0.2067506579834134 0.8616210419157071 0
+0.6940482857379826 0.3426298348963747 0
+0.8071349468232245 0.1721508328872037 0
+0.4043555080890818 0.6889845865956442 0
+0.5121526723556471 0.6871720462401856 0
+0.3605433685437314 0.7748741417885392 0
+0.5056138007866597 0.5185396518428751 0
+0.07603381046871042 0.5508865535441763 0
+0.1020225092104382 0.3480870035330792 0
+0.5502270095652174 0.08647147634525709 0
+0.1504692788954064 0.08467065497974094 0
+0.185932445607342 0.1816041236459353 0
+0.4521449865043861 0.2594113162368541 0
+0.2573702754145439 0.4307157451117742 0
+0.3507061141454664 0.08648241275318305 0
+0.4017039598714207 0.1732487514152999 0
+0.08325683039142336 0.1467826352646349 0
+0.7439262089333187 0.4164062886354668 0
+0.1596099361046683 0.6016611326103867 0
+0.8665824802579044 0.3139510412545573 0
+0.07263644786204355 0.7499999999993417 0
+0.6084913056226653 0.6891823453144085 0
+0.1363401517330302 0.919130646749669 0
+0.9191306465265395 0.1363401524737136 0
+0.1674186952247692 0.4286173775823877 0
+0.1683213304555154 0.2739535195128237 0
+0.5558178150782408 0.7528007585542982 0
+0.7922268338577305 0.4861117820718968 0
+0.7836404865096346 0.3310540262363565 0
+0.07321122970551761 0.07321122970535654 0
+0.4013199008755774 0.8476391751105208 0
+0.7580533890040059 0.5622107122305424 0
+0.1366748913462274 0.6934753776549947 0
+0.8222247764015632 0.2554289526455595 0
+0.0644712276632361 0.9323166691015368 0
+0.930950654811372 0.06516938120102446 0
+0.1367055321151492 0.5000882179151019 0
+2 2 0 356
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+1.260884386179066 1.918228777599371 0
+0.8002221992054374 0.7288839214739209 0
+1.920349758186233 1.152073473808022 0
+0.8535313808953809 1.915446508114218 0
+1.913453633589901 0.7500391755201039 0
+0.5571758956736662 0.9295918250391016 0
+0.9766480989451127 0.4630360980722332 0
+0.5499999999986785 1.913397459621809 0
+1.916675936352648 1.452732011140331 0
+1.449824599889407 0.08658463216209636 0
+0.09448961054326567 1.43664755691497 0
+1.913402729897236 0.4499749131567528 0
+1.55046522498662 1.917639578699236 0
+0.3593504874456079 1.037646810736377 0
+1.055142183507219 0.271217174051854 0
+1.645382927037457 0.08399272655858664 0
+0.3534840519811941 1.915305674171474 0
+1.044766490825761 1.919813476879228 0
+1.905177343073793 0.9586706532113112 0
+0.08206911141603364 1.646291679540955 0
+1.914890414931093 1.650000214659551 0
+0.07780740903746025 1.262491235536373 0
+1.917441222125622 0.2508160151022225 0
+1.749027949961975 1.932070056659511 0
+1.25381926326103 0.08085809843374948 0
+0.08660254037844393 1.850000000000001 0
+0.1540468500456182 1.071742476804059 0
+1.854042999221628 0.08577892222215389 0
+1.915322849442506 1.849576269033412 0
+0.7284155652854053 0.8004002256645277 0
+0.8256476993130006 0.8257946816412917 0
+0.8972847198922629 0.7575600631655098 0
+0.9205145791333812 0.8533957961868746 0
+0.9906637038251623 0.7845012256086062 0
+1.014452671355123 0.8813553117689686 0
+0.943391611389804 0.949180122480634 0
+1.03753151298552 0.9774463755529907 0
+0.9664779142970793 1.045154733356116 0
+1.060568547953754 1.07352332870046 0
+1.085987037644108 0.8135660335472299 0
+0.9893840942485592 1.141301474323057 0
+1.083535686496424 1.169716895085566 0
+1.15531828467171 1.101705402549678 0
+1.178247687234399 1.198028161987163 0
+1.01158458781897 1.237664709962222 0
+1.25024324232757 1.129892609080021 0
+1.273225544841789 1.226395176023364 0
+0.9166154793693477 1.209418562210781 0
+0.9394955974470311 1.305724543506932 0
+0.8442871320894635 1.278379080376962 0
+1.345287792985725 1.158181665369313 0
+1.368377651227355 1.254702728489597 0
+1.296202944828381 1.322982145030238 0
+1.391477122749273 1.35132433254604 0
+0.8674487060011742 1.374003418755853 0
+0.7723906745974319 1.345628538835171 0
+1.322218419923067 1.061680006852016 0
+1.417349426907931 1.089974555446449 0
+1.394256020980186 0.9933728988247 0
+0.9623623489643819 1.402095446771712 0
+0.795406319066695 1.442037057152022 0
+0.7002362434049254 1.413592313692098 0
+1.319234833815116 1.419646329682138 0
+1.414549791688519 1.448069356721084 0
+1.486839326646312 1.37966184429437 0
+1.509948911997673 1.47649541564479 0
+0.7232407025784342 1.510253599849143 0
+0.6280375601175974 1.481791599494121 0
+0.6050444246563893 1.385085694989927 0
+0.5327941107646242 1.453293050906712 0
+0.8184640001361824 1.538654994526872 0
+1.489457276542913 1.021716338681366 0
+1.466333246300542 0.9250403506952792 0
+1.437606102004384 1.544935715536892 0
+1.533085734042491 1.573404126278787 0
+0.5099126493348437 1.356591463853469 0
+0.7473389110411157 1.247845198181873 0
+0.5556949883320046 1.550080272406713 0
+0.4603729480082026 1.521545612164509 0
+0.7462391177143007 1.606986977629383 0
+1.561602216908169 0.9533685919481851 0
+1.538457741593258 0.8567094633563827 0
+1.443208137713322 0.8284008971217066 0
+1.515292372209623 0.7600869136152695 0
+1.420117407666941 0.7318689094653903 0
+1.49215629001967 0.6635176332195978 0
+1.397011732184899 0.6353074201539675 0
+1.46903532530072 0.5669632149830688 0
+1.373880075160179 0.5387223583418248 0
+1.445917176849306 0.4703998176701088 0
+1.563363802106424 0.5943437425253607 0
+1.584726199217833 1.050088860490041 0
+1.350754839736247 0.4421506889085489 0
+1.582274177202825 1.408034418506386 0
+1.301655199412552 0.6077175776671611 0
+0.4832771559211107 1.618446542257147 0
+0.8753333063250432 1.017515564381102 0
+0.841395566528819 1.635255930996321 0
+1.460671024562683 1.641895009819196 0
+1.365160251551541 1.613398896331923 0
+0.3878494955359438 1.589872494181314 0
+0.3649981727642352 1.492923768492877 0
+1.608065599981054 0.7872962555618117 0
+1.061980117370883 0.7164683932581324 0
+1.422798934340509 0.3738188632021816 0
+1.518101824162235 0.40205827940732 0
+1.327619184116208 0.3455997898595096 0
+1.255663169867075 0.4138423387638601 0
+1.556238153361019 1.670394327103442 0
+1.628649975006503 1.60186128489334 0
+1.347920522439009 0.800418627241955 0
+1.559074550863269 1.311251228195465 0
+1.654593624285016 1.339625344603986 0
+1.223828452362894 1.391220237958492 0
+1.656952855404384 0.9816787144550571 0
+1.680047605219441 1.078400296354786 0
+1.388215591040296 1.710404165347022 0
+1.29265847055069 1.681887669470413 0
+0.7705452771302568 1.708155576229053 0
+1.651856973872167 1.698881105707764 0
+1.493400143571193 0.3106067558396729 0
+1.589406367087751 0.3369398625584484 0
+0.4120122966781784 1.682830292412206 0
+0.3154668882976593 1.657589847268263 0
+0.5063300087995967 1.715458850687481 0
+0.5820653335379512 1.288487102745512 0
+0.4864608209300607 1.261977878460031 0
+0.5585703548397587 1.197366759073826 0
+1.299089395438521 0.9651968607913496 0
+0.4147801713094658 1.328392700817806 0
+0.391391141751339 1.232196826009715 0
+0.3197512012441064 1.299758778390403 0
+1.269566226460906 1.584882336406687 0
+1.197127327367205 1.653353877445914 0
+1.174145966687307 1.556420719300087 0
+1.101909741430495 1.624790554487459 0
+1.67780480121085 1.436455160034159 0
+1.15748417670222 0.7456092917983694 0
+1.134880008270952 0.6500056158451132 0
+1.613379443085958 0.430952976694321 0
+1.680798779657968 0.363781146275831 0
+1.708476250864221 0.4618662425531849 0
+0.913121542365393 1.566835617457714 0
+0.8676457275856431 1.735599511304861 0
+1.124724970435004 1.721801929425647 0
+1.23313624682529 0.3180225913399152 0
+1.164123090988946 0.3855866437404707 0
+1.748593587689534 1.368308142256907 0
+1.731243362414262 1.270874727103039 0
+0.7588845514882877 0.8938778507544686 0
+1.73113756579345 1.630339778469075 0
+1.745097426254863 1.742662041295947 0
+0.2999575921940682 1.204775347147275 0
+1.656996411919134 0.2531953963180613 0
+1.311592305568118 0.2491644156711438 0
+1.828382246366204 1.306280808963173 0
+1.182049104770645 0.4825660564206363 0
+1.040297981164354 0.6219116273738603 0
+0.6743690658967855 1.675299792326628 0
+0.695469966972202 1.776450776582226 0
+1.750864287848334 1.015153393236214 0
+1.73708673863833 0.9191292511212219 0
+1.180676759844952 0.8414061102099023 0
+1.079192368605741 1.527617236762505 0
+1.607852953760187 1.146612768418148 0
+1.030048017511861 1.691539673189036 0
+0.3428696493610173 1.759015622477342 0
+0.2455409868307607 1.728338766364243 0
+1.760951268143867 0.3015341440586917 0
+1.211359509699195 0.2233513810959681 0
+1.762106061809748 1.46766127992826 0
+1.735097554156789 0.1963580913831375 0
+1.312953397738488 1.771630298338753 0
+1.400642156093028 1.818500826079553 0
+1.662725969859608 1.800113787987034 0
+1.775543748765479 1.106905314599295 0
+0.234522911295158 1.644981900487366 0
+0.2302220201545739 1.270283436169942 0
+0.2492981305060174 1.364525738225631 0
+0.2601433006941544 1.82553753817587 0
+1.053544698516167 1.784592792987592 0
+1.147771427276173 1.81882260241884 0
+1.01396101136833 0.3690131414208156 0
+0.9260888647473818 0.5476692210315375 0
+1.07486175696249 0.1619371968188011 0
+0.4576523253082008 0.9873939142999454 0
+0.5495108575943323 1.031359873425315 0
+0.4595626745815482 1.080592335372571 0
+0.63674280432751 0.9865961009997757 0
+0.6314261374098638 1.077743062828006 0
+0.7151723863089684 1.040623793083609 0
+0.8801796962723699 0.6457748221532479 0
+0.2488417952724944 1.057945838269179 0
+0.6549436248582917 0.8824673753339732 0
+0.1517711628964766 1.335373242212956 0
+0.7133668240570853 1.146271712006519 0
+0.3772088881915525 1.142731576778668 0
+0.2102030985212358 1.159497249210136 0
+1.847930838638997 1.038376018646292 0
+1.080813206364334 0.4483915315901689 0
+0.8024647031029933 1.084938603127882 0
+1.111457202387395 0.5532528451768717 0
+1.229424854913265 0.6767327643576824 0
+1.206372456816875 0.5801399213618469 0
+0.9735563644577004 0.6899539595330381 0
+0.6500158108319899 1.225499032101031 0
+1.151616425447755 1.459313187929632 0
+1.278395807627262 0.5108564902439796 0
+1.350575880590687 0.08343335136035841 0
+1.39854390515303 0.1759024565331755 0
+1.504015559217392 0.1687065431115802 0
+1.549825281276154 0.08617349427993583 0
+1.600174229375138 0.1732813318571895 0
+0.6761818996783004 1.317689646757602 0
+1.151961711178955 0.08863431851828635 0
+1.371148910793444 0.8967410330819324 0
+0.09165225495548009 1.15375484639418 0
+1.912198195591442 0.8514426521549086 0
+1.832257641634984 0.8003453170255482 0
+1.827828348706804 0.7002384941585968 0
+1.757833486261483 0.7552565696444834 0
+1.746507646146346 0.6544626030322787 0
+1.826810007863901 0.6004328474292937 0
+0.9468711012361004 1.91648214470192 0
+0.9015005055592363 1.830782714029328 0
+0.7953982144624303 1.823976179676429 0
+0.7039900340692349 1.878962856552914 0
+0.6146497574470019 1.842757157902847 0
+1.227110017527859 1.033647566055382 0
+0.4504055296944798 1.913636175002385 0
+0.5069426862180789 1.819147693779867 0
+1.913424742695687 1.249952744332887 0
+1.915775422359731 1.351266297866477 0
+0.08500546018134425 1.543447165915504 0
+0.180483324507025 1.500156009498135 0
+1.748304056376114 0.1033166612593371 0
+1.916909005711363 0.350134094902003 0
+1.835634079226597 0.3831685659085777 0
+1.812963438180442 0.4849624737488998 0
+1.911106626515818 0.547580793943243 0
+0.08304863408383586 1.749382457878043 0
+1.35471111784812 1.916736469956241 0
+1.451437806408721 1.914061088254704 0
+1.915910402900105 1.553428964351043 0
+1.834460788077738 1.600502455081652 0
+1.658894667320313 1.90401286077987 0
+1.915459502447814 1.749929429462595 0
+1.834461207355806 1.798186748825598 0
+0.4375982863592516 1.424794357230054 0
+1.913199769446071 0.649715218509441 0
+1.246968567758586 1.487941565592828 0
+1.128977350489383 1.362517645630192 0
+1.201066523273409 1.294579375045242 0
+1.576234547594052 1.764552746999679 0
+1.463624285886167 1.283027605635031 0
+1.275701368671514 0.8691734213543472 0
+0.2733459277045995 1.561120017347163 0
+1.480801635363089 1.739539455023681 0
+1.132187136295563 1.005632820444377 0
+1.342180962213175 1.516479033378592 0
+1.512560486709942 1.118269670553453 0
+1.605458937895341 1.504929479991844 0
+0.6510281055677317 1.578545628081097 0
+1.220630703874374 1.746148838818539 0
+1.634032109879238 0.8879217181302359 0
+1.324651290186322 0.7042549951416253 0
+1.399650942068327 0.2772449572078439 0
+1.109071619522859 0.9095333127268029 0
+0.8902755571633252 1.470277071028745 0
+1.584049828224672 0.6873552812475849 0
+1.440468046290371 1.186484890044604 0
+1.54109379510936 0.4986443659242037 0
+1.106272883448495 1.266032435505564 0
+0.5789387634129433 1.646147292737792 0
+1.636889541448818 0.5259626276273772 0
+1.696189750309062 1.532108517158991 0
+0.3427000701556396 1.395830042359752 0
+0.265290311180131 1.455305688495841 0
+1.535709848239828 1.214780063966571 0
+1.034275379854242 1.334028946570172 0
+1.817332821566148 1.196200741022237 0
+1.203972716216878 0.9374316819303601 0
+1.82841976783832 0.8959228993483308 0
+1.631899828803411 1.242995663727337 0
+1.707320053421488 1.173664918537473 0
+1.056879049967938 1.430601392528752 0
+0.9849056548387244 1.498653803448637 0
+1.252643162126214 0.7729325350173135 0
+1.00761698729729 1.59567175861186 0
+1.733843478887041 0.5560000026922842 0
+0.9362831062032664 1.663080910842569 0
+0.1718807086760229 1.79152341620083 0
+0.1939611424987991 1.893270799538371 0
+0.8521589169694656 0.9205866406165482 0
+1.153840930322642 1.908606192382319 0
+0.4034001274941592 1.830860975509354 0
+0.8977980606339859 1.11224199212228 0
+1.14565605054571 0.2959383637446525 0
+0.5961167081244346 1.74587692733614 0
+1.921585181499169 0.1516272558678035 0
+1.825886114122149 0.1984921042201829 0
+1.84101219728882 1.908448190876452 0
+0.8202121447549657 1.181841109379475 0
+1.509930269977158 1.833639385510907 0
+0.9608104345444085 1.756061227264388 0
+1.65387082851232 0.6180078736693647 0
+1.829251150810127 1.69527011129907 0
+1.83477173995699 1.410681683407295 0
+0.4694191895612739 1.171263716576826 0
+0.7891817541672769 0.9837558282549184 0
+1.295656518344129 0.1605052708095641 0
+1.698368675875926 0.8203889969949825 0
+0.1588925052238616 1.700003020699226 0
+1.017706220304958 0.5412948248139239 0
+1.554491547721429 0.2481321949805309 0
+0.6337279583023379 1.927023494815514 0
+1.85136433786592 0.2968289848383356 0
+1.6747826775003 0.7204612633584176 0
+0.0648136364954405 1.34690240693286 0
+1.925998975009127 1.055238810711521 0
+1.235473088765727 1.835619724907164 0
+0.9942991734103415 1.841465136712933 0
+0.1835949099867514 1.41768784514552 0
+1.838683254003511 1.509432173599826 0
+1.594035882653233 1.84500622799913 0
+1.748967057486372 1.842765624794731 0
+0.5469029112396553 1.117269007464186 0
+0.07292280775060905 1.069458201282327 0
+0.1233237598651114 1.928083055744816 0
+1.06947936626227 0.07312527674277194 0
+0.7709338137100322 1.92548360260356 0
+0.2719998401992306 1.921036308369788 0
+0.7109850242300668 0.957464189685349 0
+1.154315387602086 0.1665244915268888 0
+0.4393149856957562 1.760089589056437 0
+0.1665597884527873 1.593161267939216 0
+0.2991123723249918 1.120519364428327 0
+1.926794919243183 0.07320508075692969 0
+1.926794919242847 1.926794919242805 0
+1.091939108554908 0.3540293709095923 0
+1.757524573902808 0.3985952864091448 0
+0.1558660898265009 1.235941790680456 0
+1.464822296896879 0.237546278938576 0
+1.849461259277269 1.11248826827243 0
+1.772324119185657 0.8471889289809014 0
+1.67237296581234 0.1571233715272146 0
+1.815094364297136 0.9706106541918498 0
+1.77212024902338 1.550520300710337 0
+0.6211421389607907 1.155332575849202 0
+1.124967765503128 0.2244327283736333 0
+1.316757687203618 1.850281639885163 0
+1.213422478017079 0.1439747120768914 0
+0.970931968221171 0.613507625638872 0
+0.3335376322808006 1.844396591987174 0
+0.0581770329299901 1.940599431966717 0
+1.085670183012951 1.852447823859027 0
+$EndNodes
+$Elements
+8 1064 1 1064
+1 2 1 10
+1 1 7 
+2 7 8 
+3 8 9 
+4 9 10 
+5 10 11 
+6 11 12 
+7 12 13 
+8 13 14 
+9 14 15 
+10 15 6 
+1 3 1 10
+11 6 16 
+12 16 17 
+13 17 18 
+14 18 19 
+15 19 20 
+16 20 21 
+17 21 22 
+18 22 23 
+19 23 24 
+20 24 3 
+1 4 1 20
+21 3 25 
+22 25 26 
+23 26 27 
+24 27 28 
+25 28 29 
+26 29 30 
+27 30 31 
+28 31 32 
+29 32 33 
+30 33 34 
+31 34 35 
+32 35 36 
+33 36 37 
+34 37 38 
+35 38 39 
+36 39 40 
+37 40 41 
+38 41 42 
+39 42 43 
+40 43 4 
+1 5 1 20
+41 4 44 
+42 44 45 
+43 45 46 
+44 46 47 
+45 47 48 
+46 48 49 
+47 49 50 
+48 50 51 
+49 51 52 
+50 52 53 
+51 53 54 
+52 54 55 
+53 55 56 
+54 56 57 
+55 57 58 
+56 58 59 
+57 59 60 
+58 60 61 
+59 61 62 
+60 62 2 
+1 6 1 10
+61 2 63 
+62 63 64 
+63 64 65 
+64 65 66 
+65 66 67 
+66 67 68 
+67 68 69 
+68 69 70 
+69 70 71 
+70 71 5 
+1 7 1 10
+71 5 72 
+72 72 73 
+73 73 74 
+74 74 75 
+75 75 76 
+76 76 77 
+77 77 78 
+78 78 79 
+79 79 80 
+80 80 1 
+2 1 2 198
+81 106 152 157 
+82 152 106 166 
+83 94 93 141 
+84 124 136 147 
+85 96 134 136 
+86 93 104 141 
+87 136 134 147 
+88 134 96 135 
+89 128 139 146 
+90 143 105 164 
+91 140 107 141 
+92 108 143 164 
+93 136 124 145 
+94 149 130 166 
+95 144 99 145 
+96 130 149 165 
+97 99 144 146 
+98 136 145 162 
+99 139 104 146 
+100 144 128 146 
+101 152 151 157 
+102 141 107 163 
+103 94 141 163 
+104 162 145 167 
+105 106 149 166 
+106 129 137 152 
+107 137 102 152 
+108 104 139 141 
+109 149 97 165 
+110 102 137 155 
+111 98 138 150 
+112 110 131 143 
+113 109 103 110 
+114 114 126 142 
+115 109 110 143 
+116 74 103 109 
+117 134 116 147 
+118 98 155 156 
+119 108 109 143 
+120 78 102 155 
+121 111 103 150 
+122 155 137 156 
+123 116 117 147 
+124 76 98 150 
+125 110 112 131 
+126 14 15 107 
+127 138 111 150 
+128 123 128 144 
+129 108 73 109 
+130 131 112 142 
+131 112 114 142 
+132 72 73 108 
+133 97 11 148 
+134 124 144 145 
+135 110 111 112 
+136 126 134 135 
+137 114 116 126 
+138 110 103 111 
+139 120 123 124 
+140 124 123 144 
+141 126 116 134 
+142 138 98 156 
+143 139 140 141 
+144 117 120 147 
+145 74 75 103 
+146 12 101 148 
+147 112 113 114 
+148 128 133 139 
+149 12 13 101 
+150 120 124 147 
+151 123 127 128 
+152 73 74 109 
+153 114 115 116 
+154 106 9 149 
+155 76 77 98 
+156 10 11 97 
+157 120 121 123 
+158 112 111 113 
+159 10 97 149 
+160 117 119 120 
+161 11 12 148 
+162 103 75 150 
+163 102 151 152 
+164 9 10 149 
+165 114 113 115 
+166 78 79 102 
+167 8 9 106 
+168 102 79 151 
+169 116 115 117 
+170 75 76 150 
+171 79 80 151 
+172 128 127 133 
+173 120 119 121 
+174 123 121 127 
+175 139 133 140 
+176 117 118 119 
+177 88 87 96 
+178 122 129 130 
+179 91 90 99 
+180 85 84 100 
+181 113 111 138 
+182 117 115 118 
+183 93 92 104 
+184 122 130 154 
+185 119 118 122 
+186 129 125 137 
+187 122 118 125 
+188 83 82 105 
+189 127 121 132 
+190 122 125 129 
+191 77 78 155 
+192 115 113 153 
+193 119 122 154 
+194 118 115 153 
+195 113 138 153 
+196 121 119 154 
+197 125 118 153 
+198 153 138 156 
+199 132 121 154 
+200 125 153 156 
+201 98 77 155 
+202 137 125 156 
+203 142 126 158 
+204 7 8 157 
+205 142 158 169 
+206 133 159 173 
+207 107 140 161 
+208 158 135 168 
+209 133 127 159 
+210 168 135 172 
+211 14 107 161 
+212 96 136 162 
+213 101 13 161 
+214 158 100 169 
+215 8 106 157 
+216 129 152 166 
+217 159 101 173 
+218 126 135 158 
+219 132 154 165 
+220 1 7 170 
+221 80 1 170 
+222 148 101 159 
+223 127 132 159 
+224 84 83 160 
+225 100 84 160 
+226 83 105 160 
+227 145 99 167 
+228 88 96 162 
+229 105 82 164 
+230 135 96 172 
+231 99 90 167 
+232 99 146 171 
+233 146 104 171 
+234 13 14 161 
+235 85 100 168 
+236 89 88 162 
+237 91 99 171 
+238 104 92 171 
+239 96 87 172 
+240 159 132 177 
+241 148 159 177 
+242 15 6 175 
+243 5 72 176 
+244 95 94 163 
+245 82 81 164 
+246 154 130 165 
+247 6 95 175 
+248 81 5 176 
+249 130 129 166 
+250 100 158 168 
+251 90 89 167 
+252 100 160 169 
+253 105 143 174 
+254 143 131 174 
+255 7 157 170 
+256 107 15 175 
+257 72 108 176 
+258 86 85 168 
+259 89 162 167 
+260 131 142 169 
+261 101 161 173 
+262 132 165 177 
+263 151 80 170 
+264 92 91 171 
+265 169 160 174 
+266 87 86 172 
+267 97 148 177 
+268 140 133 173 
+269 157 151 170 
+270 86 168 172 
+271 163 107 175 
+272 108 164 176 
+273 160 105 174 
+274 131 169 174 
+275 161 140 173 
+276 165 97 177 
+277 95 163 175 
+278 164 81 176 
+2 2 2 786
+279 413 478 205 
+280 349 478 413 
+281 412 513 434 
+282 405 476 408 
+283 408 476 302 
+284 458 462 326 
+285 434 455 412 
+286 489 495 280 
+287 204 375 370 
+288 398 495 489 
+289 337 403 296 
+290 328 484 422 
+291 434 513 354 
+292 296 403 321 
+293 423 503 352 
+294 472 498 359 
+295 416 518 319 
+296 329 484 328 
+297 370 514 191 
+298 178 498 472 
+299 353 462 458 
+300 425 503 479 
+301 204 394 375 
+302 419 420 351 
+303 375 514 370 
+304 191 374 365 
+305 191 514 374 
+306 201 503 423 
+307 372 496 188 
+308 188 500 372 
+309 479 503 201 
+310 332 444 387 
+311 319 467 416 
+312 415 494 346 
+313 415 518 416 
+314 191 365 363 
+315 254 480 373 
+316 346 518 415 
+317 366 371 183 
+318 333 458 326 
+319 337 404 403 
+320 209 369 179 
+321 207 371 327 
+322 363 364 183 
+323 91 363 183 
+324 83 360 192 
+325 93 370 191 
+326 404 493 31 
+327 31 508 404 
+328 387 488 332 
+329 405 408 185 
+330 490 513 197 
+331 366 510 371 
+332 373 383 254 
+333 203 470 469 
+334 371 510 327 
+335 324 377 334 
+336 209 382 369 
+337 485 501 186 
+338 346 478 349 
+339 394 519 375 
+340 351 528 419 
+341 308 374 330 
+342 321 403 402 
+343 354 513 490 
+344 425 479 206 
+345 281 382 211 
+346 377 379 334 
+347 346 494 478 
+348 373 480 378 
+349 207 208 179 
+350 203 506 470 
+351 452 483 467 
+352 352 502 423 
+353 205 478 477 
+354 348 501 485 
+355 474 480 225 
+356 274 487 378 
+357 211 382 209 
+358 335 382 281 
+359 92 363 91 
+360 84 360 83 
+361 82 362 81 
+362 88 207 179 
+363 179 369 87 
+364 94 370 93 
+365 183 371 90 
+366 85 361 184 
+367 86 369 361 
+368 89 371 207 
+369 420 481 351 
+370 308 486 374 
+371 333 410 409 
+372 378 487 368 
+373 337 405 404 
+374 452 467 319 
+375 364 366 183 
+376 360 517 192 
+377 363 365 364 
+378 316 381 379 
+379 316 379 335 
+380 272 381 380 
+381 379 381 334 
+382 381 385 334 
+383 467 483 399 
+384 390 492 331 
+385 374 486 365 
+386 331 523 390 
+387 380 381 316 
+388 380 443 272 
+389 199 496 372 
+390 208 209 179 
+391 207 327 208 
+392 272 385 381 
+393 443 465 288 
+394 409 458 333 
+395 378 480 474 
+396 332 488 347 
+397 433 459 306 
+398 425 484 329 
+399 470 506 26 
+400 376 497 196 
+401 364 367 366 
+402 384 428 291 
+403 380 465 443 
+404 340 459 433 
+405 312 428 384 
+406 70 392 202 
+407 383 391 254 
+408 400 417 416 
+409 291 429 384 
+410 388 390 389 
+411 324 517 377 
+412 334 385 285 
+413 66 389 193 
+414 272 443 264 
+415 285 385 270 
+416 386 387 187 
+417 345 469 357 
+418 67 389 66 
+419 68 386 187 
+420 199 394 17 
+421 400 427 417 
+422 71 392 70 
+423 393 433 306 
+424 389 390 193 
+425 236 393 306 
+426 208 210 209 
+427 233 391 239 
+428 310 428 312 
+429 323 324 285 
+430 417 427 57 
+431 70 202 69 
+432 378 474 274 
+433 202 386 69 
+434 254 391 233 
+435 17 394 16 
+436 250 393 236 
+437 239 391 246 
+438 303 305 304 
+439 270 385 266 
+440 277 437 310 
+441 246 303 253 
+442 284 285 270 
+443 246 391 303 
+444 18 199 17 
+445 303 304 253 
+446 401 402 181 
+447 54 395 196 
+448 284 323 285 
+449 187 389 67 
+450 266 272 264 
+451 324 334 285 
+452 33 401 181 
+453 303 391 383 
+454 262 288 260 
+455 266 385 272 
+456 182 396 395 
+457 303 383 305 
+458 68 187 67 
+459 223 406 220 
+460 411 412 188 
+461 28 407 194 
+462 312 384 341 
+463 316 335 281 
+464 260 393 250 
+465 306 406 234 
+466 234 406 223 
+467 49 410 186 
+468 402 403 181 
+469 397 398 396 
+470 261 262 260 
+471 367 368 366 
+472 182 395 55 
+473 58 417 57 
+474 69 386 68 
+475 312 341 313 
+476 224 430 230 
+477 387 388 187 
+478 182 427 397 
+479 185 408 407 
+480 415 416 189 
+481 221 430 224 
+482 264 443 262 
+483 236 306 234 
+484 310 312 311 
+485 304 308 307 
+486 310 437 428 
+487 56 182 55 
+488 263 264 262 
+489 256 426 279 
+490 30 185 29 
+491 33 181 32 
+492 20 411 188 
+493 195 401 34 
+494 54 196 53 
+495 182 397 396 
+496 185 407 29 
+497 414 415 189 
+498 246 253 247 
+499 180 409 51 
+500 52 180 51 
+501 330 375 355 
+502 397 427 400 
+503 277 310 295 
+504 308 330 309 
+505 193 413 65 
+506 259 260 250 
+507 397 399 398 
+508 265 266 264 
+509 288 393 260 
+510 291 430 429 
+511 267 270 266 
+512 227 254 233 
+513 35 195 34 
+514 55 395 54 
+515 37 419 178 
+516 34 401 33 
+517 239 246 245 
+518 409 410 50 
+519 66 193 65 
+520 20 188 19 
+521 312 313 311 
+522 421 422 198 
+523 200 414 60 
+524 50 410 49 
+525 197 411 21 
+526 310 311 295 
+527 22 418 197 
+528 28 194 27 
+529 231 432 229 
+530 51 409 50 
+531 38 419 37 
+532 29 407 28 
+533 190 420 39 
+534 449 452 317 
+535 64 413 205 
+536 59 189 58 
+537 21 411 20 
+538 59 414 189 
+539 424 425 206 
+540 65 413 64 
+541 37 178 36 
+542 38 420 419 
+543 22 197 21 
+544 189 417 58 
+545 259 261 260 
+546 203 418 23 
+547 416 417 189 
+548 61 200 60 
+549 23 418 22 
+550 332 347 323 
+551 186 421 48 
+552 60 414 59 
+553 282 284 270 
+554 24 203 23 
+555 56 427 182 
+556 49 186 48 
+557 39 420 38 
+558 64 205 63 
+559 47 421 198 
+560 40 423 190 
+561 198 424 46 
+562 48 421 47 
+563 40 190 39 
+564 47 198 46 
+565 201 423 41 
+566 45 424 206 
+567 41 423 40 
+568 46 424 45 
+569 42 201 41 
+570 45 206 44 
+571 242 432 231 
+572 261 263 262 
+573 230 430 291 
+574 57 427 56 
+575 320 446 248 
+576 230 291 240 
+577 228 234 223 
+578 210 211 209 
+579 271 289 242 
+580 304 307 253 
+581 235 438 249 
+582 251 277 276 
+583 325 326 290 
+584 213 274 215 
+585 277 295 294 
+586 235 236 234 
+587 313 343 322 
+588 275 320 248 
+589 217 281 211 
+590 218 225 222 
+591 251 437 277 
+592 384 463 341 
+593 269 342 293 
+594 406 436 220 
+595 225 227 226 
+596 256 279 278 
+597 301 354 345 
+598 397 400 399 
+599 300 302 273 
+600 246 247 245 
+601 249 438 269 
+602 268 452 449 
+603 249 250 236 
+604 297 352 329 
+605 286 287 252 
+606 315 316 281 
+607 288 433 393 
+608 263 265 264 
+609 454 455 279 
+610 289 432 242 
+611 271 290 289 
+612 297 328 287 
+613 325 333 326 
+614 313 322 311 
+615 277 294 276 
+616 283 317 299 
+617 338 339 292 
+618 291 428 240 
+619 286 431 297 
+620 258 259 250 
+621 317 319 318 
+622 295 350 294 
+623 88 179 87 
+624 247 426 256 
+625 297 329 328 
+626 228 235 234 
+627 286 297 287 
+628 343 358 322 
+629 306 459 406 
+630 257 336 296 
+631 388 389 187 
+632 91 183 90 
+633 265 267 266 
+634 241 242 231 
+635 85 184 84 
+636 345 357 344 
+637 297 431 352 
+638 89 207 88 
+639 87 369 86 
+640 225 226 222 
+641 276 286 252 
+642 86 361 85 
+643 244 248 238 
+644 241 251 243 
+645 90 371 89 
+646 251 276 252 
+647 262 443 288 
+648 224 230 229 
+649 350 351 294 
+650 235 249 236 
+651 216 436 214 
+652 243 271 242 
+653 267 282 270 
+654 301 345 344 
+655 301 344 300 
+656 259 280 261 
+657 279 434 278 
+658 278 300 273 
+659 256 278 273 
+660 278 301 300 
+661 314 325 290 
+662 271 314 290 
+663 301 434 354 
+664 373 378 368 
+665 251 252 243 
+666 227 233 232 
+667 336 337 296 
+668 241 243 242 
+669 217 315 281 
+670 210 213 212 
+671 257 275 248 
+672 256 273 255 
+673 358 359 322 
+674 317 318 299 
+675 227 232 226 
+676 296 321 275 
+677 247 256 255 
+678 219 220 216 
+679 249 269 258 
+680 416 467 400 
+681 314 348 325 
+682 249 258 250 
+683 293 353 338 
+684 269 293 292 
+685 230 240 231 
+686 253 426 247 
+687 295 441 350 
+688 346 349 331 
+689 318 331 299 
+690 224 228 223 
+691 311 441 295 
+692 210 212 211 
+693 221 223 220 
+694 240 241 231 
+695 269 438 342 
+696 318 346 331 
+697 257 296 275 
+698 239 245 244 
+699 284 332 323 
+700 244 257 248 
+701 367 373 368 
+702 269 292 258 
+703 353 376 338 
+704 293 338 292 
+705 224 229 228 
+706 308 309 307 
+707 258 442 259 
+708 221 224 223 
+709 230 231 229 
+710 218 222 219 
+711 286 435 431 
+712 213 215 214 
+713 215 218 216 
+714 287 439 252 
+715 239 244 238 
+716 212 217 211 
+717 233 239 238 
+718 278 434 301 
+719 276 435 286 
+720 232 237 226 
+721 356 455 454 
+722 322 441 311 
+723 218 219 216 
+724 247 255 245 
+725 294 435 276 
+726 219 221 220 
+727 283 299 298 
+728 396 460 395 
+729 339 442 292 
+730 215 216 214 
+731 220 436 216 
+732 283 298 282 
+733 213 214 212 
+734 233 238 232 
+735 428 437 240 
+736 351 435 294 
+737 259 442 280 
+738 217 340 315 
+739 252 439 243 
+740 315 380 316 
+741 241 437 251 
+742 330 355 309 
+743 243 439 271 
+744 292 442 258 
+745 263 268 265 
+746 240 437 241 
+747 257 440 336 
+748 302 451 273 
+749 271 439 314 
+750 184 360 84 
+751 359 441 322 
+752 283 449 317 
+753 288 465 433 
+754 245 440 244 
+755 244 440 257 
+756 267 283 282 
+757 255 440 245 
+758 282 444 284 
+759 255 451 440 
+760 287 453 439 
+761 83 192 82 
+762 432 448 229 
+763 93 191 92 
+764 228 448 235 
+765 307 426 253 
+766 440 451 336 
+767 235 448 438 
+768 191 363 92 
+769 328 453 287 
+770 439 453 314 
+771 229 448 228 
+772 280 447 261 
+773 248 446 238 
+774 355 372 356 
+775 372 519 199 
+776 219 450 221 
+777 261 447 263 
+778 221 450 430 
+779 436 445 214 
+780 222 450 219 
+781 298 444 282 
+782 184 377 360 
+783 426 454 279 
+784 284 444 332 
+785 430 450 429 
+786 232 446 237 
+787 238 446 232 
+788 273 451 255 
+789 212 445 217 
+790 192 362 82 
+791 263 447 268 
+792 217 445 340 
+793 317 452 319 
+794 214 445 212 
+795 314 453 348 
+796 355 356 309 
+797 95 204 94 
+798 268 449 265 
+799 267 449 283 
+800 265 449 267 
+801 326 461 290 
+802 204 370 94 
+803 289 461 456 
+804 463 464 341 
+805 320 466 464 
+806 237 457 226 
+807 456 461 342 
+808 448 456 438 
+809 432 456 448 
+810 307 454 426 
+811 413 523 349 
+812 309 454 307 
+813 222 457 450 
+814 180 458 409 
+815 395 460 196 
+816 356 454 309 
+817 289 456 432 
+818 450 457 429 
+819 445 459 340 
+820 436 459 445 
+821 199 519 394 
+822 293 462 353 
+823 279 455 434 
+824 226 457 222 
+825 438 456 342 
+826 290 461 289 
+827 406 459 436 
+828 342 462 293 
+829 464 466 341 
+830 433 465 340 
+831 340 465 315 
+832 326 462 461 
+833 313 466 343 
+834 237 463 457 
+835 320 464 446 
+836 461 462 342 
+837 429 463 384 
+838 361 491 184 
+839 321 468 275 
+840 457 463 429 
+841 329 503 425 
+842 327 471 208 
+843 315 465 380 
+844 237 464 463 
+845 446 464 237 
+846 213 471 274 
+847 407 473 194 
+848 35 472 195 
+849 178 472 36 
+850 26 506 25 
+851 208 471 210 
+852 341 466 313 
+853 400 467 399 
+854 275 468 320 
+855 466 468 343 
+856 333 485 410 
+857 337 476 405 
+858 469 470 357 
+859 218 474 225 
+860 274 474 215 
+861 369 530 361 
+862 347 475 323 
+863 392 507 362 
+864 320 468 466 
+865 203 469 418 
+866 336 476 337 
+867 343 482 358 
+868 280 495 447 
+869 62 477 61 
+870 43 479 42 
+871 302 476 451 
+872 210 471 213 
+873 225 480 227 
+874 36 472 35 
+875 408 473 407 
+876 435 481 431 
+877 196 524 376 
+878 422 484 198 
+879 424 484 425 
+880 345 490 469 
+881 215 474 218 
+882 302 512 408 
+883 447 483 268 
+884 325 485 333 
+885 190 481 420 
+886 404 508 403 
+887 305 486 304 
+888 386 488 387 
+889 323 475 324 
+890 305 504 486 
+891 26 509 470 
+892 402 482 321 
+893 451 476 336 
+894 349 523 331 
+895 61 477 200 
+896 42 479 201 
+897 455 500 412 
+898 388 492 390 
+899 362 511 392 
+900 442 489 280 
+901 362 507 81 
+902 227 480 254 
+903 377 517 360 
+904 16 505 6 
+905 5 507 71 
+906 6 505 95 
+907 321 482 468 
+908 331 492 299 
+909 81 507 5 
+910 351 481 435 
+911 352 503 329 
+912 31 493 30 
+913 414 494 415 
+914 377 491 379 
+915 18 496 199 
+916 188 496 19 
+917 196 497 53 
+918 52 497 180 
+919 195 499 401 
+920 382 530 369 
+921 186 501 421 
+922 359 498 441 
+923 469 490 418 
+924 477 478 200 
+925 184 491 377 
+926 403 508 181 
+927 398 522 396 
+928 32 508 31 
+929 27 509 26 
+930 330 514 375 
+931 197 513 411 
+932 356 500 455 
+933 488 529 347 
+934 344 512 300 
+935 2 515 62 
+936 63 515 2 
+937 44 516 4 
+938 4 516 43 
+939 468 482 343 
+940 268 483 452 
+941 193 523 413 
+942 497 521 180 
+943 412 500 188 
+944 318 518 346 
+945 338 524 339 
+946 355 519 372 
+947 339 524 460 
+948 198 484 424 
+949 195 533 499 
+950 410 485 186 
+951 470 509 357 
+952 478 494 200 
+953 185 493 405 
+954 473 512 344 
+955 481 502 431 
+956 348 485 325 
+957 204 505 394 
+958 509 531 357 
+959 350 528 351 
+960 422 525 328 
+961 388 520 492 
+962 354 490 345 
+963 486 504 365 
+964 458 521 353 
+965 327 487 471 
+966 304 486 308 
+967 471 487 274 
+968 373 526 383 
+969 202 488 386 
+970 364 504 367 
+971 374 514 330 
+972 405 493 404 
+973 379 491 335 
+974 460 524 196 
+975 24 532 203 
+976 444 520 387 
+977 339 489 442 
+978 489 522 398 
+979 190 502 481 
+980 418 490 197 
+981 392 529 202 
+982 431 502 352 
+983 299 492 298 
+984 367 526 373 
+985 482 499 358 
+986 192 517 475 
+987 30 493 185 
+988 200 494 414 
+989 399 495 398 
+990 447 495 483 
+991 19 496 18 
+992 53 497 52 
+993 347 527 475 
+994 376 521 497 
+995 499 533 358 
+996 361 530 491 
+997 441 498 350 
+998 387 520 388 
+999 401 499 402 
+1000 328 525 453 
+1001 372 500 356 
+1002 365 504 364 
+1003 95 505 204 
+1004 421 501 422 
+1005 419 528 178 
+1006 423 502 190 
+1007 180 521 458 
+1008 492 520 298 
+1009 408 512 473 
+1010 472 533 195 
+1011 71 507 392 
+1012 357 531 344 
+1013 394 505 16 
+1014 194 531 509 
+1015 62 515 477 
+1016 43 516 479 
+1017 181 508 32 
+1018 453 525 348 
+1019 194 509 27 
+1020 368 510 366 
+1021 402 499 482 
+1022 411 513 412 
+1023 300 512 302 
+1024 359 533 472 
+1025 203 532 506 
+1026 483 495 399 
+1027 205 515 63 
+1028 206 516 44 
+1029 344 531 473 
+1030 504 526 367 
+1031 319 518 318 
+1032 335 530 382 
+1033 396 522 460 
+1034 375 519 355 
+1035 390 523 193 
+1036 460 522 339 
+1037 298 520 444 
+1038 353 521 376 
+1039 3 532 24 
+1040 25 532 3 
+1041 383 526 305 
+1042 376 524 338 
+1043 192 527 362 
+1044 473 531 194 
+1045 358 533 359 
+1046 511 529 392 
+1047 491 530 335 
+1048 477 515 205 
+1049 479 516 206 
+1050 327 510 487 
+1051 475 517 324 
+1052 475 527 192 
+1053 178 528 498 
+1054 511 527 347 
+1055 487 510 368 
+1056 305 526 504 
+1057 348 525 501 
+1058 202 529 488 
+1059 339 522 489 
+1060 501 525 422 
+1061 498 528 350 
+1062 362 527 511 
+1063 506 532 25 
+1064 347 529 511 
+$EndElements
\ No newline at end of file
diff --git a/tests/grid/grid_in_gmsh_03.output b/tests/grid/grid_in_gmsh_03.output
new file mode 100644 (file)
index 0000000..601e10b
--- /dev/null
@@ -0,0 +1,7 @@
+
+DEAL::Mesh info:
+DEAL:: dimension: 2
+DEAL:: no. of cells: 984
+DEAL:: boundary indicators: 10(80 times) 
+DEAL:: written to grid.vtu
+DEAL::

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.