]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Also check for reverse matching in bits/dof_tools_21_b
authorMatthias Maier <tamiko@kyomu.43-1.org>
Sun, 30 Nov 2014 13:37:02 +0000 (14:37 +0100)
committerMatthias Maier <tamiko@kyomu.43-1.org>
Sun, 30 Nov 2014 14:42:53 +0000 (15:42 +0100)
Also check for the inverse matching from face_2 to face_1 in the test
bits/dof_tools_21_b. Both directions must produce the same constraint
matrix except for the ordering of the constraints possibly being swapped.

Manually verified that this is the case

tests/bits/dof_tools_21_b.cc
tests/bits/dof_tools_21_b.output

index 977ea46c01e4874916e501724e1b2f673cfaa808..d0960d19f24179e9bc8b3e213c83872386b14ba0 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2013 by the deal.II authors
+// Copyright (C) 2003 - 2014 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -200,6 +200,7 @@ void print_matching(DoFHandler<dim> &dof_handler, bool constrain_only_velocity =
   MappingQ<dim> mapping(1);
 
   ConstraintMatrix constraint_matrix;
+  ConstraintMatrix constraint_matrix_reverse;
   std::vector<Point<dim> > support_points(dof_handler.n_dofs());
   DoFTools::map_dofs_to_support_points<dim>(mapping, dof_handler, support_points);
 
@@ -277,9 +278,20 @@ void print_matching(DoFHandler<dim> &dof_handler, bool constrain_only_velocity =
                                           constraint_matrix,
                                           velocity_mask,
                                           orientation[0], orientation[1], orientation[2]);
+  deallog << "Matching:" << std::endl;
   constraint_matrix.print(deallog.get_file_stream());
   constraint_matrix.close();
-  deallog << "Matching:" << std::endl;
+
+  DoFTools::make_periodicity_constraints (face_2,
+                                          face_1,
+                                          constraint_matrix_reverse,
+                                          velocity_mask,
+                                          orientation[0],
+                                          orientation[0] ? orientation[1] ^ orientation[2] : orientation[1],
+                                          orientation[2]);
+  deallog << "Reverse Matching:" << std::endl;
+  constraint_matrix_reverse.print(deallog.get_file_stream());
+  constraint_matrix_reverse.close();
 }
 
 
index 06614177cd62ec67ff51246bd6e8cf1a76183c7b..c71ae997298c2c31e25cc45e9293d16f682f5baf 100644 (file)
@@ -7,18 +7,24 @@ DEAL:: component 0: (6 - -1.000 3.000) (7 - 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -3.000) (1 - 1.000 -3.000)
 DEAL::Orientation: 100
+DEAL::Matching:
     6 0:  1.000
     7 1:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 6:  1.000
+    1 7:  1.000
 DEAL::Triangulation:1
 DEAL::DoFs of face_1:
 DEAL:: component 0: (4 - 1.000 3.000) (5 - -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -3.000) (1 - 1.000 -3.000)
 DEAL::Orientation: 110
+DEAL::Matching:
     4 1:  1.000
     5 0:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 5:  1.000
+    1 4:  1.000
 DEAL::Test for 3D, Q1:
 DEAL::
 DEAL::Triangulation:0
