diff --git a/Tests/Data/RichardsMechanics/LiakopoulosHM/liakopoulos.prj b/Tests/Data/RichardsMechanics/LiakopoulosHM/liakopoulos.prj
index 9259d88c9758695f5525787b42bbdbd903e2244e..fbebf6b2411752a54b78c5c3d73c6a410b580c44 100644
--- a/Tests/Data/RichardsMechanics/LiakopoulosHM/liakopoulos.prj
+++ b/Tests/Data/RichardsMechanics/LiakopoulosHM/liakopoulos.prj
@@ -76,8 +76,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.2975</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -202,6 +204,11 @@
             <type>Constant</type>
             <value>0.4</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.2975</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement_ic</name>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
index a278c0dd627c7b1ac5a210b4f0e8853822e031d9..8579fe3fc00ab35098aeed40ce025f611b7f0ecb 100644
--- a/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_quasinewton.prj
@@ -69,8 +69,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.38</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -193,6 +195,11 @@
             <type>Constant</type>
             <value>.1</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
index 3452ad99e507fe58484a0d4479fc720a5adf7578..4433a08499d8413eee6b76288ddf7c6223e71a50 100644
--- a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.38</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -193,6 +195,11 @@
             <type>Constant</type>
             <value>.1</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_masslumping.prj b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_masslumping.prj
index 8e8d5f9358d05250cdc1dd8b6b2f53ea1eafa49a..2c707d8bb9f35aa63ef8ea00da23efb2b0e9bf31 100644
--- a/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_masslumping.prj
+++ b/Tests/Data/RichardsMechanics/RichardsFlow_2d_small_masslumping.prj
@@ -65,8 +65,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.38</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>storage</name>
@@ -189,6 +191,11 @@
             <type>Constant</type>
             <value>.1</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.38</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/alternative_mass_balance_anzInterval_10.prj b/Tests/Data/RichardsMechanics/alternative_mass_balance_anzInterval_10.prj
index 4b2727f622b137cd3b44e8a3bc7286c211463db1..301ddf084c69a6f216c3a6883f7ac19250757efe 100644
--- a/Tests/Data/RichardsMechanics/alternative_mass_balance_anzInterval_10.prj
+++ b/Tests/Data/RichardsMechanics/alternative_mass_balance_anzInterval_10.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -162,6 +164,11 @@
             <type>Constant</type>
             <value>0.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement_ic</name>
diff --git a/Tests/Data/RichardsMechanics/bishops_effective_stress_power_law.prj b/Tests/Data/RichardsMechanics/bishops_effective_stress_power_law.prj
index 06a955c85e701380e7e88fd55e270d5940cd585a..c3ceb4a3116d7e359a0d3f4e9547011e74f77a09 100644
--- a/Tests/Data/RichardsMechanics/bishops_effective_stress_power_law.prj
+++ b/Tests/Data/RichardsMechanics/bishops_effective_stress_power_law.prj
@@ -72,8 +72,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -197,6 +199,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/bishops_effective_stress_saturation_cutoff.prj b/Tests/Data/RichardsMechanics/bishops_effective_stress_saturation_cutoff.prj
index 4448650073ab5b30cb8db456c1de7c2fe90c6fb4..57b3172df6efd25f65b3dd1a926c45a27c92c179 100644
--- a/Tests/Data/RichardsMechanics/bishops_effective_stress_saturation_cutoff.prj
+++ b/Tests/Data/RichardsMechanics/bishops_effective_stress_saturation_cutoff.prj
@@ -72,8 +72,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -197,6 +199,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
index f2b727480b80288e1ddaea7d918fadd1399c10b2..33556c35af8731a0b174ff02d198e62131327abc 100644
--- a/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
+++ b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated.prj
@@ -71,8 +71,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -184,6 +186,11 @@
             <type>Constant</type>
             <value>.1</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/confined_compression_fully_saturated_restart.prj b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated_restart.prj
index 11bff8e6d85f147fcd10dc23164ed12892cef555..041cc2e6bee8d304dfee4b94e44fddd5fd0332d0 100644
--- a/Tests/Data/RichardsMechanics/confined_compression_fully_saturated_restart.prj
+++ b/Tests/Data/RichardsMechanics/confined_compression_fully_saturated_restart.prj
@@ -71,8 +71,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -176,6 +178,11 @@
             <type>Constant</type>
             <value>.1</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/deformation_dependent_porosity_swelling.prj b/Tests/Data/RichardsMechanics/deformation_dependent_porosity_swelling.prj
