From 2dd9a24b3d44fb6d2bd60884220c46b4397853ac Mon Sep 17 00:00:00 2001
From: Dmitri Naumov <github@naumov.de>
Date: Sun, 19 Aug 2018 23:35:51 +0200
Subject: [PATCH] [T] RichardMechanics tests.

---
 ProcessLib/RichardsMechanics/Tests.cmake      | 123 +++++++
 .../RichardsFlow_2d_quasinewton.prj           | 298 ++++++++++++++++
 .../RichardsFlow_2d_quasinewton_pcs_0.pvd     |  25 ++
 ...w_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu |   3 +
 ...quasinewton_pcs_0_ts_104_t_2000.000000.vtu |   3 +
 ...d_quasinewton_pcs_0_ts_19_t_318.000000.vtu |   3 +
 ...w_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu |   3 +
 ...d_quasinewton_pcs_0_ts_29_t_518.000000.vtu |   3 +
 ...w_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu |   3 +
 ...d_quasinewton_pcs_0_ts_39_t_718.000000.vtu |   3 +
 ...w_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu |   3 +
 ...d_quasinewton_pcs_0_ts_49_t_918.000000.vtu |   3 +
 ..._2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu |   3 +
 ..._quasinewton_pcs_0_ts_59_t_1118.000000.vtu |   3 +
 ..._2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu |   3 +
 ..._quasinewton_pcs_0_ts_69_t_1318.000000.vtu |   3 +
 ..._2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu |   3 +
 ..._quasinewton_pcs_0_ts_79_t_1518.000000.vtu |   3 +
 ..._2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu |   3 +
 ..._quasinewton_pcs_0_ts_89_t_1718.000000.vtu |   3 +
 ..._2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu |   3 +
 ..._quasinewton_pcs_0_ts_99_t_1918.000000.vtu |   3 +
 ...2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu |   3 +
 .../RichardsFlow_2d_richardsflow.prj          | 202 +++++++++++
 .../RichardsFlow_2d_richardsflow_pcs_0.pvd    |  25 ++
 ..._2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu |   3 +
 ...ichardsflow_pcs_0_ts_104_t_2000.000000.vtu |   3 +
 ..._richardsflow_pcs_0_ts_19_t_300.000000.vtu |   3 +
 ..._2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu |   3 +
 ..._richardsflow_pcs_0_ts_29_t_500.000000.vtu |   3 +
 ..._2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu |   3 +
 ..._richardsflow_pcs_0_ts_39_t_700.000000.vtu |   3 +
 ..._2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu |   3 +
 ..._richardsflow_pcs_0_ts_49_t_900.000000.vtu |   3 +
 ...2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu |   3 +
 ...richardsflow_pcs_0_ts_59_t_1100.000000.vtu |   3 +
 ...2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu |   3 +
 ...richardsflow_pcs_0_ts_69_t_1300.000000.vtu |   3 +
 ...2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu |   3 +
 ...richardsflow_pcs_0_ts_79_t_1500.000000.vtu |   3 +
 ...2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu |   3 +
 ...richardsflow_pcs_0_ts_89_t_1700.000000.vtu |   3 +
 ...2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu |   3 +
 ...richardsflow_pcs_0_ts_99_t_1900.000000.vtu |   3 +
 ...d_richardsflow_pcs_0_ts_9_t_100.000000.vtu |   3 +
 .../RichardsFlow_2d_small.prj                 | 293 ++++++++++++++++
 .../RichardsFlow_2d_small_pcs_0.pvd           |  25 ++
 ...rdsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu |   3 +
 ...ow_2d_small_pcs_0_ts_104_t_2000.000000.vtu |   3 +
 ...Flow_2d_small_pcs_0_ts_19_t_318.000000.vtu |   3 +
 ...rdsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu |   3 +
 ...Flow_2d_small_pcs_0_ts_29_t_518.000000.vtu |   3 +
 ...rdsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu |   3 +
 ...Flow_2d_small_pcs_0_ts_39_t_718.000000.vtu |   3 +
 ...rdsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu |   3 +
 ...Flow_2d_small_pcs_0_ts_49_t_918.000000.vtu |   3 +
 ...dsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu |   3 +
 ...low_2d_small_pcs_0_ts_59_t_1118.000000.vtu |   3 +
 ...dsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu |   3 +
 ...low_2d_small_pcs_0_ts_69_t_1318.000000.vtu |   3 +
 ...dsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu |   3 +
 ...low_2d_small_pcs_0_ts_79_t_1518.000000.vtu |   3 +
 ...dsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu |   3 +
 ...low_2d_small_pcs_0_ts_89_t_1718.000000.vtu |   3 +
 ...dsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu |   3 +
 ...low_2d_small_pcs_0_ts_99_t_1918.000000.vtu |   3 +
 ...sFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu |   3 +
 Tests/Data/RichardsMechanics/Richards_2d.gml  |   3 +
 Tests/Data/RichardsMechanics/Richards_2d.vtu  |   3 +
 .../RichardsMechanics/Richards_2d_linear.vtu  |   3 +
 .../confined_compression_fully_saturated.prj  | 320 ++++++++++++++++++
 .../flow_fully_saturated.prj                  | 279 +++++++++++++++
 ..._fully_saturated_pcs_0_ts_1_t_1.000000.vtu |   3 +
 ..._fully_saturated_pcs_0_ts_2_t_2.000000.vtu |   3 +
 Tests/Data/RichardsMechanics/gravity.prj      | 284 ++++++++++++++++
 .../gravity_pcs_0_ts_10_t_0.090000.vtu        |   3 +
 .../gravity_pcs_0_ts_11_t_0.100000.vtu        |   3 +
 .../gravity_pcs_0_ts_12_t_0.200000.vtu        |   3 +
 .../gravity_pcs_0_ts_13_t_0.300000.vtu        |   3 +
 .../gravity_pcs_0_ts_14_t_0.400000.vtu        |   3 +
 .../gravity_pcs_0_ts_15_t_0.500000.vtu        |   3 +
 .../gravity_pcs_0_ts_16_t_0.600000.vtu        |   3 +
 .../gravity_pcs_0_ts_17_t_0.700000.vtu        |   3 +
 .../gravity_pcs_0_ts_18_t_0.800000.vtu        |   3 +
 .../gravity_pcs_0_ts_19_t_0.900000.vtu        |   3 +
 .../gravity_pcs_0_ts_1_t_0.001000.vtu         |   3 +
 .../gravity_pcs_0_ts_20_t_1.000000.vtu        |   3 +
 .../gravity_pcs_0_ts_21_t_2.000000.vtu        |   3 +
 .../gravity_pcs_0_ts_22_t_3.000000.vtu        |   3 +
 .../gravity_pcs_0_ts_23_t_4.000000.vtu        |   3 +
 .../gravity_pcs_0_ts_24_t_5.000000.vtu        |   3 +
 .../gravity_pcs_0_ts_25_t_10.000000.vtu       |   3 +
 .../gravity_pcs_0_ts_2_t_0.010000.vtu         |   3 +
 .../gravity_pcs_0_ts_3_t_0.020000.vtu         |   3 +
 .../gravity_pcs_0_ts_4_t_0.030000.vtu         |   3 +
 .../gravity_pcs_0_ts_5_t_0.040000.vtu         |   3 +
 .../gravity_pcs_0_ts_6_t_0.050000.vtu         |   3 +
 .../gravity_pcs_0_ts_7_t_0.060000.vtu         |   3 +
 .../gravity_pcs_0_ts_8_t_0.070000.vtu         |   3 +
 .../gravity_pcs_0_ts_9_t_0.080000.vtu         |   3 +
 .../RichardsMechanics/mechanics_linear.prj    | 280 +++++++++++++++
 ...mechanics_linear_pcs_0_ts_4_t_1.000000.vtu |   3 +
 Tests/Data/RichardsMechanics/square_1x1.gml   |   3 +
 .../square_1x1_quad8_1e0.vtu                  |   3 +
 .../square_1x1_quad8_1e2.vtu                  |   3 +
 105 files changed, 2436 insertions(+)
 create mode 100644 ProcessLib/RichardsMechanics/Tests.cmake
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0.pvd
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_104_t_2000.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_19_t_318.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_29_t_518.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_39_t_718.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_49_t_918.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_59_t_1118.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_69_t_1318.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_79_t_1518.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_89_t_1718.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_99_t_1918.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow.prj
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0.pvd
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_104_t_2000.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_19_t_300.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_29_t_500.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_39_t_700.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_49_t_900.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_59_t_1100.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_69_t_1300.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_79_t_1500.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_89_t_1700.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_99_t_1900.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_9_t_100.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0.pvd
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_104_t_2000.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_19_t_318.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_29_t_518.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_39_t_718.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_49_t_918.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_59_t_1118.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_69_t_1318.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_79_t_1518.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_89_t_1718.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_99_t_1918.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/Richards_2d.gml
 create mode 100644 Tests/Data/RichardsMechanics/Richards_2d.vtu
 create mode 100644 Tests/Data/RichardsMechanics/Richards_2d_linear.vtu
 create mode 100644 Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
 create mode 100644 Tests/Data/RichardsMechanics/flow_fully_saturated.prj
 create mode 100644 Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_1_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_2_t_2.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity.prj
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_10_t_0.090000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_11_t_0.100000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_12_t_0.200000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_13_t_0.300000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_14_t_0.400000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_15_t_0.500000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_16_t_0.600000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_17_t_0.700000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_18_t_0.800000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_19_t_0.900000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_1_t_0.001000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_20_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_21_t_2.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_22_t_3.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_23_t_4.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_24_t_5.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_25_t_10.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_2_t_0.010000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_3_t_0.020000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_4_t_0.030000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_5_t_0.040000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_6_t_0.050000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_7_t_0.060000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_8_t_0.070000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/gravity_pcs_0_ts_9_t_0.080000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/mechanics_linear.prj
 create mode 100644 Tests/Data/RichardsMechanics/mechanics_linear_pcs_0_ts_4_t_1.000000.vtu
 create mode 100644 Tests/Data/RichardsMechanics/square_1x1.gml
 create mode 100644 Tests/Data/RichardsMechanics/square_1x1_quad8_1e0.vtu
 create mode 100644 Tests/Data/RichardsMechanics/square_1x1_quad8_1e2.vtu