@@ -27,88 +33,128 @@ DEAL:: component 0: (12 - -1.000 -1.000 3.000) (13 - 1.000 -1.000 3.000) (14 - -
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 100
+DEAL::Matching:
     12 0:  1.000
     13 1:  1.000
     14 2:  1.000
     15 3:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 12:  1.000
+    1 13:  1.000
+    2 14:  1.000
+    3 15:  1.000
 DEAL::Triangulation:1
 DEAL::DoFs of face_1:
 DEAL:: component 0: (12 - 1.000 -1.000 3.000) (13 - 1.000 1.000 3.000) (14 - -1.000 -1.000 3.000) (15 - -1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 101
+DEAL::Matching:
     12 1:  1.000
     13 3:  1.000
     14 0:  1.000
     15 2:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 14:  1.000
+    1 12:  1.000
+    2 15:  1.000
+    3 13:  1.000
 DEAL::Triangulation:2
 DEAL::DoFs of face_1:
 DEAL:: component 0: (12 - 1.000 1.000 3.000) (13 - -1.000 1.000 3.000) (14 - 1.000 -1.000 3.000) (15 - -1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 110
+DEAL::Matching:
     12 3:  1.000
     13 2:  1.000
     14 1:  1.000
     15 0:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 15:  1.000
+    1 14:  1.000
+    2 13:  1.000
+    3 12:  1.000
 DEAL::Triangulation:3
 DEAL::DoFs of face_1:
 DEAL:: component 0: (12 - -1.000 1.000 3.000) (13 - -1.000 -1.000 3.000) (14 - 1.000 1.000 3.000) (15 - 1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 111
+DEAL::Matching:
     12 2:  1.000
     13 0:  1.000
     14 3:  1.000
     15 1:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 13:  1.000
+    1 15:  1.000
+    2 12:  1.000
+    3 14:  1.000
 DEAL::Triangulation:4
 DEAL::DoFs of face_1:
 DEAL:: component 0: (8 - 1.000 -1.000 3.000) (9 - -1.000 -1.000 3.000) (10 - 1.000 1.000 3.000) (11 - -1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 011
+DEAL::Matching:
     8 1:  1.000
     9 0:  1.000
     10 3:  1.000
     11 2:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 9:  1.000
+    1 8:  1.000
+    2 11:  1.000
+    3 10:  1.000
 DEAL::Triangulation:5
 DEAL::DoFs of face_1:
 DEAL:: component 0: (8 - -1.000 -1.000 3.000) (9 - -1.000 1.000 3.000) (10 - 1.000 -1.000 3.000) (11 - 1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 000
+DEAL::Matching:
     8 0:  1.000
     9 2:  1.000
     10 1:  1.000
     11 3:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 8:  1.000
+    1 10:  1.000
+    2 9:  1.000
+    3 11:  1.000
 DEAL::Triangulation:6
 DEAL::DoFs of face_1:
 DEAL:: component 0: (8 - -1.000 1.000 3.000) (9 - 1.000 1.000 3.000) (10 - -1.000 -1.000 3.000) (11 - 1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 001
+DEAL::Matching:
     8 2:  1.000
     9 3:  1.000
     10 0:  1.000
     11 1:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 10:  1.000
+    1 11:  1.000
+    2 8:  1.000
+    3 9:  1.000
 DEAL::Triangulation:7
 DEAL::DoFs of face_1:
 DEAL:: component 0: (8 - 1.000 1.000 3.000) (9 - 1.000 -1.000 3.000) (10 - -1.000 1.000 3.000) (11 - -1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (1 - 1.000 -1.000 -3.000) (2 - -1.000 1.000 -3.000) (3 - 1.000 1.000 -3.000)
 DEAL::Orientation: 010
+DEAL::Matching:
     8 3:  1.000
     9 1:  1.000
     10 2:  1.000
     11 0:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 11:  1.000
+    1 9:  1.000
+    2 10:  1.000
+    3 8:  1.000
 DEAL::Test for 3D, Q1, correct subface iteration:
 DEAL::
 DEAL::Triangulation:0
@@ -117,6 +163,7 @@ DEAL:: component 0: (45 - -1.000 -1.000 3.000) (49 - 1.000 -1.000 3.000) (51 - -
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 100
+DEAL::Matching:
     45 0:  1.000
     46 1:  1.000
     47 2:  1.000
@@ -126,13 +173,23 @@ DEAL::Orientation: 100
     51 12:  1.000
     52 13:  1.000
     53 16:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 45:  1.000
+    1 46:  1.000
+    2 47:  1.000
+    3 48:  1.000
+    8 49:  1.000
+    9 50:  1.000
+    12 51:  1.000
+    13 52:  1.000
+    16 53:  1.000
 DEAL::Triangulation:1
 DEAL::DoFs of face_1:
 DEAL:: component 0: (45 - 1.000 -1.000 3.000) (49 - 1.000 1.000 3.000) (51 - -1.000 -1.000 3.000) (53 - -1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 101
+DEAL::Matching:
     45 8:  1.000
     46 9:  1.000
     47 1:  1.000
@@ -142,13 +199,23 @@ DEAL::Orientation: 101
     51 0:  1.000
     52 2:  1.000
     53 12:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 51:  1.000
+    1 47:  1.000
+    2 52:  1.000
+    3 48:  1.000
+    8 45:  1.000
+    9 46:  1.000
+    12 53:  1.000
+    13 50:  1.000
+    16 49:  1.000
 DEAL::Triangulation:2
 DEAL::DoFs of face_1:
 DEAL:: component 0: (45 - 1.000 1.000 3.000) (49 - -1.000 1.000 3.000) (51 - 1.000 -1.000 3.000) (53 - -1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 110
+DEAL::Matching:
     45 16:  1.000
     46 13:  1.000
     47 9:  1.000
@@ -158,13 +225,23 @@ DEAL::Orientation: 110
     51 8:  1.000
     52 1:  1.000
     53 0:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 53:  1.000
+    1 52:  1.000
+    2 50:  1.000
+    3 48:  1.000
+    8 51:  1.000
+    9 47:  1.000
+    12 49:  1.000
+    13 46:  1.000
+    16 45:  1.000
 DEAL::Triangulation:3
 DEAL::DoFs of face_1:
 DEAL:: component 0: (45 - -1.000 1.000 3.000) (49 - -1.000 -1.000 3.000) (51 - 1.000 1.000 3.000) (53 - 1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 111
+DEAL::Matching:
     45 12:  1.000
     46 2:  1.000
     47 13:  1.000
@@ -174,13 +251,23 @@ DEAL::Orientation: 111
     51 16:  1.000
     52 9:  1.000
     53 8:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 49:  1.000
+    1 50:  1.000
+    2 46:  1.000
+    3 48:  1.000
+    8 53:  1.000
+    9 52:  1.000
+    12 45:  1.000
+    13 47:  1.000
+    16 51:  1.000
 DEAL::Triangulation:4
 DEAL::DoFs of face_1:
 DEAL:: component 0: (27 - 1.000 -1.000 3.000) (35 - -1.000 -1.000 3.000) (39 - 1.000 1.000 3.000) (43 - -1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 011
+DEAL::Matching:
     27 8:  1.000
     28 1:  1.000
     29 9:  1.000
@@ -190,13 +277,23 @@ DEAL::Orientation: 011
     39 16:  1.000
     40 13:  1.000
     43 12:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 35:  1.000
+    1 28:  1.000
+    2 36:  1.000
+    3 30:  1.000
+    8 27:  1.000
+    9 29:  1.000
+    12 43:  1.000
+    13 40:  1.000
+    16 39:  1.000
 DEAL::Triangulation:5
 DEAL::DoFs of face_1:
 DEAL:: component 0: (27 - -1.000 -1.000 3.000) (35 - -1.000 1.000 3.000) (39 - 1.000 -1.000 3.000) (43 - 1.000 1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 000
+DEAL::Matching:
     27 0:  1.000
     28 2:  1.000
     29 1:  1.000
@@ -206,13 +303,23 @@ DEAL::Orientation: 000
     39 8:  1.000
     40 9:  1.000
     43 16:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 27:  1.000
+    1 29:  1.000
+    2 28:  1.000
+    3 30:  1.000
+    8 39:  1.000
+    9 40:  1.000
+    12 35:  1.000
+    13 36:  1.000
+    16 43:  1.000
 DEAL::Triangulation:6
 DEAL::DoFs of face_1:
 DEAL:: component 0: (27 - -1.000 1.000 3.000) (35 - 1.000 1.000 3.000) (39 - -1.000 -1.000 3.000) (43 - 1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 001
+DEAL::Matching:
     27 12:  1.000
     28 13:  1.000
     29 2:  1.000
@@ -222,13 +329,23 @@ DEAL::Orientation: 001
     39 0:  1.000
     40 1:  1.000
     43 8:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 39:  1.000
+    1 40:  1.000
+    2 29:  1.000
+    3 30:  1.000
+    8 43:  1.000
+    9 36:  1.000
+    12 27:  1.000
+    13 28:  1.000
+    16 35:  1.000
 DEAL::Triangulation:7
 DEAL::DoFs of face_1:
 DEAL:: component 0: (27 - 1.000 1.000 3.000) (35 - 1.000 -1.000 3.000) (39 - -1.000 1.000 3.000) (43 - -1.000 -1.000 3.000)
 DEAL::DoFs of face_2:
 DEAL:: component 0: (0 - -1.000 -1.000 -3.000) (8 - 1.000 -1.000 -3.000) (12 - -1.000 1.000 -3.000) (16 - 1.000 1.000 -3.000)
 DEAL::Orientation: 010
+DEAL::Matching:
     27 16:  1.000
     28 9:  1.000
     29 13:  1.000
@@ -238,7 +355,16 @@ DEAL::Orientation: 010
     39 12:  1.000
     40 2:  1.000
     43 0:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 43:  1.000
+    1 36:  1.000
+    2 40:  1.000
+    3 30:  1.000
+    8 35:  1.000
+    9 28:  1.000
+    12 39:  1.000
+    13 29:  1.000
+    16 27:  1.000
 DEAL::Test for 3D, Taylor-Hood with Component-Mask on v:
 DEAL::
 DEAL::Triangulation:0
@@ -253,6 +379,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 100
+DEAL::Matching:
     105 0:  1.000
     106 1:  1.000
     107 2:  1.000
@@ -280,7 +407,34 @@ DEAL::Orientation: 100
     172 80:  1.000
     173 81:  1.000
     174 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 105:  1.000
+    1 106:  1.000
+    2 107:  1.000
+    4 109:  1.000
+    5 110:  1.000
+    6 111:  1.000
+    8 113:  1.000
+    9 114:  1.000
+    10 115:  1.000
+    12 117:  1.000
+    13 118:  1.000
+    14 119:  1.000
+    32 133:  1.000
+    33 134:  1.000
+    34 135:  1.000
+    35 136:  1.000
+    36 137:  1.000
+    37 138:  1.000
+    38 139:  1.000
+    39 140:  1.000
+    40 141:  1.000
+    41 142:  1.000
+    42 143:  1.000
+    43 144:  1.000
+    80 172:  1.000
+    81 173:  1.000
+    82 174:  1.000
 DEAL::Triangulation:1
 DEAL::DoFs of face_1:
 DEAL:: component 0: (105 - 1.000 -1.000 3.000) (109 - 1.000 1.000 3.000) (113 - -1.000 -1.000 3.000) (117 - -1.000 1.000 3.000) (133 - 0.000 -1.000 3.000) (136 - 0.000 1.000 3.000) (139 - 1.000 0.000 3.000) (142 - -1.000 0.000 3.000) (172 - 0.000 0.000 3.000)
@@ -293,6 +447,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 101
+DEAL::Matching:
     105 4:  1.000
     106 5:  1.000
     107 6:  1.000
@@ -320,7 +475,34 @@ DEAL::Orientation: 101
     172 80:  1.000
     173 81:  1.000
     174 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 113:  1.000
+    1 114:  1.000
+    2 115:  1.000
+    4 105:  1.000
+    5 106:  1.000
+    6 107:  1.000
+    8 117:  1.000
+    9 118:  1.000
+    10 119:  1.000
+    12 109:  1.000
+    13 110:  1.000
+    14 111:  1.000
+    32 142:  1.000
+    33 143:  1.000
+    34 144:  1.000
+    35 139:  1.000
+    36 140:  1.000
+    37 141:  1.000
+    38 133:  1.000
+    39 134:  1.000
+    40 135:  1.000
+    41 136:  1.000
+    42 137:  1.000
+    43 138:  1.000
+    80 172:  1.000
+    81 173:  1.000
+    82 174:  1.000
 DEAL::Triangulation:2
 DEAL::DoFs of face_1:
 DEAL:: component 0: (105 - 1.000 1.000 3.000) (109 - -1.000 1.000 3.000) (113 - 1.000 -1.000 3.000) (117 - -1.000 -1.000 3.000) (133 - 1.000 0.000 3.000) (136 - -1.000 0.000 3.000) (139 - 0.000 1.000 3.000) (142 - 0.000 -1.000 3.000) (172 - 0.000 0.000 3.000)
@@ -333,6 +515,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 110
+DEAL::Matching:
     105 12:  1.000
     106 13:  1.000
     107 14:  1.000
@@ -360,7 +543,34 @@ DEAL::Orientation: 110
     172 80:  1.000
     173 81:  1.000
     174 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 117:  1.000
+    1 118:  1.000
+    2 119:  1.000
+    4 113:  1.000
+    5 114:  1.000
+    6 115:  1.000
+    8 109:  1.000
+    9 110:  1.000
+    10 111:  1.000
+    12 105:  1.000
+    13 106:  1.000
+    14 107:  1.000
+    32 136:  1.000
+    33 137:  1.000
+    34 138:  1.000
+    35 133:  1.000
+    36 134:  1.000
+    37 135:  1.000
+    38 142:  1.000
+    39 143:  1.000
+    40 144:  1.000
+    41 139:  1.000
+    42 140:  1.000
+    43 141:  1.000
+    80 172:  1.000
+    81 173:  1.000
+    82 174:  1.000
 DEAL::Triangulation:3
 DEAL::DoFs of face_1:
 DEAL:: component 0: (105 - -1.000 1.000 3.000) (109 - -1.000 -1.000 3.000) (113 - 1.000 1.000 3.000) (117 - 1.000 -1.000 3.000) (133 - 0.000 1.000 3.000) (136 - 0.000 -1.000 3.000) (139 - -1.000 0.000 3.000) (142 - 1.000 0.000 3.000) (172 - 0.000 0.000 3.000)
@@ -373,6 +583,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 111
+DEAL::Matching:
     105 8:  1.000
     106 9:  1.000
     107 10:  1.000
@@ -400,7 +611,34 @@ DEAL::Orientation: 111
     172 80:  1.000
     173 81:  1.000
     174 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 109:  1.000
+    1 110:  1.000
+    2 111:  1.000
+    4 117:  1.000
+    5 118:  1.000
+    6 119:  1.000
+    8 105:  1.000
+    9 106:  1.000
+    10 107:  1.000
+    12 113:  1.000
+    13 114:  1.000
+    14 115:  1.000
+    32 139:  1.000
+    33 140:  1.000
+    34 141:  1.000
+    35 142:  1.000
+    36 143:  1.000
+    37 144:  1.000
+    38 136:  1.000
+    39 137:  1.000
+    40 138:  1.000
+    41 133:  1.000
+    42 134:  1.000
+    43 135:  1.000
+    80 172:  1.000
+    81 173:  1.000
+    82 174:  1.000
 DEAL::Triangulation:4
 DEAL::DoFs of face_1:
 DEAL:: component 0: (89 - 1.000 -1.000 3.000) (93 - -1.000 -1.000 3.000) (97 - 1.000 1.000 3.000) (101 - -1.000 1.000 3.000) (121 - 1.000 0.000 3.000) (124 - -1.000 0.000 3.000) (127 - 0.000 -1.000 3.000) (130 - 0.000 1.000 3.000) (169 - 0.000 0.000 3.000)
@@ -413,6 +651,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 011
+DEAL::Matching:
     89 4:  1.000
     90 5:  1.000
     91 6:  1.000
@@ -440,7 +679,34 @@ DEAL::Orientation: 011
     169 80:  1.000
     170 81:  1.000
     171 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 93:  1.000
+    1 94:  1.000
+    2 95:  1.000
+    4 89:  1.000
+    5 90:  1.000
+    6 91:  1.000
+    8 101:  1.000
+    9 102:  1.000
+    10 103:  1.000
+    12 97:  1.000
+    13 98:  1.000
+    14 99:  1.000
+    32 124:  1.000
+    33 125:  1.000
+    34 126:  1.000
+    35 121:  1.000
+    36 122:  1.000
+    37 123:  1.000
+    38 127:  1.000
+    39 128:  1.000
+    40 129:  1.000
+    41 130:  1.000
+    42 131:  1.000
+    43 132:  1.000
+    80 169:  1.000
+    81 170:  1.000
+    82 171:  1.000
 DEAL::Triangulation:5
 DEAL::DoFs of face_1:
 DEAL:: component 0: (89 - -1.000 -1.000 3.000) (93 - -1.000 1.000 3.000) (97 - 1.000 -1.000 3.000) (101 - 1.000 1.000 3.000) (121 - 0.000 -1.000 3.000) (124 - 0.000 1.000 3.000) (127 - -1.000 0.000 3.000) (130 - 1.000 0.000 3.000) (169 - 0.000 0.000 3.000)
@@ -453,6 +719,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 000
+DEAL::Matching:
     89 0:  1.000
     90 1:  1.000
     91 2:  1.000
@@ -480,7 +747,34 @@ DEAL::Orientation: 000
     169 80:  1.000
     170 81:  1.000
     171 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 89:  1.000
+    1 90:  1.000
+    2 91:  1.000
+    4 97:  1.000
+    5 98:  1.000
+    6 99:  1.000
+    8 93:  1.000
+    9 94:  1.000
+    10 95:  1.000
+    12 101:  1.000
+    13 102:  1.000
+    14 103:  1.000
+    32 127:  1.000
+    33 128:  1.000
+    34 129:  1.000
+    35 130:  1.000
+    36 131:  1.000
+    37 132:  1.000
+    38 121:  1.000
+    39 122:  1.000
+    40 123:  1.000
+    41 124:  1.000
+    42 125:  1.000
+    43 126:  1.000
+    80 169:  1.000
+    81 170:  1.000
+    82 171:  1.000
 DEAL::Triangulation:6
 DEAL::DoFs of face_1:
 DEAL:: component 0: (89 - -1.000 1.000 3.000) (93 - 1.000 1.000 3.000) (97 - -1.000 -1.000 3.000) (101 - 1.000 -1.000 3.000) (121 - -1.000 0.000 3.000) (124 - 1.000 0.000 3.000) (127 - 0.000 1.000 3.000) (130 - 0.000 -1.000 3.000) (169 - 0.000 0.000 3.000)
@@ -493,6 +787,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 001
+DEAL::Matching:
     89 8:  1.000
     90 9:  1.000
     91 10:  1.000
@@ -520,7 +815,34 @@ DEAL::Orientation: 001
     169 80:  1.000
     170 81:  1.000
     171 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 97:  1.000
+    1 98:  1.000
+    2 99:  1.000
+    4 101:  1.000
+    5 102:  1.000
+    6 103:  1.000
+    8 89:  1.000
+    9 90:  1.000
+    10 91:  1.000
+    12 93:  1.000
+    13 94:  1.000
+    14 95:  1.000
+    32 121:  1.000
+    33 122:  1.000
+    34 123:  1.000
+    35 124:  1.000
+    36 125:  1.000
+    37 126:  1.000
+    38 130:  1.000
+    39 131:  1.000
+    40 132:  1.000
+    41 127:  1.000
+    42 128:  1.000
+    43 129:  1.000
+    80 169:  1.000
+    81 170:  1.000
+    82 171:  1.000
 DEAL::Triangulation:7
 DEAL::DoFs of face_1:
 DEAL:: component 0: (89 - 1.000 1.000 3.000) (93 - 1.000 -1.000 3.000) (97 - -1.000 1.000 3.000) (101 - -1.000 -1.000 3.000) (121 - 0.000 1.000 3.000) (124 - 0.000 -1.000 3.000) (127 - 1.000 0.000 3.000) (130 - -1.000 0.000 3.000) (169 - 0.000 0.000 3.000)
@@ -533,6 +855,7 @@ DEAL:: component 1: (1 - -1.000 -1.000 -3.000) (5 - 1.000 -1.000 -3.000) (9 - -1
 DEAL:: component 2: (2 - -1.000 -1.000 -3.000) (6 - 1.000 -1.000 -3.000) (10 - -1.000 1.000 -3.000) (14 - 1.000 1.000 -3.000) (34 - -1.000 0.000 -3.000) (37 - 1.000 0.000 -3.000) (40 - 0.000 -1.000 -3.000) (43 - 0.000 1.000 -3.000) (82 - 0.000 0.000 -3.000)
 DEAL:: component 3: (3 - -1.000 -1.000 -3.000) (7 - 1.000 -1.000 -3.000) (11 - -1.000 1.000 -3.000) (15 - 1.000 1.000 -3.000)
 DEAL::Orientation: 010
+DEAL::Matching:
     89 12:  1.000
     90 13:  1.000
     91 14:  1.000
@@ -560,4 +883,31 @@ DEAL::Orientation: 010
     169 80:  1.000
     170 81:  1.000
     171 82:  1.000
-DEAL::Matching:
+DEAL::Reverse Matching:
+    0 101:  1.000
+    1 102:  1.000
+    2 103:  1.000
+    4 93:  1.000
+    5 94:  1.000
+    6 95:  1.000
+    8 97:  1.000
+    9 98:  1.000
+    10 99:  1.000
+    12 89:  1.000
+    13 90:  1.000
+    14 91:  1.000
+    32 130:  1.000
+    33 131:  1.000
+    34 132:  1.000
+    35 127:  1.000
+    36 128:  1.000
+    37 129:  1.000
+    38 124:  1.000
+    39 125:  1.000
+    40 126:  1.000
+    41 121:  1.000
+    42 122:  1.000
+    43 123:  1.000
+    80 169:  1.000
+    81 170:  1.000
+    82 171:  1.000

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.