diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/resetPhiPatches.H b/applications/solvers/incompressible/potentialFreeSurfaceFoam/resetPhiPatches.H
deleted file mode 100644
index fe428b6e3bf606c25bacd523196415f6ff618a45..0000000000000000000000000000000000000000
--- a/applications/solvers/incompressible/potentialFreeSurfaceFoam/resetPhiPatches.H
+++ /dev/null
@@ -1,8 +0,0 @@
-FieldField<fvsPatchField, scalar>& phibf = phi.boundaryField();
-const FieldField<fvPatchField, vector>& Ubf = U.boundaryField();
-const FieldField<fvsPatchField, vector>& Sfbf = mesh.Sf().boundaryField();
-
-forAll(phibf, patchI)
-{
-    phibf[patchI] = (Ubf[patchI] & Sfbf[patchI]);
-}
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/Make/files b/applications/solvers/multiphase/potentialFreeSurfaceFoam/Make/files
similarity index 100%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/Make/files
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/Make/files
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/Make/options b/applications/solvers/multiphase/potentialFreeSurfaceFoam/Make/options
similarity index 100%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/Make/options
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/Make/options
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/UEqn.H b/applications/solvers/multiphase/potentialFreeSurfaceFoam/UEqn.H
similarity index 100%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/UEqn.H
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/UEqn.H
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/createFields.H b/applications/solvers/multiphase/potentialFreeSurfaceFoam/createFields.H
similarity index 100%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/createFields.H
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/createFields.H
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/pEqn.H b/applications/solvers/multiphase/potentialFreeSurfaceFoam/pEqn.H
similarity index 88%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/pEqn.H
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/pEqn.H
index 888d06a88989e40f736992a85afd058f6b106aaf..11dfa8a5200efcf9e848c25d00844edf9b2a0f41 100644
--- a/applications/solvers/incompressible/potentialFreeSurfaceFoam/pEqn.H
+++ b/applications/solvers/multiphase/potentialFreeSurfaceFoam/pEqn.H
@@ -1,5 +1,3 @@
-#include "resetPhiPatches.H"
-
 volScalarField rAU(1.0/UEqn().A());
 surfaceScalarField rAUf("Dp", fvc::interpolate(rAU));
 
@@ -22,6 +20,9 @@ adjustPhi(phiHbyA, U, p_gh);
 
 fvOptions.relativeFlux(phiHbyA);
 
+// Update the phi BCs from U before p BCs are updated
+phi.boundaryField() = mesh.Sf().boundaryField() & U.boundaryField();
+
 // Non-orthogonal pressure corrector loop
 while (pimple.correctNonOrthogonal())
 {
diff --git a/applications/solvers/incompressible/potentialFreeSurfaceFoam/potentialFreeSurfaceFoam.C b/applications/solvers/multiphase/potentialFreeSurfaceFoam/potentialFreeSurfaceFoam.C
similarity index 100%
rename from applications/solvers/incompressible/potentialFreeSurfaceFoam/potentialFreeSurfaceFoam.C
rename to applications/solvers/multiphase/potentialFreeSurfaceFoam/potentialFreeSurfaceFoam.C
diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverInterpolate.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverInterpolate.C
index 6c18b43d0a5e17debe9c57967888bc280ab4a6c4..3cdf3a6e4e6e29bb38c3c43f7ad7fbdf86f22f65 100644
--- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverInterpolate.C
+++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverInterpolate.C
@@ -90,10 +90,6 @@ void Foam::GAMGSolver::interpolate
     {
         corrC[restrictAddressing[celli]] += diagPtr[celli]*psiPtr[celli];
         diagC[restrictAddressing[celli]] += diagPtr[celli];
-        //corrC[restrictAddressing[celli]] += psiPtr[celli]/diagPtr[celli];
-        //diagC[restrictAddressing[celli]] += 1.0/diagPtr[celli];
-        //corrC[restrictAddressing[celli]] += psiPtr[celli];
-        //diagC[restrictAddressing[celli]] += 1.0;
     }
 
     for (register label ccelli=0; ccelli<nCCells; ccelli++)
diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverSolve.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverSolve.C
index b6c30898de0b5d73c2d5fbf18ab1ef53430379ce..a3e22411d93905c53bd211bf826f6909096da5d6 100644
--- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverSolve.C
+++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolverSolve.C
@@ -313,7 +313,7 @@ void Foam::GAMGSolver::Vcycle
             scalarField& ACfRef =
                 const_cast<scalarField&>(ACf.operator const scalarField&());
 
-            if (interpolateCorrection_ && leveli < coarsestLevel - 2)
+            if (interpolateCorrection_) //&& leveli < coarsestLevel - 2)
             {
                 interpolate
                 (
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/U b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/U
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/U
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/U
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/p b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/p
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/p
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/p
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/p_gh b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/p_gh
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/0.org/p_gh
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/0.org/p_gh
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/Allclean b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/Allclean
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/Allclean
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/Allclean
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/Allrun b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/Allrun
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/Allrun
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/Allrun
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/g b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/g
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/g
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/g
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/blockMeshDict b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/blockMeshDict
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/blockMeshDict
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/blockMeshDict
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/boundary b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/boundary
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/boundary
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/polyMesh/boundary
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/transportProperties b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/transportProperties
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/transportProperties
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/transportProperties
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/turbulenceProperties b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/turbulenceProperties
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/constant/turbulenceProperties
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/constant/turbulenceProperties
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData
similarity index 98%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData
index 584f0ea0d51cc70fcc8d28f34781e5260abcefbb..bc1a5b586c255ce2640d8047342e93c127c3f0a3 100755
--- a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData
+++ b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/extractHeightData
@@ -1,3 +1,2 @@
 #!/bin/sh
 awk '{print $1 " " $4}' postProcessing/poolHeight/0/faceSource.dat > poolHeight_vs_time
-
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/controlDict b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/controlDict
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/controlDict
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/controlDict
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/fvSchemes b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/fvSchemes
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/fvSchemes
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/fvSchemes
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/fvSolution b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/fvSolution
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/fvSolution
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/fvSolution
diff --git a/tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/topoSetDict b/tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/topoSetDict
similarity index 100%
rename from tutorials/incompressible/potentialFreeSurfaceFoam/oscillatingBox/system/topoSetDict
rename to tutorials/multiphase/potentialFreeSurfaceFoam/oscillatingBox/system/topoSetDict