diff --git a/NumLib/DOF/MeshComponentMap.cpp b/NumLib/DOF/MeshComponentMap.cpp
index 89730484aeea87048d0b6db74414d233147d4fcf..e1309988c40d4210d718205f317d76e9cce798e0 100644
--- a/NumLib/DOF/MeshComponentMap.cpp
+++ b/NumLib/DOF/MeshComponentMap.cpp
@@ -250,6 +250,13 @@ GlobalIndexType MeshComponentMap::getLocalIndex(
     std::size_t const range_end) const
 {
     GlobalIndexType const global_index = getGlobalIndex(l, comp_id);
+    // request for index of linear quantities at higher order nodes
+    // results in returning nop
+    // That index shall not be modified like a usual global index.
+    if (global_index == nop)
+    {
+        return nop;
+    }
 #ifndef USE_PETSC
     (void)range_begin;
     (void)range_end;
diff --git a/ProcessLib/Assembly/MatrixElementCache.h b/ProcessLib/Assembly/MatrixElementCache.h
index d8f6de3043c2a9fa01cde69879431da96e19fd23..ca46b17f1af18a5a60dd04b39c7855a8b76fd4c1 100644
--- a/ProcessLib/Assembly/MatrixElementCache.h
+++ b/ProcessLib/Assembly/MatrixElementCache.h
@@ -91,7 +91,6 @@ public:
             {
                 auto const [r, c] = rc;
 
-                assert(r >= 0);  // rows must not be ghost indices
                 auto const c_no_ghost =
                     detail::transformToNonGhostIndex(c, n_cols);
 
diff --git a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear.prj b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear.prj
index 55bd36253a0d3fbd34fed69f88cdd16edafbd72c..44b4e59a637ed3457eab96ed2c99a78c75200d22 100644
--- a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear.prj
+++ b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear.prj
@@ -6,8 +6,12 @@
     pressure being one lower then the order of displacement.
 -->
 <OpenGeoSysProject>
-    <mesh>square_1x1_quad8_1e2.vtu</mesh>
-    <geometry>square_1x1.gml</geometry>
+    <meshes>
+        <mesh>square_1x1_quad8_1e2.vtu</mesh>
+        <mesh>square_1x1_geometry_bottom.vtu</mesh>
+        <mesh>square_1x1_geometry_left.vtu</mesh>
+        <mesh>square_1x1_geometry_top.vtu</mesh>
+    </meshes>
     <processes>
         <process>
             <name>RM</name>
@@ -167,27 +171,45 @@
                 </time_stepping>
             </process>
         </processes>
-        <output>
-            <type>VTK</type>
-            <prefix>mechanics_linear</prefix>
-            <timesteps>
-                <pair>
-                    <repeat>1</repeat>
-                    <each_steps>10000000</each_steps>
-                </pair>
-            </timesteps>
-            <variables>
-                <variable>temperature</variable>
-                <variable>displacement</variable>
-                <variable>pressure</variable>
-                <variable>sigma</variable>
-                <variable>epsilon</variable>
-                <variable>velocity</variable>
-                <variable>saturation</variable>
-                <variable>NodalForces</variable>
-            </variables>
-            <suffix>_ts_{:timestep}_t_{:time}</suffix>
-        </output>
+        <outputs>
+            <output>
+                <type>VTK</type>
+                <prefix>mechanics_linear</prefix>
+                <timesteps>
+                    <pair>
+                        <repeat>1</repeat>
+                        <each_steps>10000000</each_steps>
+                    </pair>
+                </timesteps>
+                <variables>
+                    <variable>temperature</variable>
+                    <variable>displacement</variable>
+                    <variable>pressure</variable>
+                    <variable>sigma</variable>
+                    <variable>epsilon</variable>
+                    <variable>velocity</variable>
+                    <variable>saturation</variable>
+                    <variable>NodalForces</variable>
+                </variables>
+                <suffix>_ts_{:timestep}_t_{:time}</suffix>
+            </output>
+            <output>
+                <type>VTK</type>
+                <prefix>mechanics_linear_{:meshname}</prefix>
+                <meshes>
+                    <mesh>square_1x1_geometry_left</mesh>
+                </meshes>
+                <timesteps>
+                    <pair>
+                        <repeat>1</repeat>
+                        <each_steps>10000000</each_steps>
+                    </pair>
+                </timesteps>
+                <variables>
+                </variables>
+                <suffix>_ts_{:timestep}_t_{:time}</suffix>
+            </output>
+        </outputs>
     </time_loop>
     <parameters>
         <!-- Mechanics -->
@@ -246,8 +268,7 @@
             <initial_condition>T_ref</initial_condition>
             <boundary_conditions>
                 <boundary_condition>
-                    <geometrical_set>square_1x1_geometry</geometrical_set>
-                    <geometry>top</geometry>
+                    <mesh>square_1x1_geometry_top</mesh>
                     <type>Dirichlet</type>
                     <parameter>T_ref</parameter>
                 </boundary_condition>
@@ -260,8 +281,7 @@
             <initial_condition>pressure_ic</initial_condition>
             <boundary_conditions>
                 <boundary_condition>
-                    <geometrical_set>square_1x1_geometry</geometrical_set>
-                    <geometry>top</geometry>
+                    <mesh>square_1x1_geometry_top</mesh>
                     <type>Dirichlet</type>
                     <component>0</component>
                     <parameter>dirichlet_p</parameter>
@@ -275,22 +295,19 @@
             <initial_condition>displacement0</initial_condition>
             <boundary_conditions>
                 <boundary_condition>
-                    <geometrical_set>square_1x1_geometry</geometrical_set>
-                    <geometry>left</geometry>
+                    <mesh>square_1x1_geometry_left</mesh>
                     <type>Dirichlet</type>
                     <component>0</component>
                     <parameter>dirichlet0</parameter>
                 </boundary_condition>
                 <boundary_condition>
-                    <geometrical_set>square_1x1_geometry</geometrical_set>
-                    <geometry>bottom</geometry>
+                    <mesh>square_1x1_geometry_bottom</mesh>
                     <type>Dirichlet</type>
                     <component>1</component>
                     <parameter>dirichlet0</parameter>
                 </boundary_condition>
                 <boundary_condition>
-                    <geometrical_set>square_1x1_geometry</geometrical_set>
-                    <geometry>top</geometry>
+                    <mesh>square_1x1_geometry_top</mesh>
                     <type>Dirichlet</type>
                     <component>1</component>
                     <parameter>dirichlet1</parameter>
@@ -320,25 +337,25 @@
     </linear_solvers>
     <test_definition>
         <vtkdiff>
-            <regex>mechanics_linear_ts_.*.vtu</regex>
+            <regex>mechanics_linear.*_ts_.*.vtu</regex>
             <field>displacement</field>
             <absolute_tolerance>1e-15</absolute_tolerance>
             <relative_tolerance>0</relative_tolerance>
         </vtkdiff>
         <vtkdiff>
-            <regex>mechanics_linear_ts_.*.vtu</regex>
+            <regex>mechanics_linear.*_ts_.*.vtu</regex>
             <field>sigma</field>
             <absolute_tolerance>5e-15</absolute_tolerance>
             <relative_tolerance>0</relative_tolerance>
         </vtkdiff>
         <vtkdiff>
-            <regex>mechanics_linear_ts_.*.vtu</regex>
+            <regex>mechanics_linear.*_ts_.*.vtu</regex>
             <field>epsilon</field>
             <absolute_tolerance>5e-15</absolute_tolerance>
             <relative_tolerance>0</relative_tolerance>
         </vtkdiff>
         <vtkdiff>
-            <regex>mechanics_linear_ts_.*.vtu</regex>
+            <regex>mechanics_linear.*_ts_.*.vtu</regex>
             <field>NodalForces</field>
             <absolute_tolerance>1e-15</absolute_tolerance>
             <relative_tolerance>0</relative_tolerance>
diff --git a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear_square_1x1_geometry_left_ts_4_t_1.000000.vtu b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear_square_1x1_geometry_left_ts_4_t_1.000000.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..d708c0d3a3d09bc8b7db90591f921eef31ece61b
--- /dev/null
+++ b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/mechanics_linear_square_1x1_geometry_left_ts_4_t_1.000000.vtu
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64" compressor="vtkZLibDataCompressor">
+  <UnstructuredGrid>
+    <FieldData>
+      <DataArray type="Int8" Name="OGS_VERSION" NumberOfTuples="18" format="appended" RangeMin="45"                   RangeMax="103"                  offset="0"                   />
+    </FieldData>
+    <Piece NumberOfPoints="21"                   NumberOfCells="10"                  >
+      <PointData>
+        <DataArray type="Float64" Name="HeatFlowRate" format="appended" RangeMin="-5.6843418861e-14"    RangeMax="5.6843418861e-14"     offset="80"                  />
+        <DataArray type="Float64" Name="MassFlowRate" format="appended" RangeMin="-6.5786495107e-25"    RangeMax="1.7625987737e-24"     offset="172"                 />
+        <DataArray type="Float64" Name="NodalForces" NumberOfComponents="2" format="appended" RangeMin="4.032333768e-19"      RangeMax="0.00091575091575"     offset="356"                 />
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="311"                  offset="752"                 />
+        <DataArray type="Float64" Name="displacement" NumberOfComponents="2" format="appended" RangeMin="0"                    RangeMax="0.05"                 offset="884"                 />
+        <DataArray type="Float64" Name="epsilon" NumberOfComponents="4" format="appended" RangeMin="0.054398379328"       RangeMax="0.054398379328"       offset="1120"                />
+        <DataArray type="Float64" Name="pressure" format="appended" RangeMin="-4.0142305602e-08"    RangeMax="0"                    offset="1568"                />
+        <DataArray type="Float64" Name="pressure_interpolated" format="appended" RangeMin="-4.0142305602e-08"    RangeMax="0"                    offset="1740"                />
+        <DataArray type="Float64" Name="saturation" format="appended" RangeMin="1"                    RangeMax="1"                    offset="2016"                />
+        <DataArray type="Float64" Name="sigma" NumberOfComponents="4" format="appended" RangeMin="0.057364321478"       RangeMax="0.057364321478"       offset="2100"                />
+        <DataArray type="Float64" Name="temperature" format="appended" RangeMin="0"                    RangeMax="293.15"               offset="2784"                />
+        <DataArray type="Float64" Name="temperature_interpolated" format="appended" RangeMin="293.15"               RangeMax="293.15"               offset="2876"                />
+        <DataArray type="Float64" Name="velocity" NumberOfComponents="2" format="appended" RangeMin="6.348975563e-19"      RangeMax="1.9261175085e-17"     offset="2976"                />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="90"                   offset="3484"                />
+        <DataArray type="Float64" Name="liquid_density_avg" format="appended" RangeMin="1e-06"                RangeMax="1e-06"                offset="3576"                />
+        <DataArray type="Float64" Name="porosity_avg" format="appended" RangeMin="0.1"                  RangeMax="0.1"                  offset="3648"                />
+        <DataArray type="Float64" Name="saturation_avg" format="appended" RangeMin="1"                    RangeMax="1"                    offset="3716"                />
+        <DataArray type="Float64" Name="stress_avg" NumberOfComponents="4" format="appended" RangeMin="0.057364321478"       RangeMax="0.057364321478"       offset="3784"                />
+        <DataArray type="Float64" Name="viscosity_avg" format="appended" RangeMin="1e-10"                RangeMax="1e-10"                offset="4128"                />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="1"                    offset="4200"                />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="4380"                />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="4504"                />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="4596"                />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _AQAAAAAAAAAAgAAAAAAAABIAAAAAAAAAGgAAAAAAAAA=eF5zcgx21TUzNdBNT04ytTAzMU4DACu/BK0=AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAJAAAAAAAAAA=eF5jYACDBgilsJcBhW+AxofJw2gDWyjfFlUdnKYaAABNEwbPAQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAaAAAAAAAAAA=eF4zaGHRPT574q7gKd9Zk71P7Er/uCewNezKrhCJKi0NpqNWctdX/+/jvWp1SJwnMn/JvV0PbjMUWDHe2MXBIn1r8YMDu7pSYzf95ma0Xst484xu8ctdG3xXM/Lcf7qLgcoAAK9LKt4=AQAAAAAAAAAAgAAAAAAAAFABAAAAAAAABgEAAAAAAAA=eF5bUaogsiCSbY/YA0a5B4x++x2uxj3MKBPZwwAGKntSpjZ/2qKhbwPhS9hcf75GueOhIZTvbPN9b+H2F08cIOobMm3MnsrJp7wyhvIjbVqeTZu5gt8Zqt5tz/tpBVvsagOg5gfsEZWf9nt+rCtEviHapq1pvsJUHSifQWdPZOaN8DM7HPbIQ9xn/2Ol1OIbbV93Q+TV9njcE9i+o0QDap+JzYkZCzzjVshA9TPsmfTSUvAXtw2EH5CwZ+6nE/NzOnUh6hXS9iRqLZzwp94Vqt9xz6JkJyuBWkYIf0OKjcIb6cDsciuoeRE29nyNfCGF7hC+Q/yeXpsfnNcfwtxrvgcA7d9o7w==AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAQQAAAAAAAAA=eF5jYIAAbigtBqUVobQOlDaH0k5Q2hdKR0DpZCidB6WroHQ/lF4CpXdC6XNQ+jGU/gGleRkhtBKUNofSABebB9Y=AQAAAAAAAAAAgAAAAAAAAFABAAAAAAAAjgAAAAAAAAA=eF5jYMAOakXWuT+sKrFH5bfA+bvkWl8H7uhDk58C58+ZCQZo6ufB+W8DdwBFFsL5NWD9S+B87uuLC2y5lsP5s8DGrYTz68DqU+D8PWDz6+D82WD1nXD+O7B9E+F8XrD50+F8nZj+Q1815sD5S4Cy1xcvgPNNjEFgMZx/9KsGUMdSOD8IZHzgCnsAsKNMrQ==AQAAAAAAAAAAgAAAAAAAAKACAAAAAAAALgEAAAAAAAA=eF6Tjv8oGv9x6v5FM0FgpT0DFMwqy5zzTjzBRhQqvxhNfu47uTNhBaU2fFD5GWjyV0J8fVYk1dsIQeUXoMk/nxn94Nvpyj28UPlmNHmOhJVx1QkdcPO70OT7jEV+dN9euEcaKt+HJr+vzS/anmnBHi6ofCeavN7fAt9Twt02bFD5OWjyGhxrZz+/vGDPnziI/EI0+QZuza+rY2fb/IDKr0aTz51tes6cd/seSaj589DkK14Fb7GKtNsjiiN8BO1P5uql2sL9Nx1NPuT7h/DHG3tshHH4P2RPoy6Thy/c/vVo8kddpfdEGBXvEYfKT0aTX/jZ2vdF83QbERzh4/N8ku69/jYbARz263jOtj3nPw0evxj2e+QYvoqvhsfPRjT5knP33h+Q9t8DABFmCfk=AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAXwAAAAAAAAA=eF6TbXvB8ckjad/GB46b9/Ek7YufWWnzpDx5n3Sn5EXZ3tR9z3aqNkVXJO9L/K2ZuHdx/L4Pm2s/vdqZsO9L4/VJuhuT94lNPNH2RihpX+R/Wf6sIv99DDQCAFvGKq4=AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAArAAAAAAAAAA=eF6TbXvB8ckjad/GB46b9/Ek7YufWWnzpDx5n3Sn5EXZ3tR9z3aqNkVXJO9L/K2ZuHdx/L4Pm2s/vdqZsO9L4/VJuhuT94lNPNH2RihpX+R/Wf6sIv99DFCQbiwad0MraR/H3rvlgYeS9tlOPMnW2JSyr2Hh/JV7gPTp6FhJ2aWJ+y5EdF584pqw79OsVU49pkn7Wjkv8PA+Str3RmACV/v7SKi59vsAnvRSTA==AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAHAAAAAAAAAA=eF5jYACBD/Z//oPAe4rpH1CaEWoutWgAPnlUfg==AQAAAAAAAAAAgAAAAAAAAKACAAAAAAAA4AEAAAAAAAA=eF7rfbrbh/9HyB6lQ4oyhxTX2AvxPRTgezjB/tiik2nRhyJsflmz2t3L6bRRh8rLQOWZpFjmnqktsPk60yZ/ommDjQxUXhAq/yHkaGmjSoWNSVLZemH9DhuY+VJQ+fnqUb9/XC/ec3XjNbEdnO17GKDyf3gh8unPo57FHWiy8fCcdq30RNkeDqg8C1R/xVEjabXK2XuiuD4nz02YuocbKs8AlT9guIDp/4IZe1J0Duy5+acArp8NKs+3fmmZ6pUWmwOG723cNGbYqKL5T2RVzpbuxzP38F1cOuHk0uU2BlB5LVj4nL2Q+4tnqk2M15VeC631NjZQeQuovH23KGPa7o17Irh8zF0PZtsoQuXFoPIRW7Z1hUSY72EUfsVx3q/ZRg0qLw2V1+D0uTdzjtmeYjOJuJ/rmveIQuU5ofI6zfoP1wm12Sz726qddap1Dw9Unhkqv0UqgF+zzW2PW7Kp7qeOaTZWUHkNqLyTwe3mjo7cPduLdqi5z2jcI4BmPsuUCRs3iU2ymeuz6uhMx3K4+0Vg4aPxfM3PqEabM6xK0dMulsDt54DKe1kcC9ukOXFP+xmtFNWzC22sofJ6sPhpY1Hbwle653qtkKjM7iXw8DOGyueUP7v/7a37HgAtPRv1AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAIwAAAAAAAAA=eF5LSgOCoCKHJCidiMZPhtIpOPgwOhVKp0FpBioDAA4aIPk=AQAAAAAAAAAAgAAAAAAAAKgAAAAAAAAAKQAAAAAAAAA=eF5LSgOCoCKHJCidiMZPhtIpOPgwOhVKp6Hpx0Wj68dFw8wDANAyPvM=AQAAAAAAAAAAgAAAAAAAAFABAAAAAAAAWwEAAAAAAAA=eF4BUAGv/lRAlX1sKS683g4F2fIoILzCyJKKGwL+u68ECAmTVDQ8F1qayIjVPbwPtNHhxRNOPI5g5fQ6OzC8APx8/igCoDt8bO7a/txGPOTRuq/GnVi8Bp6wtOuBN7wlq+c36ZFHvIAVbYncHTc8sRWb06KhUDx+T3UzC2wzPCdIjS0pJzc88glbHtfbVrwI7TBp0GdpvO4pVJKwRjS8bHx5Kh9oc7wAAAAAAEDROKDL9YMI4nC8n8xz99f0ILzaDgXZ8iggvKqGQ4GqtS+8ZkhJv89eSDxc3b/eYQg3vOAPLQJe5FE8rnj3wMJ+LTyacO13XeBRvNc6LAESOCY8ODOI5y9bX7yAGuLQygPJuyAggr4aJT88uzJx3vNENTxeo5X3/nlZPBC2fVHUAEK8kv6dwdTMS7yNFPBCg+1LvDct/dA17nW8HipUkrBGJLyly/WDCOJwvJUpoR8=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAIwAAAAAAAAA=eF5jYIAALigtAqXloLQGlDaC0jZQ2g1KB0DpKCgNADPgAcM=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAFAAAAAAAAAA=eF7rfbt1wfdjG+x6qUQDALjaNsU=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAEQAAAAAAAAA=eF6bORMEdtrPpBINAD6NLY0=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAEAAAAAAAAAA=eF5jYACBD/YMVKIBv60L1w==AQAAAAAAAAAAgAAAAAAAAEABAAAAAAAA4AAAAAAAAAA=eF5z+V5sD0Q2CocUZQ4prrEX4XsowPdwgr3+m0vz43ea2XwJ4P8awB9qI4cmH1HSfMdcOsGG4dVCuVcL/+2GyQtD5fdEP1EwXmdgM4ctcwJbpoKNDFReACqfmzv73Y0/kXsYwKDIRgkqLwqVZ9sSI1WxwsPG9eQUn5NTQvZIoelvaf6pk/U72sY9gcUtgSXNRhbN/gZLmV/RW3L39IHtz9kjApXnhsozVRvPvvKtxqZQ5jgQTbQxhsqrQOV9HLc/LCsu3PPhed2753VZe0Sh8rxQ+d4n+9nbQkNtAP05gaY=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAFAAAAAAAAAA=eF7btff6zfs1t213UYkGAPDKOAU=AQAAAAAAAAAAgAAAAAAAAPgBAAAAAAAAZAAAAAAAAAA=eF5jYMAPZs0EgZ322MVPYogbg8FlHOpvYohDwAMc5jzGEE8Dg2c4zH+JIX72DAi8wWHvBxzmrMQQNwG75zAOcy7gcOc1HO65g8PehxjiYOVnnuCw9wUOd77G4Z53cHEAMpJF1w==AQAAAAAAAAAAgAAAAAAAAPAAAAAAAAAAOwAAAAAAAAA=eF5dx0EWQDAQwNBBKYpSvf9ZLWSVbP5LxN+ART/ioZ/w1Ce89DNW/YK3PuOjX7HpN3z1O3b8AGHQAQA=AQAAAAAAAAAAgAAAAAAAAFAAAAAAAAAAIwAAAAAAAAA=eF5jZoAANijNCaV5oDQ/lBaC0qJQWgJKS0NpOSgNABTwAKY=AQAAAAAAAAAAgAAAAAAAAAoAAAAAAAAACwAAAAAAAAA=eF4TFYUBAASNANM=
+  </AppendedData>
+</VTKFile>
diff --git a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_bottom.vtu b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_bottom.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..353d7d25bedf77ebc1d372deec30eac3f49535b0
--- /dev/null
+++ b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_bottom.vtu
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
+  <UnstructuredGrid>
+    <Piece NumberOfPoints="21"                   NumberOfCells="10"                  >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="139"                  offset="0"                   />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="9"                    offset="236"                 />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="1"                    offset="356"                 />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="1040"                />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="1372"                />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="1492"                />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _qAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABQAAAAAAAAAGAAAAAAAAAAcAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAoAAAAAAAAAeQAAAAAAAAB7AAAAAAAAAH0AAAAAAAAAfwAAAAAAAACBAAAAAAAAAIMAAAAAAAAAhQAAAAAAAACHAAAAAAAAAIkAAAAAAAAAiwAAAAAAAAA=UAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABQAAAAAAAAAGAAAAAAAAAAcAAAAAAAAACAAAAAAAAAAJAAAAAAAAAA==+AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACamZmZmZm5PwAAAAAAAAAAAAAAAAAAAACamZmZmZnJPwAAAAAAAAAAAAAAAAAAAAAzMzMzMzPTPwAAAAAAAAAAAAAAAAAAAACamZmZmZnZPwAAAAAAAAAAAAAAAAAAAAAAAAAAAADgPwAAAAAAAAAAAAAAAAAAAAAzMzMzMzPjPwAAAAAAAAAAAAAAAAAAAABmZmZmZmbmPwAAAAAAAAAAAAAAAAAAAACamZmZmZnpPwAAAAAAAAAAAAAAAAAAAADNzMzMzMzsPwAAAAAAAAAAAAAAAAAAAAAAAAAAAADwPwAAAAAAAAAAAAAAAAAAAACamZmZmZmpPwAAAAAAAAAAAAAAAAAAAAA0MzMzMzPDPwAAAAAAAAAAAAAAAAAAAAAAAAAAAADQPwAAAAAAAAAAAAAAAAAAAABmZmZmZmbWPwAAAAAAAAAAAAAAAAAAAADNzMzMzMzcPwAAAAAAAAAAAAAAAAAAAACamZmZmZnhPwAAAAAAAAAAAAAAAAAAAADMzMzMzMzkPwAAAAAAAAAAAAAAAAAAAAAAAAAAAADoPwAAAAAAAAAAAAAAAAAAAAA0MzMzMzPrPwAAAAAAAAAAAAAAAAAAAABmZmZmZmbuPwAAAAAAAAAAAAAAAAAAAAA=8AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAACwAAAAAAAAABAAAAAAAAAAIAAAAAAAAADAAAAAAAAAACAAAAAAAAAAMAAAAAAAAADQAAAAAAAAADAAAAAAAAAAQAAAAAAAAADgAAAAAAAAAEAAAAAAAAAAUAAAAAAAAADwAAAAAAAAAFAAAAAAAAAAYAAAAAAAAAEAAAAAAAAAAGAAAAAAAAAAcAAAAAAAAAEQAAAAAAAAAHAAAAAAAAAAgAAAAAAAAAEgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAEwAAAAAAAAAJAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAA=UAAAAAAAAAADAAAAAAAAAAYAAAAAAAAACQAAAAAAAAAMAAAAAAAAAA8AAAAAAAAAEgAAAAAAAAAVAAAAAAAAABgAAAAAAAAAGwAAAAAAAAAeAAAAAAAAAA==CgAAAAAAAAAVFRUVFRUVFRUV
+  </AppendedData>
+</VTKFile>
diff --git a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_left.vtu b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_left.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..745def4647e54e942bcc58eb3dbbd69fa35a8d38
--- /dev/null
+++ b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_left.vtu
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
+  <UnstructuredGrid>
+    <Piece NumberOfPoints="21"                   NumberOfCells="10"                  >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="311"                  offset="0"                   />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="90"                   offset="236"                 />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="1"                    offset="356"                 />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="1040"                />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="1372"                />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="1492"                />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _qAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAFgAAAAAAAAAhAAAAAAAAACwAAAAAAAAANwAAAAAAAABCAAAAAAAAAE0AAAAAAAAAWAAAAAAAAABjAAAAAAAAAG4AAAAAAAAAegAAAAAAAACPAAAAAAAAAKQAAAAAAAAAuQAAAAAAAADOAAAAAAAAAOMAAAAAAAAA+AAAAAAAAAANAQAAAAAAACIBAAAAAAAANwEAAAAAAAA=UAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAAeAAAAAAAAACgAAAAAAAAAMgAAAAAAAAA8AAAAAAAAAEYAAAAAAAAAUAAAAAAAAABaAAAAAAAAAA==+AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqZmZmZmbk/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmck/AAAAAAAAAAAAAAAAAAAAADMzMzMzM9M/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmdk/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOA/AAAAAAAAAAAAAAAAAAAAADMzMzMzM+M/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZuY/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmek/AAAAAAAAAAAAAAAAAAAAAM3MzMzMzOw/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmak/AAAAAAAAAAAAAAAAAAAAADQzMzMzM8M/AAAAAAAAAAAAAAAAAAAAAAAAAAAAANA/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZtY/AAAAAAAAAAAAAAAAAAAAAM3MzMzMzNw/AAAAAAAAAAAAAAAAAAAAAJqZmZmZmeE/AAAAAAAAAAAAAAAAAAAAAMzMzMzMzOQ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOg/AAAAAAAAAAAAAAAAAAAAADQzMzMzM+s/AAAAAAAAAAAAAAAAAAAAAGZmZmZmZu4/AAAAAAAAAAA=8AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAACwAAAAAAAAABAAAAAAAAAAIAAAAAAAAADAAAAAAAAAACAAAAAAAAAAMAAAAAAAAADQAAAAAAAAADAAAAAAAAAAQAAAAAAAAADgAAAAAAAAAEAAAAAAAAAAUAAAAAAAAADwAAAAAAAAAFAAAAAAAAAAYAAAAAAAAAEAAAAAAAAAAGAAAAAAAAAAcAAAAAAAAAEQAAAAAAAAAHAAAAAAAAAAgAAAAAAAAAEgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAEwAAAAAAAAAJAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAA=UAAAAAAAAAADAAAAAAAAAAYAAAAAAAAACQAAAAAAAAAMAAAAAAAAAA8AAAAAAAAAEgAAAAAAAAAVAAAAAAAAABgAAAAAAAAAGwAAAAAAAAAeAAAAAAAAAA==CgAAAAAAAAAVFRUVFRUVFRUV
+  </AppendedData>
+</VTKFile>
diff --git a/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_top.vtu b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_top.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..7345ebb94b08f951c0d1ffeea5369512551544d9
--- /dev/null
+++ b/Tests/Data/ThermoRichardsMechanics/LinearMechanics/square_1x1_geometry_top.vtu
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
+  <UnstructuredGrid>
+    <Piece NumberOfPoints="21"                   NumberOfCells="10"                  >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="110"                  RangeMax="340"                  offset="0"                   />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="90"                   RangeMax="99"                   offset="236"                 />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="1"                    RangeMax="1.4142135624"         offset="356"                 />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="1040"                />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="1372"                />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="1492"                />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _qAAAAAAAAABuAAAAAAAAAG8AAAAAAAAAcAAAAAAAAABxAAAAAAAAAHIAAAAAAAAAcwAAAAAAAAB0AAAAAAAAAHUAAAAAAAAAdgAAAAAAAAB3AAAAAAAAAHgAAAAAAAAASwEAAAAAAABMAQAAAAAAAE0BAAAAAAAATgEAAAAAAABPAQAAAAAAAFABAAAAAAAAUQEAAAAAAABSAQAAAAAAAFMBAAAAAAAAVAEAAAAAAAA=UAAAAAAAAABaAAAAAAAAAFsAAAAAAAAAXAAAAAAAAABdAAAAAAAAAF4AAAAAAAAAXwAAAAAAAABgAAAAAAAAAGEAAAAAAAAAYgAAAAAAAABjAAAAAAAAAA==+AEAAAAAAAAAAAAAAAAAAAAAAAAAAPA/AAAAAAAAAACamZmZmZm5PwAAAAAAAPA/AAAAAAAAAACamZmZmZnJPwAAAAAAAPA/AAAAAAAAAAAzMzMzMzPTPwAAAAAAAPA/AAAAAAAAAACamZmZmZnZPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADgPwAAAAAAAPA/AAAAAAAAAAAzMzMzMzPjPwAAAAAAAPA/AAAAAAAAAABmZmZmZmbmPwAAAAAAAPA/AAAAAAAAAACamZmZmZnpPwAAAAAAAPA/AAAAAAAAAADNzMzMzMzsPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAACamZmZmZmpPwAAAAAAAPA/AAAAAAAAAAA0MzMzMzPDPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADQPwAAAAAAAPA/AAAAAAAAAABmZmZmZmbWPwAAAAAAAPA/AAAAAAAAAADNzMzMzMzcPwAAAAAAAPA/AAAAAAAAAACamZmZmZnhPwAAAAAAAPA/AAAAAAAAAADMzMzMzMzkPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADoPwAAAAAAAPA/AAAAAAAAAAA0MzMzMzPrPwAAAAAAAPA/AAAAAAAAAABmZmZmZmbuPwAAAAAAAPA/AAAAAAAAAAA=8AAAAAAAAAAAAAAAAAAAAAEAAAAAAAAACwAAAAAAAAABAAAAAAAAAAIAAAAAAAAADAAAAAAAAAACAAAAAAAAAAMAAAAAAAAADQAAAAAAAAADAAAAAAAAAAQAAAAAAAAADgAAAAAAAAAEAAAAAAAAAAUAAAAAAAAADwAAAAAAAAAFAAAAAAAAAAYAAAAAAAAAEAAAAAAAAAAGAAAAAAAAAAcAAAAAAAAAEQAAAAAAAAAHAAAAAAAAAAgAAAAAAAAAEgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAEwAAAAAAAAAJAAAAAAAAAAoAAAAAAAAAFAAAAAAAAAA=UAAAAAAAAAADAAAAAAAAAAYAAAAAAAAACQAAAAAAAAAMAAAAAAAAAA8AAAAAAAAAEgAAAAAAAAAVAAAAAAAAABgAAAAAAAAAGwAAAAAAAAAeAAAAAAAAAA==CgAAAAAAAAAVFRUVFRUVFRUV
+  </AppendedData>
+</VTKFile>