index cecf76c97aa55de442577645797395a04063b123..9c05210a5381635fbc0964bab54d8edfe30cfc33 100644
--- a/Tests/Data/RichardsMechanics/deformation_dependent_porosity_swelling.prj
+++ b/Tests/Data/RichardsMechanics/deformation_dependent_porosity_swelling.prj
@@ -84,8 +84,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>transport_porosity</name>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated.prj b/Tests/Data/RichardsMechanics/flow_fully_saturated.prj
index e1194d788804b2d772f0b7ba720d44192caa6029..53df7edee1559243dab572c89c93c1bc495f6768 100644
--- a/Tests/Data/RichardsMechanics/flow_fully_saturated.prj
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>storage</name>
@@ -161,6 +163,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated_anisotropic.prj b/Tests/Data/RichardsMechanics/flow_fully_saturated_anisotropic.prj
index c01f178ac4c8aea48f2472847ef397fe9c8c0f6e..15f5e39d5aab2bdcd3f383ec649269c192dcc1e5 100644
--- a/Tests/Data/RichardsMechanics/flow_fully_saturated_anisotropic.prj
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated_anisotropic.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -161,6 +163,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated_coordinate_system.prj b/Tests/Data/RichardsMechanics/flow_fully_saturated_coordinate_system.prj
index 2dd7e31942aec4689bb4b6fac32ed219ff3c7fd7..95bf6e469ff4cc33bdde12994089ec81904b3a9c 100644
--- a/Tests/Data/RichardsMechanics/flow_fully_saturated_coordinate_system.prj
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated_coordinate_system.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -175,6 +177,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>k</name>
diff --git a/Tests/Data/RichardsMechanics/flow_fully_saturated_linear.prj b/Tests/Data/RichardsMechanics/flow_fully_saturated_linear.prj
index 61bee1ef857ddb250f784eaae446fa89b332a7b5..fc65c7ee0066f02f1992c058716196da45a1d8c9 100644
--- a/Tests/Data/RichardsMechanics/flow_fully_saturated_linear.prj
+++ b/Tests/Data/RichardsMechanics/flow_fully_saturated_linear.prj
@@ -64,8 +64,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.8</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>storage</name>
@@ -161,6 +163,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.8</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/gravity.prj b/Tests/Data/RichardsMechanics/gravity.prj
index adc5279e71d85b4cc6c61f18189b84fae20930ac..602940fff60ac94c04fbf9ea8f212bc408b4fa4f 100644
--- a/Tests/Data/RichardsMechanics/gravity.prj
+++ b/Tests/Data/RichardsMechanics/gravity.prj
@@ -71,8 +71,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -195,6 +197,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/mechanics_linear.prj b/Tests/Data/RichardsMechanics/mechanics_linear.prj
index 2bf07665d2278310a6c3ed121010d74dbedaeee2..3207747880d496c883e608d9402615ea65a88634 100644
--- a/Tests/Data/RichardsMechanics/mechanics_linear.prj
+++ b/Tests/Data/RichardsMechanics/mechanics_linear.prj
@@ -77,8 +77,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -169,6 +171,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>mu</name>
diff --git a/Tests/Data/RichardsMechanics/orthotropic_swelling_xy.prj b/Tests/Data/RichardsMechanics/orthotropic_swelling_xy.prj
index b6abe0de8893d8b1af8d087708533c7f6506781e..e7343ff0581d7f4b9f7f9decffea444b4e83493b 100644
--- a/Tests/Data/RichardsMechanics/orthotropic_swelling_xy.prj
+++ b/Tests/Data/RichardsMechanics/orthotropic_swelling_xy.prj
@@ -73,8 +73,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -201,6 +203,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/orthotropic_swelling_xyz.prj b/Tests/Data/RichardsMechanics/orthotropic_swelling_xyz.prj
index c490a61f996c42e3fd159b5f4df02927c5d0a3f4..b0c09749857bccdf6aa4e82ea21382af02660a6d 100644
--- a/Tests/Data/RichardsMechanics/orthotropic_swelling_xyz.prj
+++ b/Tests/Data/RichardsMechanics/orthotropic_swelling_xyz.prj
@@ -73,8 +73,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.5</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                         <property>
                             <name>permeability</name>
@@ -207,6 +209,11 @@
             <type>Constant</type>
             <value>.3</value>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.5</value>
+        </parameter>
         <!-- Model parameters -->
         <parameter>
             <name>displacement0</name>
diff --git a/Tests/Data/RichardsMechanics/rotated_consolidation.prj b/Tests/Data/RichardsMechanics/rotated_consolidation.prj
index cb30b312c7e553e1d8293d6e7ddfb7c5a780d520..1310ea0f5ac9cae8b56c9bb807b79774a2345c21 100644
--- a/Tests/Data/RichardsMechanics/rotated_consolidation.prj
+++ b/Tests/Data/RichardsMechanics/rotated_consolidation.prj
@@ -102,8 +102,10 @@
                         </property>
                         <property>
                             <name>porosity</name>
-                            <type>Constant</type>
-                            <value>0.4</value>
+                            <type>PorosityFromMassBalance</type>
+                            <initial_porosity>phi0</initial_porosity>
+                            <minimal_porosity>0</minimal_porosity>
+                            <maximal_porosity>1</maximal_porosity>
                         </property>
                     </properties>
                 </phase>
@@ -228,6 +230,11 @@
             <type>Constant</type>
             <values>.0 .0 .0</values>
         </parameter>
+        <parameter>
+            <name>phi0</name>
+            <type>Constant</type>
+            <value>0.4</value>
+        </parameter>
         <parameter>
             <name>displacement0</name>
             <type>Constant</type>