diff --git a/ProcessLib/RichardsMechanics/Tests.cmake b/ProcessLib/RichardsMechanics/Tests.cmake
new file mode 100644
index 00000000000..0058a30a447
--- /dev/null
+++ b/ProcessLib/RichardsMechanics/Tests.cmake
@@ -0,0 +1,123 @@
+AddTest(
+    NAME RichardsMechanics_square_1e2_gravity
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS gravity.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB gravity_pcs_0_ts_*.vtu displacement displacement 1e-15 0
+    GLOB gravity_pcs_0_ts_*.vtu sigma sigma 5e-10 0
+    GLOB gravity_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB gravity_pcs_0_ts_*.vtu pressure pressure 0 2e-2
+    GLOB gravity_pcs_0_ts_*.vtu velocity velocity 1e-7 1e-15
+    GLOB gravity_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-5 0
+    GLOB gravity_pcs_0_ts_*.vtu NodalForces NodalForces 1e-10 0
+    GLOB gravity_pcs_0_ts_24_t_5.000000.vtu pressure pressure 1e-4 1e-15
+)
+
+AddTest(
+    NAME RichardsMechanics_square_1e2_mechanics_linear
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS mechanics_linear.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB mechanics_linear_pcs_0_ts_*.vtu displacement displacement 1e-15 0
+    GLOB mechanics_linear_pcs_0_ts_*.vtu sigma sigma 1e-15 0
+    GLOB mechanics_linear_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB mechanics_linear_pcs_0_ts_*.vtu pressure pressure 1e-15 1e-15
+    GLOB mechanics_linear_pcs_0_ts_*.vtu velocity velocity 1e-15 1e-15
+    GLOB mechanics_linear_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-15 0
+    GLOB mechanics_linear_pcs_0_ts_*.vtu NodalForces NodalForces 1e-15 0
+)
+
+AddTest(
+    NAME RichardsMechanics_square_1e2_confined_compression
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS confined_compression_fully_saturated.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu displacement displacement 1e-15 0
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu sigma sigma 1e-15 0
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu pressure pressure 1e-15 1e-15
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu velocity velocity 1e-15 1e-15
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-15 0
+    GLOB confined_compression_fully_saturated_pcs_0_ts_*.vtu NodalForces NodalForces 1e-15 0
+)
+
+AddTest(
+    NAME RichardsMechanics_square_1e2_flow_fully_saturated
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS flow_fully_saturated.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu displacement displacement 2e-14 0
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu sigma sigma 1e-14 0
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu pressure pressure 1e-15 1e-15
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu velocity velocity 1e-15 1e-15
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-15 0
+    GLOB flow_fully_saturated_pcs_0_ts_*.vtu NodalForces NodalForces 1e-15 0
+)
+
+AddTest(
+    NAME RichardsMechanics_RichardsFlow_2d_small
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS RichardsFlow_2d_small.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu displacement displacement 2e-14 0
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu sigma sigma 1e-8 0
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu pressure pressure 1e-7 1e-15
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu saturation saturation 1e-11 1e-15
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu saturation_avg saturation_avg 1e-11 1e-15
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu velocity velocity 1e-15 1e-15
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-13 0
+    GLOB RichardsFlow_2d_small_pcs_0_ts_*.vtu NodalForces NodalForces 1e-9 0
+)
+AddTest(
+    NAME RichardsMechanics_RichardsFlow_2d_quasinewton
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS RichardsFlow_2d_quasinewton.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu displacement displacement 2e-14 0
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu sigma sigma 1e-8 0
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu epsilon epsilon 1e-15 0
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu pressure pressure 1e-10 1e-15
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu saturation saturation 1e-14 1e-15
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu saturation_avg saturation_avg 1e-14 1e-15
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu velocity velocity 1e-15 1e-15
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu HydraulicFlow HydraulicFlow 1e-15 0
+    GLOB RichardsFlow_2d_quasinewton_pcs_0_ts_*.vtu NodalForces NodalForces 1e-15 0
+)
+AddTest(
+    NAME RichardsMechanics_RichardsFlow_2d_richardsflow
+    PATH RichardsMechanics
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS RichardsFlow_2d_richardsflow.prj
+    WRAPPER time
+    TESTER vtkdiff
+    REQUIREMENTS NOT OGS_USE_MPI
+    DIFF_DATA
+    GLOB RichardsFlow_2d_richardsflow_pcs_0_ts_*.vtu pressure pressure 1e-11 1e-15
+    GLOB RichardsFlow_2d_richardsflow_pcs_0_ts_*.vtu saturation saturation 1e-14 1e-15
+)
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
new file mode 100644
index 00000000000..832b2edfacc
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
@@ -0,0 +1,298 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>Richards_2d.vtu</mesh>
+    <geometry>Richards_2d.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <jacobian_assembler>
+                <type>CentralDifferences</type>
+                <component_magnitudes>1e5 1e5 1e5 1e5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5 1e-5</component_magnitudes>
+                <relative_epsilons>1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8</relative_epsilons>
+            </jacobian_assembler>
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value> 1 </value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value> 1.e-3 </value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value> 0.0 </value>
+                        </storage>
+                    <capillary_pressure>
+                        <type>vanGenuchten</type>
+                        <m>0.789029535864979</m>
+                        <pc_max>36333.30</pc_max>
+                        <pd>3633.33</pd>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </capillary_pressure>
+                    <relative_permeability>
+                        <type>WettingPhaseVanGenuchten</type>
+                        <krel_min>1e-12</krel_min>
+                        <m>0.789029535864979</m>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 -9.81</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>nonlinear_solver</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-7 1e-11 1e-10</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>2000</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>1</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>2</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>5</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>10</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>50</repeat>
+                            <delta_t>20</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>RichardsFlow_2d_quasinewton</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>9</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+                <pair>
+                    <repeat>100</repeat>
+                    <each_steps>10</each_steps>
+                </pair>
+            </timesteps>
+            <output_iteration_results>false</output_iteration_results>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>160e300</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>5e9</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.1</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>4.46e-13</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>2.2e300</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>p0</name>
+            <type>Constant</type>
+            <value>-5000</value>
+        </parameter>
+        <parameter>
+            <name>p_Dirichlet_bottom</name>
+            <type>Constant</type>
+            <value>1000</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>LEFT</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>RIGHT</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>BOTTOM</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>TOP</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>p0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>BOTTOM</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p_Dirichlet_bottom</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>TOP</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>nonlinear_solver</name>
+            <type>Newton</type>
+            <max_iter>100</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+            <!--damping>0.9</damping-->
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0.pvd b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0.pvd
new file mode 100644
index 00000000000..79d04b0d653
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0.pvd
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<VTKFile type="Collection" version="0.1" byte_order="LittleEndian" compressor="vtkZLibDataCompressor">
+  <Collection>
+    <DataSet timestep="0" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu"/>
+    <DataSet timestep="1" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu"/>
+    <DataSet timestep="3" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu"/>
+    <DataSet timestep="8" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu"/>
+    <DataSet timestep="18" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu"/>
+    <DataSet timestep="38" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu"/>
+    <DataSet timestep="58" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu"/>
+    <DataSet timestep="78" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu"/>
+    <DataSet timestep="98" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu"/>
+    <DataSet timestep="118" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu"/>
+    <DataSet timestep="318" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_19_t_318.000000.vtu"/>
+    <DataSet timestep="518" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_29_t_518.000000.vtu"/>
+    <DataSet timestep="718" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_39_t_718.000000.vtu"/>
+    <DataSet timestep="918" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_49_t_918.000000.vtu"/>
+    <DataSet timestep="1118" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_59_t_1118.000000.vtu"/>
+    <DataSet timestep="1318" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_69_t_1318.000000.vtu"/>
+    <DataSet timestep="1518" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_79_t_1518.000000.vtu"/>
+    <DataSet timestep="1718" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_89_t_1718.000000.vtu"/>
+    <DataSet timestep="1918" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_99_t_1918.000000.vtu"/>
+    <DataSet timestep="2000" group="" part="0" file="RichardsFlow_2d_quasinewton_pcs_0_ts_104_t_2000.000000.vtu"/>
+  </Collection>
+</VTKFile>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu
new file mode 100644
index 00000000000..080b872b8f5
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_0_t_0.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9b777be31f90ab6ab765aa0f75d0ffb288bf905e6a22cd6dab4e9601881e0d2d
+size 7907
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_104_t_2000.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_104_t_2000.000000.vtu
new file mode 100644
index 00000000000..59f1515d983
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_104_t_2000.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:56dd63602f3e6b886caf83c6330fbf19a7172ef815da56334e9bec34756a4c09
+size 39036
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_19_t_318.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_19_t_318.000000.vtu
new file mode 100644
index 00000000000..45c5150e460
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_19_t_318.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e2245ee40ecf0d964350f97307f420e0aec2a8b1c6bd002f25424228ba10847d
+size 38385
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu
new file mode 100644
index 00000000000..b65e66b2cd2
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_1_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2e534596c75cce14f34afb92c0144a089790a2fd0dd4ef1bd3dcb66fe3c024c1
+size 37801
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_29_t_518.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_29_t_518.000000.vtu
new file mode 100644
index 00000000000..87f3a41b08e
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_29_t_518.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:531b556f5f73e5bc2176ede8a76283f8fd22185ca09364df0b0dcb311f4efb9a
+size 38536
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu
new file mode 100644
index 00000000000..dc639e75c67
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_2_t_3.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a367d0f6d7199ca616c4f4ebb52546c340d911ebe6103004dedf1740b036581a
+size 37662
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_39_t_718.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_39_t_718.000000.vtu
new file mode 100644
index 00000000000..663eb7d27f3
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_39_t_718.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8fa37a056be91d30168cfec9abf4dfd905133d986ac67e8eff041f110a7307c9
+size 38442
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu
new file mode 100644
index 00000000000..53ef6fa10e5
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_3_t_8.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f21796105fb7d1e6eee1744506907a44141fa35fe5f2ac6a84648085beb8d6fb
+size 37261
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_49_t_918.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_49_t_918.000000.vtu
new file mode 100644
index 00000000000..6b745f11b3b
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_49_t_918.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:28596b46a2a459913a35114ec49b6379e366b72c00e9c04d7426a374e6258aaf
+size 38637
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu
new file mode 100644
index 00000000000..698f118164d
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_4_t_18.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:50ac7147d44bcd5def386b2e620dbdb54f4a97d36ab71e336c28d44acef8228e
+size 37714
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_59_t_1118.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_59_t_1118.000000.vtu
new file mode 100644
index 00000000000..85211cf3f13
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_59_t_1118.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9f5bfd56d7a02b72d90448f5b655c4dc0fe4a98c2879c9e1ecba7eee3dda1e5f
+size 38658
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu
new file mode 100644
index 00000000000..673dae92b3c
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_5_t_38.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:11a989d0c99c636ac35ac68cb7cc1c4119c91ee1776a5443b83a6ca89b4d606b
+size 37905
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_69_t_1318.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_69_t_1318.000000.vtu
new file mode 100644
index 00000000000..9630a44f94a
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_69_t_1318.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e06a04093ebe34f49691dfb886ba3b638d4e2de3fc76401daa7db16028a6a21
+size 38724
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu
new file mode 100644
index 00000000000..81af7cecca1
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_6_t_58.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2d0720b57d42581bc972773ac0ebedd2ddc3b7ce65f7d08d7c59b41619923899
+size 38121
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_79_t_1518.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_79_t_1518.000000.vtu
new file mode 100644
index 00000000000..55c664736ba
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_79_t_1518.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eb49f45f5e20bfc94f3a0f112c5cb378dab2f130482abef6188085de287668e0
+size 38588
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu
new file mode 100644
index 00000000000..5be854eee6b
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_7_t_78.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:bfbb250381b7ba8632521bd85845693eb2ef9e9fedc14d2759c5ff7b5c37d6cc
+size 38216
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_89_t_1718.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_89_t_1718.000000.vtu
new file mode 100644
index 00000000000..01d0a216db3
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_89_t_1718.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:39d63f2b2cef444946535e02bc6485bc973b28cebbcdb068ee3c0744d4f55a6f
+size 38818
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu
new file mode 100644
index 00000000000..5dc3cff45be
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_8_t_98.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:650a643dffbbd43c44c95ed9acfb331db89dfeef63845572e5cd5a7969442996
+size 38115
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_99_t_1918.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_99_t_1918.000000.vtu
new file mode 100644
index 00000000000..898ac8d844d
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_99_t_1918.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eae0ad4cb7b481854d55e1734f667c93c5883d82c96a5c20ebafb1553fcf57dd
+size 38764
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu
new file mode 100644
index 00000000000..bd2143ea1fb
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton_pcs_0_ts_9_t_118.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e44758ea56b3ac2ab7a00d30ad3408bf26c9e26277da827a23cb17f60e8b470
+size 38034
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow.prj
new file mode 100644
index 00000000000..bf10720c116
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow.prj
@@ -0,0 +1,202 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>Richards_2d_linear.vtu</mesh>
+    <geometry>Richards_2d.gml</geometry>
+    <processes>
+        <process>
+            <name>R</name>
+            <type>RICHARDS_FLOW</type>
+            <integration_order>3</integration_order>
+            <jacobian_assembler>
+                <type>CentralDifferences</type>
+                <component_magnitudes>1e5</component_magnitudes>
+                <relative_epsilons>1e-8</relative_epsilons>
+            </jacobian_assembler>
+            <process_variables>
+                <process_variable>pressure</process_variable>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value> 1 </value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value> 1.e-3 </value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value> 0.0 </value>
+                        </storage>
+                    <capillary_pressure>
+                        <type>vanGenuchten</type>
+                        <m>0.789029535864979</m>
+                        <pc_max>36333.30</pc_max>
+                        <pd>3633.33</pd>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </capillary_pressure>
+                    <relative_permeability>
+                        <type>WettingPhaseVanGenuchten</type>
+                        <krel_min>1e-12</krel_min>
+                        <m>0.789029535864979</m>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 -9.81</specific_body_force>
+            <mass_lumping>false</mass_lumping>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="R">
+                <nonlinear_solver>nonlinear_solver</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-7</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>pressure</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>2000</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>1</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>2</repeat>
+                            <delta_t>2</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>5</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>10</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>50</repeat>
+                            <delta_t>20</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>RichardsFlow_2d_richardsflow</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>9</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+                <pair>
+                    <repeat>100</repeat>
+                    <each_steps>10</each_steps>
+                </pair>
+            </timesteps>
+            <output_iteration_results>false</output_iteration_results>
+        </output>
+    </time_loop>
+    <parameters>
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>4.46e-13</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>p0</name>
+            <type>Constant</type>
+            <value>-5000</value>
+        </parameter>
+        <parameter>
+            <name>p_Dirichlet_bottom</name>
+            <type>Constant</type>
+            <value>1000</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>p0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>BOTTOM</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p_Dirichlet_bottom</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>TOP</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>nonlinear_solver</name>
+            <type>Newton</type>
+            <max_iter>50</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+            <!--damping>0.9</damping-->
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0.pvd b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0.pvd
new file mode 100644
index 00000000000..f7cfcc5cff1
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0.pvd
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<VTKFile type="Collection" version="0.1" byte_order="LittleEndian" compressor="vtkZLibDataCompressor">
+  <Collection>
+    <DataSet timestep="0" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu"/>
+    <DataSet timestep="1" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu"/>
+    <DataSet timestep="3" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu"/>
+    <DataSet timestep="5" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu"/>
+    <DataSet timestep="10" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu"/>
+    <DataSet timestep="20" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu"/>
+    <DataSet timestep="40" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu"/>
+    <DataSet timestep="60" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu"/>
+    <DataSet timestep="80" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu"/>
+    <DataSet timestep="100" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_9_t_100.000000.vtu"/>
+    <DataSet timestep="300" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_19_t_300.000000.vtu"/>
+    <DataSet timestep="500" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_29_t_500.000000.vtu"/>
+    <DataSet timestep="700" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_39_t_700.000000.vtu"/>
+    <DataSet timestep="900" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_49_t_900.000000.vtu"/>
+    <DataSet timestep="1100" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_59_t_1100.000000.vtu"/>
+    <DataSet timestep="1300" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_69_t_1300.000000.vtu"/>
+    <DataSet timestep="1500" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_79_t_1500.000000.vtu"/>
+    <DataSet timestep="1700" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_89_t_1700.000000.vtu"/>
+    <DataSet timestep="1900" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_99_t_1900.000000.vtu"/>
+    <DataSet timestep="2000" group="" part="0" file="RichardsFlow_2d_richardsflow_pcs_0_ts_104_t_2000.000000.vtu"/>
+  </Collection>
+</VTKFile>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu
new file mode 100644
index 00000000000..b19829b5b6e
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_0_t_0.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:96769f20272d7566557da54ac1ef2ccbc9bcf7e3e2b4ca5f2821f0742aa6b3d8
+size 3553
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_104_t_2000.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_104_t_2000.000000.vtu
new file mode 100644
index 00000000000..f4191820689
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_104_t_2000.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:76d64903f629e52da96e7d943fedcc2c044e7bc08f8c387a8df2f16404be1dcd
+size 4436
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_19_t_300.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_19_t_300.000000.vtu
new file mode 100644
index 00000000000..0b77a9a13ed
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_19_t_300.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:daf78a1d22e50b7611bebfee726db9afd2086870ca5ff216a162633f8d6c5a0d
+size 4400
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu
new file mode 100644
index 00000000000..988736dfadd
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_1_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d6dced6f1cc2bf217d6ab2764a539ccd4b1071c77d2cfdb72b78f3140c2c968d
+size 4356
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_29_t_500.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_29_t_500.000000.vtu
new file mode 100644
index 00000000000..18e0b86de99
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_29_t_500.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4c9309efeb8e83d4cb3cdab50ab7b346051bc5275ac27a6390f1d1ea2d39498d
+size 4408
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu
new file mode 100644
index 00000000000..452ca23495a
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_2_t_3.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:bc76aa3b0d98be0408762a487d1dd38780cdea69c3a150f98af7c7ac9b9f59c0
+size 4349
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_39_t_700.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_39_t_700.000000.vtu
new file mode 100644
index 00000000000..f11e3136ce7
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_39_t_700.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d14ae755c351bb90fb4b6886aec79f50252a213d896c593fa4fdd6e3cd4f7938
+size 4392
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu
new file mode 100644
index 00000000000..92cfb0662ca
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_3_t_5.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5dfdb85713dcce2eb96887a82a0bca8b89e6029d158347d54df4e08fbdd5ef1f
+size 4340
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_49_t_900.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_49_t_900.000000.vtu
new file mode 100644
index 00000000000..02010bfd57f
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_49_t_900.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:54a5694a8b32f8ab67b62575efc0c4438d53ed1cd45e341f75a9c7c806738d77
+size 4432
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu
new file mode 100644
index 00000000000..506ea4cb954
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_4_t_10.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1a0f44ba22bf92191d76581ba0421170e65b43ff8331e05f49626ea086c5cb09
+size 4321
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_59_t_1100.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_59_t_1100.000000.vtu
new file mode 100644
index 00000000000..2c0836b6bbd
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_59_t_1100.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a92035c138173fd6ae834d2baba07c2cdc02ee2494a70dda9b82b700b20ab91c
+size 4419
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu
new file mode 100644
index 00000000000..e31978c5c18
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_5_t_20.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:43f05733a2f4d00ab1b1c76e2912eb4794a548e02ce3c976ded6518acd04f337
+size 4353
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_69_t_1300.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_69_t_1300.000000.vtu
new file mode 100644
index 00000000000..e6120b2afb8
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_69_t_1300.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2070bd902e5540464694668f28e1ff603f1e32888af5ff137d91e920ee27d17b
+size 4412
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu
new file mode 100644
index 00000000000..21bdfb7eb45
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_6_t_40.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9a47636b35ec91f6e797fdcbd62ffaec8b611ab53a2cb9b7368b9e905d1e4945
+size 4360
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_79_t_1500.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_79_t_1500.000000.vtu
new file mode 100644
index 00000000000..a2826c446f4
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_79_t_1500.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b535818086707da7ad51b302dd91fd9c2afa29c291c14d9a9eadc83a9064bcb9
+size 4404
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu
new file mode 100644
index 00000000000..7972b8b4ac5
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_7_t_60.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:34dcf392066b751997c2e3c620898f7f0a42e104b3a18c2e2ac3a602893c931f
+size 4358
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_89_t_1700.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_89_t_1700.000000.vtu
new file mode 100644
index 00000000000..309478a441f
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_89_t_1700.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cade5dfbb2cf57b1fffc35c0b5ea988f77f0344128a2a0d0675a550ff65f1625
+size 4395
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu
new file mode 100644
index 00000000000..24d286551cf
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_8_t_80.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a5af97d42415efced2ac07b45dd62ab9ba428956c6c75a73a483771d4032ac46
+size 4355
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_99_t_1900.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_99_t_1900.000000.vtu
new file mode 100644
index 00000000000..711f315e6b7
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_99_t_1900.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4a1f667dd2ff0f893be2b57ec4fb56f2a59cbcd7efcd53d01b5f91e98a37048f
+size 4420
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_9_t_100.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_9_t_100.000000.vtu
new file mode 100644
index 00000000000..ca644435a1c
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_richardsflow_pcs_0_ts_9_t_100.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ececdd69c66b0134874206628fec5b72e09cb1d1a42147757d1693c3d2d2d596
+size 4347
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
new file mode 100644
index 00000000000..fb75398ed73
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>Richards_2d.vtu</mesh>
+    <geometry>Richards_2d.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value> 1 </value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value> 1.e-3 </value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value> 0.0 </value>
+                        </storage>
+                    <capillary_pressure>
+                        <type>vanGenuchten</type>
+                        <m>0.789029535864979</m>
+                        <pc_max>36333.30</pc_max>
+                        <pd>3633.33</pd>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </capillary_pressure>
+                    <relative_permeability>
+                        <type>WettingPhaseVanGenuchten</type>
+                        <krel_min>1e-12</krel_min>
+                        <m>0.789029535864979</m>
+                        <smax>0.95</smax>
+                        <sr>0.1689</sr>
+                    </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 -9.81</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>nonlinear_solver</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-7 1e-11 1e-10</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>2000</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>1</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>2</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>5</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>10</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>50</repeat>
+                            <delta_t>20</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>RichardsFlow_2d_small</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>9</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+                <pair>
+                    <repeat>100</repeat>
+                    <each_steps>10</each_steps>
+                </pair>
+            </timesteps>
+            <output_iteration_results>false</output_iteration_results>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>160e300</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>5e9</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.1</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>4.46e-13</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>2.2e300</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>p0</name>
+            <type>Constant</type>
+            <value>-5000</value>
+        </parameter>
+        <parameter>
+            <name>p_Dirichlet_bottom</name>
+            <type>Constant</type>
+            <value>1000</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>LEFT</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>RIGHT</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>BOTTOM</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>TOP</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>p0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>BOTTOM</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p_Dirichlet_bottom</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>Richards_2d_geometry</geometrical_set>
+                    <geometry>TOP</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>nonlinear_solver</name>
+            <type>Newton</type>
+            <max_iter>100</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+            <!--damping>0.9</damping-->
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0.pvd b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0.pvd
new file mode 100644
index 00000000000..81d0bed19be
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0.pvd
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<VTKFile type="Collection" version="0.1" byte_order="LittleEndian" compressor="vtkZLibDataCompressor">
+  <Collection>
+    <DataSet timestep="0" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu"/>
+    <DataSet timestep="1" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu"/>
+    <DataSet timestep="3" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu"/>
+    <DataSet timestep="8" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu"/>
+    <DataSet timestep="18" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu"/>
+    <DataSet timestep="38" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu"/>
+    <DataSet timestep="58" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu"/>
+    <DataSet timestep="78" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu"/>
+    <DataSet timestep="98" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu"/>
+    <DataSet timestep="118" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu"/>
+    <DataSet timestep="318" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_19_t_318.000000.vtu"/>
+    <DataSet timestep="518" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_29_t_518.000000.vtu"/>
+    <DataSet timestep="718" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_39_t_718.000000.vtu"/>
+    <DataSet timestep="918" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_49_t_918.000000.vtu"/>
+    <DataSet timestep="1118" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_59_t_1118.000000.vtu"/>
+    <DataSet timestep="1318" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_69_t_1318.000000.vtu"/>
+    <DataSet timestep="1518" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_79_t_1518.000000.vtu"/>
+    <DataSet timestep="1718" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_89_t_1718.000000.vtu"/>
+    <DataSet timestep="1918" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_99_t_1918.000000.vtu"/>
+    <DataSet timestep="2000" group="" part="0" file="RichardsFlow_2d_small_pcs_0_ts_104_t_2000.000000.vtu"/>
+  </Collection>
+</VTKFile>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu
new file mode 100644
index 00000000000..080b872b8f5
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_0_t_0.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9b777be31f90ab6ab765aa0f75d0ffb288bf905e6a22cd6dab4e9601881e0d2d
+size 7907
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_104_t_2000.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_104_t_2000.000000.vtu
new file mode 100644
index 00000000000..1bc0d62c1ca
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_104_t_2000.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6712e56a933409dab30238242d7ea73f7303012c31fb2f6cef5880dd03da51ab
+size 40439
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_19_t_318.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_19_t_318.000000.vtu
new file mode 100644
index 00000000000..a3ea5cbceb8
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_19_t_318.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f8ad15919d42474e466bb56bf298a0294044c6f8f9168554699f5a32abebdff7
+size 40771
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu
new file mode 100644
index 00000000000..236b96d902f
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_1_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d945de267a2957763e3593bf0207ee5c7086d58d181d6df23b3e8200bad4115b
+size 40139
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_29_t_518.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_29_t_518.000000.vtu
new file mode 100644
index 00000000000..f14803a9dc0
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_29_t_518.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ada9d4d5b1d7f7d84b4a9d244e28cfb0a1623edaf59d385e088a2396c5fb8f2b
+size 40282
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu
new file mode 100644
index 00000000000..b7472fd857e
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_2_t_3.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ee70c0dcf7cf252965f40cee6d3604d8ee7fc47bf4ce072cef66f663ef68cea9
+size 39308
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_39_t_718.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_39_t_718.000000.vtu
new file mode 100644
index 00000000000..f9bda67dbdb
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_39_t_718.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1b7b592b267fd583ac528fb7321edba8f26e1fd14e58942d202d753911cac9f9
+size 40467
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu
new file mode 100644
index 00000000000..1e621e899aa
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_3_t_8.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8388d9daefc0e0edd69fd992201bb32c7afe70f5b815e56e59559b9d5d297751
+size 39796
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_49_t_918.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_49_t_918.000000.vtu
new file mode 100644
index 00000000000..fec7eba0ccd
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_49_t_918.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eb72701046aa78f9719d1c2209d7b2cc39eac2409c37ed50445455b3bb8cf8ab
+size 40463
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu
new file mode 100644
index 00000000000..a587648e6d6
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_4_t_18.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0bb02dc84476c959f044fbfe136a637c6ebdbf10bff61a48023e6ee040b47177
+size 39528
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_59_t_1118.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_59_t_1118.000000.vtu
new file mode 100644
index 00000000000..2296ca62968
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_59_t_1118.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:21ff9bf6479f701c03474482f047d4ff189298bf769f2a8e6fe3409d4278e4b0
+size 41155
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu
new file mode 100644
index 00000000000..5aed7fa73c3
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_5_t_38.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3e17d83929c78459462a6282e9c1fa04accf1faca232dc17e4b5631dd4006986
+size 39900
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_69_t_1318.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_69_t_1318.000000.vtu
new file mode 100644
index 00000000000..b6f5d111bb9
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_69_t_1318.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:39f65cc2000506d12da621a6cf8ea4c3b6fd79f88c6ef9fd37ee208b4e8b53d6
+size 40575
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu
new file mode 100644
index 00000000000..b0a4eb5a7e3
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_6_t_58.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:09abff3b241912ca0adc9b1a8b027f8c4fc019496f4b35e7caa2e4cec431e3f8
+size 40335
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_79_t_1518.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_79_t_1518.000000.vtu
new file mode 100644
index 00000000000..a392faab134
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_79_t_1518.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:323b6efa89483400b93c48ab0b723cb5399cebd26be648b3c471c83584d1e04e
+size 40806
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu
new file mode 100644
index 00000000000..1a8afbedc08
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_7_t_78.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7602b7dbb8ea84b51b2e86ce3688931bad0a02f7e2862117451dc5593344ddb5
+size 40622
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_89_t_1718.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_89_t_1718.000000.vtu
new file mode 100644
index 00000000000..87b9a181831
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_89_t_1718.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d31d9d6f8481319bad0b4ee829b73c721f6f3eb3911ca969310ca2d6ad03e655
+size 40620
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu
new file mode 100644
index 00000000000..0b91f3fbf42
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_8_t_98.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:47249c58b1811a5aa7c2afc62094ea980ac52732f0b694452f78955fb4af3db0
+size 40616
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_99_t_1918.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_99_t_1918.000000.vtu
new file mode 100644
index 00000000000..51f5dc89f5b
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_99_t_1918.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d94176b5141381071f3d498f270c6b42990ce7e8060783f8bbbac3e54c1ac804
+size 41069
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu
new file mode 100644
index 00000000000..73486a6b3c0
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_pcs_0_ts_9_t_118.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d3d53e70c0e6c59b71124ffe1e473577afe734ae3d21547615a31f3e0eb7e2f4
+size 39900
diff --git a/Tests/Data/RichardsMechanics/Richards_2d.gml b/Tests/Data/RichardsMechanics/Richards_2d.gml
new file mode 100644
index 00000000000..efd7d9f4e33
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/Richards_2d.gml
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a525734eb3adb4d268916b37338215b34c1d2b8bd93a1efd4f171927b170aa99
+size 1051
diff --git a/Tests/Data/RichardsMechanics/Richards_2d.vtu b/Tests/Data/RichardsMechanics/Richards_2d.vtu
new file mode 100644
index 00000000000..0a31e076ef7
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/Richards_2d.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:405f01ad621f8d0e155f61149f15afc5df6ad8fcd32712e47f4260653ecae17e
+size 24285
diff --git a/Tests/Data/RichardsMechanics/Richards_2d_linear.vtu b/Tests/Data/RichardsMechanics/Richards_2d_linear.vtu
new file mode 100644
index 00000000000..20a51b9c3ab
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/Richards_2d_linear.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:61be324bb28dfe4b9585eaf71b7f118af9bac58b2b24260f7965b7153113a491
+size 3481
diff --git a/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
new file mode 100644
index 00000000000..bad95d5a085
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>square_1x1_quad8_1e2.vtu</mesh>
+    <geometry>square_1x1.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <!--KEEP FOR TESTING
+            <jacobian_assembler>
+                <type>CentralDifferences</type>
+                <component_magnitudes>1e5 1e5 1e5 1e5 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2</component_magnitudes>
+                <relative_epsilons>1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8</relative_epsilons>
+            </jacobian_assembler>
+            -->
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value>1e-6</value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value>1e-9</value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value>1e+300</value>
+                        </storage>
+                        <capillary_pressure>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>1 0.98684211 0.97368421 0.96052632 0.94894737 0.92105263 0.89473684 0.86842105 0.84210526 0.81578947 0.78947368 0.65789474 0.63157895 0.57894737 0.52631579 0.39473684 0.26315789
+                                </coords>
+                                <values>1421.99634 1707.55369 2050.45507 2462.21599 2892.29884 3232.80969 3590.71602 3988.24638 4429.78757 4920.21206 5464.93174 9238.24221 10261.0136 12658.7874 15616.8683 26399.6732 44627.5611
+                                </values>
+                            </curve>
+                        </capillary_pressure>
+                        <relative_permeability>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>0.26315789 0.39473684 0.52631579 0.57894737 0.63157895 0.65789474 0.78947368 0.81578947 0.84210526 0.86842105 0.89473684 0.92105263 0.94894737 0.96052632 0.97368421 0.98684211 1
+                                    </coords>
+                                <values>4.43E-05 0.00026547 0.00159003 0.00325358 0.00665757 0.00952343 0.05704014 0.08159396 0.11671736 0.16696017 0.23883078 0.34163922 0.49931406 0.58449912 0.69907308 0.8361059 1
+                                    </values>
+                            </curve>
+                        </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 0</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>basic_newton</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-8 1e-11 1e-8</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>4000</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>40</repeat>
+                            <delta_t>5</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>10</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>confined_compression_fully_saturated</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>10000</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+                <pair>
+                    <repeat>1</repeat>
+                    <each_steps>19</each_steps>
+                </pair>
+                <pair>
+                    <repeat>1</repeat>
+                    <each_steps>100</each_steps>
+                </pair>
+                <pair>
+                    <repeat>1</repeat>
+                    <each_steps>300</each_steps>
+                </pair>
+            </timesteps>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.1</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>1e-12</value>
+        </parameter>
+        <parameter>
+            <name>mu</name>
+            <type>Constant</type>
+            <value>1e-9</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1.2e-6</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>pressure_ic</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>p_neumann</name>
+            <type>Constant</type>
+            <values>1</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>dirichlet1</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>displacementTop</name>
+            <type>Constant</type>
+            <value>-0.05</value>
+        </parameter>
+        <parameter>
+            <name>displacementRamp</name>
+            <type>CurveScaled</type>
+            <curve>timeRamp</curve>
+            <parameter>displacementTop</parameter>
+        </parameter>
+    </parameters>
+    <curves>
+        <curve>
+            <name>timeRamp</name>
+            <coords>0 100 10000</coords>
+            <values>0 1   1</values>
+        </curve>
+    </curves>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>left</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>right</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>bottom</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>top</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>displacementRamp</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>pressure_ic</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>top</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>basic_newton</name>
+            <type>Newton</type>
+            <max_iter>50</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated.prj b/Tests/Data/RichardsMechanics/flow_fully_saturated.prj
new file mode 100644
index 00000000000..c118cf6e181
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated.prj
@@ -0,0 +1,279 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>square_1x1_quad8_1e2.vtu</mesh>
+    <geometry>square_1x1.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value>1</value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value>1e-9</value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value>1e+300</value>
+                        </storage>
+                        <capillary_pressure>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>1 0.98684211 0.97368421 0.96052632 0.94894737 0.92105263 0.89473684 0.86842105 0.84210526 0.81578947 0.78947368 0.65789474 0.63157895 0.57894737 0.52631579 0.39473684 0.26315789
+                                </coords>
+                                <values>1421.99634 1707.55369 2050.45507 2462.21599 2892.29884 3232.80969 3590.71602 3988.24638 4429.78757 4920.21206 5464.93174 9238.24221 10261.0136 12658.7874 15616.8683 26399.6732 44627.5611
+                                </values>
+                            </curve>
+                        </capillary_pressure>
+                        <relative_permeability>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>0.26315789 0.39473684 0.52631579 0.57894737 0.63157895 0.65789474 0.78947368 0.81578947 0.84210526 0.86842105 0.89473684 0.92105263 0.94894737 0.96052632 0.97368421 0.98684211 1
+                                    </coords>
+                                <values>4.43E-05 0.00026547 0.00159003 0.00325358 0.00665757 0.00952343 0.05704014 0.08159396 0.11671736 0.16696017 0.23883078 0.34163922 0.49931406 0.58449912 0.69907308 0.8361059 1
+                                    </values>
+                            </curve>
+                        </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 0</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>basic_newton</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-14 1e-16 1e-16</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>2</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>2</repeat>
+                            <delta_t>1</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>flow_fully_saturated</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>10000</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+            </timesteps>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>1e10</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.3</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>1e-12</value>
+        </parameter>
+        <parameter>
+            <name>mu</name>
+            <type>Constant</type>
+            <value>1e-9</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>pressure_ic</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>dirichlet1</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>left</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>right</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>bottom</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>top</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>pressure_ic</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>left</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>right</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>dirichlet1</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>basic_newton</name>
+            <type>Newton</type>
+            <max_iter>50</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_1_t_1.000000.vtu b/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_1_t_1.000000.vtu
new file mode 100644
index 00000000000..84fe15f2811
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_1_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a2d099e4aa6fc6f991ce3b551f959e4786455fef7334a03f2881dc32bebd59d8
+size 33199
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_2_t_2.000000.vtu b/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_2_t_2.000000.vtu
new file mode 100644
index 00000000000..21d83ee03b8
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated_pcs_0_ts_2_t_2.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7c8d465ad05f1f36c9e3d47cc514a569baefa2515ddf8b6ef9ad4bc6177c97f8
+size 33205
diff --git a/Tests/Data/RichardsMechanics/gravity.prj b/Tests/Data/RichardsMechanics/gravity.prj
new file mode 100644
index 00000000000..66b38037f1b
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity.prj
@@ -0,0 +1,284 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<OpenGeoSysProject>
+    <mesh>square_1x1_quad8_1e2.vtu</mesh>
+    <geometry>square_1x1.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <!--
+            <jacobian_assembler>
+                <type>CentralDifferences</type>
+                <component_magnitudes>1e5 1e5 1e5 1e5 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6 1e-6</component_magnitudes>
+                <relative_epsilons>1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8</relative_epsilons>
+            </jacobian_assembler>
+            -->
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value> 1.e3 </value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value> 1.e-3 </value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>kappa1</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value> 0.0 </value>
+                        </storage>
+                    <capillary_pressure>
+                        <type>vanGenuchten</type>
+                        <m>0.789029535864979</m>
+                        <pc_max>36333.30</pc_max>
+                        <pd>3633.33</pd>
+                        <smax>0.99</smax>
+                        <sr>0.01</sr>
+                    </capillary_pressure>
+                    <relative_permeability>
+                        <type>WettingPhaseVanGenuchten</type>
+                        <krel_min>1e-12</krel_min>
+                        <m>0.789029535864979</m>
+                        <smax>0.99</smax>
+                        <sr>0.01</sr>
+                    </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 -9.81</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>nonlinear_solver</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-10 1e-16 1e-16</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>10</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>0.001</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>0.009</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>9</repeat>
+                            <delta_t>0.01</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>9</repeat>
+                            <delta_t>0.1</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>4</repeat>
+                            <delta_t>1</delta_t>
+                        </pair>
+                        <pair>
+                            <repeat>1</repeat>
+                            <delta_t>5</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>gravity</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>100000</repeat>
+                    <each_steps>1</each_steps>
+                </pair>
+            </timesteps>
+            <output_iteration_results>false</output_iteration_results>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>100e9</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>1e9</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.3</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>1e-12</value>
+        </parameter>
+        <parameter>
+            <name>mu</name>
+            <type>Constant</type>
+            <value>1e-3</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1e3</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>2.2e9</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>kappa1</name>
+            <type>Constant</type>
+            <values>4.46e-13</values>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>p0</name>
+            <type>Constant</type>
+            <value>10000</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>origin</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>bottom</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>p0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>bottom</geometry>
+                    <type>Dirichlet</type>
+                    <parameter>p0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>nonlinear_solver</name>
+            <type>Newton</type>
+            <max_iter>30</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_10_t_0.090000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_10_t_0.090000.vtu
new file mode 100644
index 00000000000..2d744efc585
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_10_t_0.090000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e738355ad8029276ff12226d913d263d064a770a52dae15cb737a35cd923830f
+size 36991
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_11_t_0.100000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_11_t_0.100000.vtu
new file mode 100644
index 00000000000..1e49423e371
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_11_t_0.100000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1d289ef4df48705d81466298e5761b5e5896fbe6d364b0d638d161cceaa82f0d
+size 37173
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_12_t_0.200000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_12_t_0.200000.vtu
new file mode 100644
index 00000000000..e60b731f470
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_12_t_0.200000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ba00bae64c8bef68b0dd34995623b9332c182e00b8f25538e44b536a369daa64
+size 37185
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_13_t_0.300000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_13_t_0.300000.vtu
new file mode 100644
index 00000000000..30be7a07818
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_13_t_0.300000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eca1e8c9200a813810c6bf586ebbe8eb8c8f504b9e1dce069339e9ac3c5decd9
+size 37420
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_14_t_0.400000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_14_t_0.400000.vtu
new file mode 100644
index 00000000000..4064aec9977
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_14_t_0.400000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0cb8ec2511f5c59e8ed5f470badf50ba9f375fa8bbe3b5b06827776c8907d452
+size 37517
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_15_t_0.500000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_15_t_0.500000.vtu
new file mode 100644
index 00000000000..2eca66f64c9
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_15_t_0.500000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cbd104e80d0271e07c770901ecee42815e8d458a8ed5f1aca9ab94cb1ce4a26a
+size 37312
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_16_t_0.600000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_16_t_0.600000.vtu
new file mode 100644
index 00000000000..c44bf16576a
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_16_t_0.600000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b216a078044c122de5e62e0f687b19e255466bf3b43f9bf85602b78faf3db09e
+size 37477
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_17_t_0.700000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_17_t_0.700000.vtu
new file mode 100644
index 00000000000..55f63957bfb
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_17_t_0.700000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c505bdb081fd8e3eeb8fb59dbb83f11a2d41d086c9b23bd2b11129a5746ce88d
+size 37476
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_18_t_0.800000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_18_t_0.800000.vtu
new file mode 100644
index 00000000000..30ebedf6cff
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_18_t_0.800000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d2add5a3640b29a07d72e18446607060dd9ab3b96367dc936e9a2aa96f78bfbf
+size 37349
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_19_t_0.900000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_19_t_0.900000.vtu
new file mode 100644
index 00000000000..181de625003
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_19_t_0.900000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1c27b190c3242cba97ec2b1514700db08630d7a106c9586ab637169769b67a9a
+size 37489
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_1_t_0.001000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_1_t_0.001000.vtu
new file mode 100644
index 00000000000..fed10c20e53
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_1_t_0.001000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:352971b2bf4eda3505b7f9bb8428db36327de3daf34c6856bab269281f999c47
+size 36432
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_20_t_1.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_20_t_1.000000.vtu
new file mode 100644
index 00000000000..6c6b9610adf
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_20_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:bc71065713974241a7c4ab242041f4be7d5f426579f3438b2a7d6107071955b2
+size 37329
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_21_t_2.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_21_t_2.000000.vtu
new file mode 100644
index 00000000000..77abcce1fc8
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_21_t_2.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:54b1bc91697798bfe33dfa729143788d97f388f1d10c179ef39186d05dcb906b
+size 37613
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_22_t_3.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_22_t_3.000000.vtu
new file mode 100644
index 00000000000..4608a0df06c
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_22_t_3.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9cb45e2fc37a272709f63d7af318ecde52c8bf2c4e6d5382fb89650b7f394bd3
+size 37433
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_23_t_4.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_23_t_4.000000.vtu
new file mode 100644
index 00000000000..8a4de495e00
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_23_t_4.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1a9d250ea810026c586bbae461c95e2c5a2089ddf9187eb1fb4351d659d607fe
+size 37552
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_24_t_5.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_24_t_5.000000.vtu
new file mode 100644
index 00000000000..d3138967107
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_24_t_5.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5cdf7a044def25f57b4d70faac6e4d2e0e4da75e405279794c60767712c1c295
+size 37836
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_25_t_10.000000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_25_t_10.000000.vtu
new file mode 100644
index 00000000000..ff5d241f8c9
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_25_t_10.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1018dabfa45ce747a677b721cefb72f91fa28059a2aa796f6a462d0e7715a3ee
+size 37814
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_2_t_0.010000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_2_t_0.010000.vtu
new file mode 100644
index 00000000000..7954380c3d2
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_2_t_0.010000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3be7f623a3a55ad964caabd06b0196afd6017794baecd25501e247c38cd81464
+size 37117
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_3_t_0.020000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_3_t_0.020000.vtu
new file mode 100644
index 00000000000..4ffd56a8e0a
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_3_t_0.020000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3f3dd8e18da7310a22771df7fa0eea56111a4c827b2616eafdec37b6834dc3f3
+size 36863
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_4_t_0.030000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_4_t_0.030000.vtu
new file mode 100644
index 00000000000..5f9657b3282
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_4_t_0.030000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d7f42e75acb83f7578c7d9f28472a9ae0d6747b5545a7e7069c7244c80810271
+size 36997
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_5_t_0.040000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_5_t_0.040000.vtu
new file mode 100644
index 00000000000..23caf1b79b4
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_5_t_0.040000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ad4b65ebb50a39f46a36b7334ba86a70d7816ddac3f2d4b644e2b937efd0bae8
+size 37133
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_6_t_0.050000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_6_t_0.050000.vtu
new file mode 100644
index 00000000000..0169f56c046
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_6_t_0.050000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0993267632b665dd5daf94302affdbace457bca86480e589a89e4619defbfcbb
+size 37109
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_7_t_0.060000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_7_t_0.060000.vtu
new file mode 100644
index 00000000000..739d020cd45
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_7_t_0.060000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:89f36b606a65e36c13b9cb86d5e33d40910f76a4a44cd23713a54038d04f6608
+size 37064
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_8_t_0.070000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_8_t_0.070000.vtu
new file mode 100644
index 00000000000..cc907a96b83
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_8_t_0.070000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e39a1367e4ef754c0588aad51290d8bd4e67ab5ad134c4945ef73d18fbf0cfe
+size 37133
diff --git a/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_9_t_0.080000.vtu b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_9_t_0.080000.vtu
new file mode 100644
index 00000000000..60f66349716
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/gravity_pcs_0_ts_9_t_0.080000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:067dc4a7f63dfafd2e2b00ff62f320aa5140f69ef670fd945da183e30d0226ee
+size 37260
diff --git a/Tests/Data/RichardsMechanics/mechanics_linear.prj b/Tests/Data/RichardsMechanics/mechanics_linear.prj
new file mode 100644
index 00000000000..6d0e8ae8c35
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/mechanics_linear.prj
@@ -0,0 +1,280 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+    Mechanics setup identical to Mechanics/Linear/square_1e2.prj.
+    No flow and no coupling between pressure and displacement.
+    Solved on quad8 mesh because of the process requirements for order of
+    pressure being one lower then the order of displacement.
+-->
+<OpenGeoSysProject>
+    <mesh>square_1x1_quad8_1e2.vtu</mesh>
+    <geometry>square_1x1.gml</geometry>
+    <processes>
+        <process>
+            <name>RM</name>
+            <type>RICHARDS_MECHANICS</type>
+            <integration_order>3</integration_order>
+            <dimension>2</dimension>
+            <!--KEEP FOR TESTING
+            <jacobian_assembler>
+                <type>CentralDifferences</type>
+                <component_magnitudes>1e5 1e5 1e5 1e5 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2 1e-2</component_magnitudes>
+                <relative_epsilons>1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8 1e-8</relative_epsilons>
+            </jacobian_assembler>
+            -->
+            <constitutive_relation>
+                <type>LinearElasticIsotropic</type>
+                <youngs_modulus>E</youngs_modulus>
+                <poissons_ratio>nu</poissons_ratio>
+            </constitutive_relation>
+            <intrinsic_permeability>k</intrinsic_permeability>
+            <solid_bulk_modulus>K_SR</solid_bulk_modulus>
+            <fluid_bulk_modulus>K_LR</fluid_bulk_modulus>
+            <biot_coefficient>alpha</biot_coefficient>
+            <solid_density>rho_sr</solid_density>
+            <process_variables>
+                <displacement>displacement</displacement>
+                <pressure>pressure</pressure>
+            </process_variables>
+            <material_property>
+                <fluid>
+                    <density>
+                        <type>Constant</type>
+                        <value>1e-6</value>
+                    </density>
+                    <viscosity>
+                        <type>Constant</type>
+                        <value>1e-9</value>
+                    </viscosity>
+                </fluid>
+                <porous_medium>
+                    <porous_medium id="0">
+                        <permeability>
+                            <permeability_tensor_entries>k</permeability_tensor_entries>
+                            <type>Constant</type>
+                        </permeability>
+                        <porosity>
+                            <type>Constant</type>
+                            <porosity_parameter>phi</porosity_parameter>
+                        </porosity>
+                        <storage>
+                            <type>Constant</type>
+                            <value>1e+300</value>
+                        </storage>
+                        <capillary_pressure>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>1 0.98684211 0.97368421 0.96052632 0.94894737 0.92105263 0.89473684 0.86842105 0.84210526 0.81578947 0.78947368 0.65789474 0.63157895 0.57894737 0.52631579 0.39473684 0.26315789
+                                </coords>
+                                <values>1421.99634 1707.55369 2050.45507 2462.21599 2892.29884 3232.80969 3590.71602 3988.24638 4429.78757 4920.21206 5464.93174 9238.24221 10261.0136 12658.7874 15616.8683 26399.6732 44627.5611
+                                </values>
+                            </curve>
+                        </capillary_pressure>
+                        <relative_permeability>
+                            <type>Curve</type>
+                            <curve>
+                                <coords>0.26315789 0.39473684 0.52631579 0.57894737 0.63157895 0.65789474 0.78947368 0.81578947 0.84210526 0.86842105 0.89473684 0.92105263 0.94894737 0.96052632 0.97368421 0.98684211 1
+                                    </coords>
+                                <values>4.43E-05 0.00026547 0.00159003 0.00325358 0.00665757 0.00952343 0.05704014 0.08159396 0.11671736 0.16696017 0.23883078 0.34163922 0.49931406 0.58449912 0.69907308 0.8361059 1
+                                    </values>
+                            </curve>
+                        </relative_permeability>
+                    </porous_medium>
+                </porous_medium>
+            </material_property>
+            <secondary_variables>
+                <secondary_variable type="static" internal_name="sigma" output_name="sigma"/>
+                <secondary_variable type="static" internal_name="epsilon" output_name="epsilon"/>
+                <secondary_variable type="static" internal_name="velocity" output_name="velocity"/>
+                <secondary_variable type="static" internal_name="saturation" output_name="saturation"/>
+            </secondary_variables>
+            <specific_body_force>0 0</specific_body_force>
+            <temperature> temp </temperature>
+        </process>
+    </processes>
+    <time_loop>
+        <processes>
+            <process ref="RM">
+                <nonlinear_solver>basic_newton</nonlinear_solver>
+                <convergence_criterion>
+                    <type>PerComponentDeltaX</type>
+                    <norm_type>NORM2</norm_type>
+                    <abstols>1e-14 1e-14 1e-14</abstols>
+                </convergence_criterion>
+                <time_discretization>
+                    <type>BackwardEuler</type>
+                </time_discretization>
+                <output>
+                    <variables>
+                        <variable>displacement</variable>
+                        <variable>pressure</variable>
+                        <variable>sigma</variable>
+                        <variable>epsilon</variable>
+                        <variable>velocity</variable>
+                        <variable>saturation</variable>
+                    </variables>
+                </output>
+                <time_stepping>
+                    <type>FixedTimeStepping</type>
+                    <t_initial>0</t_initial>
+                    <t_end>1</t_end>
+                    <timesteps>
+                        <pair>
+                            <repeat>4</repeat>
+                            <delta_t>0.25</delta_t>
+                        </pair>
+                    </timesteps>
+                </time_stepping>
+            </process>
+        </processes>
+        <output>
+            <type>VTK</type>
+            <prefix>mechanics_linear</prefix>
+            <timesteps>
+                <pair>
+                    <repeat>1</repeat>
+                    <each_steps>10000000</each_steps>
+                </pair>
+            </timesteps>
+        </output>
+    </time_loop>
+    <parameters>
+        <!-- Mechanics -->
+        <parameter>
+            <name>K_SR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>E</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>nu</name>
+            <type>Constant</type>
+            <value>.3</value>
+        </parameter>
+        <!-- Model parameters -->
+        <parameter>
+            <name>k</name>
+            <type>Constant</type>
+            <value>1e-100</value>
+        </parameter>
+        <parameter>
+            <name>mu</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>alpha</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>phi</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>rho_sr</name>
+            <type>Constant</type>
+            <value>1</value>
+        </parameter>
+        <parameter>
+            <name>K_LR</name>
+            <type>Constant</type>
+            <value>1e100</value>
+        </parameter>
+        <parameter>
+            <name>temp</name>
+            <type>Constant</type>
+            <value>293.15</value>
+        </parameter>
+        <parameter>
+            <name>displacement0</name>
+            <type>Constant</type>
+            <values>0 0</values>
+        </parameter>
+        <parameter>
+            <name>pressure_ic</name>
+            <type>Constant</type>
+            <values>0</values>
+        </parameter>
+        <parameter>
+            <name>dirichlet0</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
+        <parameter>
+            <name>dirichlet1</name>
+            <type>Constant</type>
+            <value>0.05</value>
+        </parameter>
+    </parameters>
+    <process_variables>
+        <process_variable>
+            <name>displacement</name>
+            <components>2</components>
+            <order>2</order>
+            <initial_condition>displacement0</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>left</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>bottom</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>top</geometry>
+                    <type>Dirichlet</type>
+                    <component>1</component>
+                    <parameter>dirichlet1</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+        <process_variable>
+            <name>pressure</name>
+            <components>1</components>
+            <order>1</order>
+            <initial_condition>pressure_ic</initial_condition>
+            <boundary_conditions>
+                <boundary_condition>
+                    <geometrical_set>square_1x1_geometry</geometrical_set>
+                    <geometry>top</geometry>
+                    <type>Dirichlet</type>
+                    <component>0</component>
+                    <parameter>dirichlet0</parameter>
+                </boundary_condition>
+            </boundary_conditions>
+        </process_variable>
+    </process_variables>
+    <nonlinear_solvers>
+        <nonlinear_solver>
+            <name>basic_newton</name>
+            <type>Newton</type>
+            <max_iter>50</max_iter>
+            <linear_solver>general_linear_solver</linear_solver>
+        </nonlinear_solver>
+    </nonlinear_solvers>
+    <linear_solvers>
+        <linear_solver>
+            <name>general_linear_solver</name>
+            <eigen>
+                <solver_type>SparseLU</solver_type>
+                <scaling>true</scaling>
+                <!--
+                <solver_type>PardisoLU</solver_type>
+                -->
+            </eigen>
+        </linear_solver>
+    </linear_solvers>
+</OpenGeoSysProject>
diff --git a/Tests/Data/RichardsMechanics/mechanics_linear_pcs_0_ts_4_t_1.000000.vtu b/Tests/Data/RichardsMechanics/mechanics_linear_pcs_0_ts_4_t_1.000000.vtu
new file mode 100644
index 00000000000..d13248f31ad
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/mechanics_linear_pcs_0_ts_4_t_1.000000.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:48a94ada6a33db19928e6de1c01411d700644806d1291d19a7760bb270576ed5
+size 27006
diff --git a/Tests/Data/RichardsMechanics/square_1x1.gml b/Tests/Data/RichardsMechanics/square_1x1.gml
new file mode 100644
index 00000000000..9bcf4b145b5
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/square_1x1.gml
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e057b38676a4422f8641b71d58d93f8bacb2084c86f61ce925a61d3de9bf1ae
+size 1032
diff --git a/Tests/Data/RichardsMechanics/square_1x1_quad8_1e0.vtu b/Tests/Data/RichardsMechanics/square_1x1_quad8_1e0.vtu
new file mode 100644
index 00000000000..86023ad6f33
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/square_1x1_quad8_1e0.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:88f426707340467e8514cacf8a184b730135bb27cb57face39d46364806d55b4
+size 1411
diff --git a/Tests/Data/RichardsMechanics/square_1x1_quad8_1e2.vtu b/Tests/Data/RichardsMechanics/square_1x1_quad8_1e2.vtu
new file mode 100644
index 00000000000..9916f8388c7
--- /dev/null
+++ b/Tests/Data/RichardsMechanics/square_1x1_quad8_1e2.vtu
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:202039a669d71a8169147fcb979dd1498e1a5f46fb10435b1bc05cb16cdc392a
+size 4816
-- 
GitLab