From 54dcde5f9a96649780a86a9e5e115f6b6b5625f5 Mon Sep 17 00:00:00 2001
From: Kutalmis Bercin <kutalmis.bercin@esi-group.com>
Date: Fri, 2 Feb 2024 15:40:08 +0000
Subject: [PATCH] INT: compressibleInterFoam: assimilate DyM solver

Based on changes from openfoam.org
---
 .../compressibleInterFoam/Allwclean           |   1 -
 .../multiphase/compressibleInterFoam/Allwmake |   1 -
 .../compressibleInterFoam/Make/options        |  10 +-
 .../compressibleInterDyMFoam/Make/files       |   3 -
 .../compressibleInterDyMFoam/Make/options     |  35 ----
 .../compressibleInterDyMFoam/alphaSuSp.H      |  43 ----
 .../compressibleInterDyMFoam.C                | 190 ------------------
 .../compressibleInterDyMFoam/pEqn.H           | 145 -------------
 .../compressibleInterFoam.C                   |  71 +++++--
 .../correctPhi.H                              |   2 -
 .../multiphase/compressibleInterFoam/pEqn.H   |  31 ++-
 .../laminar/sloshingTank2D/0.orig/T           |   0
 .../laminar/sloshingTank2D/0.orig/U           |   0
 .../laminar/sloshingTank2D/0.orig/alpha.water |   0
 .../laminar/sloshingTank2D/0.orig/p           |   0
 .../laminar/sloshingTank2D/0.orig/p_rgh       |   0
 .../laminar/sloshingTank2D/Allclean           |   0
 .../laminar/sloshingTank2D/Allrun             |   0
 .../sloshingTank2D/constant/dynamicMeshDict   |   0
 .../laminar/sloshingTank2D/constant/g         |   0
 .../constant/thermophysicalProperties         |   0
 .../constant/thermophysicalProperties.air     |   0
 .../constant/thermophysicalProperties.water   |   0
 .../constant/transportProperties              |   0
 .../constant/turbulenceProperties             |   0
 .../sloshingTank2D/system/blockMeshDict.m4    |   0
 .../laminar/sloshingTank2D/system/controlDict |   2 +-
 .../sloshingTank2D/system/decomposeParDict    |   0
 .../laminar/sloshingTank2D/system/fvSchemes   |   0
 .../laminar/sloshingTank2D/system/fvSolution  |   8 +-
 .../sloshingTank2D/system/setFieldsDict       |   0
 .../laminar/sphereDrop/0.orig/T               |   0
 .../laminar/sphereDrop/0.orig/T.air           |   0
 .../laminar/sphereDrop/0.orig/T.water         |   0
 .../laminar/sphereDrop/0.orig/U               |   0
 .../laminar/sphereDrop/0.orig/alpha.water     |   0
 .../laminar/sphereDrop/0.orig/p               |   0
 .../laminar/sphereDrop/0.orig/p_rgh           |   0
 .../sphereDrop/0.orig/pointDisplacement       |   0
 .../laminar/sphereDrop/Allclean               |   0
 .../laminar/sphereDrop/Allrun                 |   0
 .../laminar/sphereDrop/Allrun-parallel        |   0
 .../sphereDrop/constant/dynamicMeshDict       |   0
 .../laminar/sphereDrop/constant/g             |   0
 .../constant/thermophysicalProperties         |   0
 .../constant/thermophysicalProperties.air     |   0
 .../constant/thermophysicalProperties.water   |   0
 .../sphereDrop/constant/transportProperties   |   0
 .../sphereDrop/constant/turbulenceProperties  |   0
 .../laminar/sphereDrop/include/meshModifiers  |   0
 .../laminar/sphereDrop/system/blockMeshDict   |   0
 .../laminar/sphereDrop/system/controlDict     |   2 +-
 .../laminar/sphereDrop/system/createPatchDict |   0
 .../sphereDrop/system/decomposeParDict        |   0
 .../laminar/sphereDrop/system/fvSchemes       |   0
 .../laminar/sphereDrop/system/fvSolution      |   4 +-
 .../laminar/sphereDrop/system/setFieldsDict   |   0
 .../laminar/sphereDrop/system/topoSetDict     |   0
 58 files changed, 96 insertions(+), 452 deletions(-)
 delete mode 100644 applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/files
 delete mode 100644 applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options
 delete mode 100644 applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaSuSp.H
 delete mode 100644 applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C
 delete mode 100644 applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H
 rename applications/solvers/multiphase/compressibleInterFoam/{compressibleInterDyMFoam => }/correctPhi.H (82%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/0.orig/T (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/0.orig/U (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/0.orig/alpha.water (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/0.orig/p (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/0.orig/p_rgh (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/Allclean (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/Allrun (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/dynamicMeshDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/g (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/thermophysicalProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/thermophysicalProperties.air (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/thermophysicalProperties.water (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/transportProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/constant/turbulenceProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/blockMeshDict.m4 (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/controlDict (97%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/decomposeParDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/fvSchemes (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/fvSolution (93%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sloshingTank2D/system/setFieldsDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/T (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/T.air (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/T.water (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/U (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/alpha.water (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/p (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/p_rgh (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/0.orig/pointDisplacement (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/Allclean (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/Allrun (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/Allrun-parallel (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/dynamicMeshDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/g (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/thermophysicalProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/thermophysicalProperties.air (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/thermophysicalProperties.water (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/transportProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/constant/turbulenceProperties (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/include/meshModifiers (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/blockMeshDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/controlDict (96%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/createPatchDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/decomposeParDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/fvSchemes (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/fvSolution (96%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/setFieldsDict (100%)
 rename tutorials/multiphase/{compressibleInterDyMFoam => compressibleInterFoam}/laminar/sphereDrop/system/topoSetDict (100%)

diff --git a/applications/solvers/multiphase/compressibleInterFoam/Allwclean b/applications/solvers/multiphase/compressibleInterFoam/Allwclean
index 64ff3553216..e7b652f1114 100755
--- a/applications/solvers/multiphase/compressibleInterFoam/Allwclean
+++ b/applications/solvers/multiphase/compressibleInterFoam/Allwclean
@@ -7,7 +7,6 @@ wclean libso surfaceTensionModels
 wclean libso VoFphaseCompressibleTurbulenceModels
 
 wclean
-wclean compressibleInterDyMFoam
 wclean compressibleInterFilmFoam
 wclean compressibleInterIsoFoam
 
diff --git a/applications/solvers/multiphase/compressibleInterFoam/Allwmake b/applications/solvers/multiphase/compressibleInterFoam/Allwmake
index 01cdf8258b3..23f1a19c04f 100755
--- a/applications/solvers/multiphase/compressibleInterFoam/Allwmake
+++ b/applications/solvers/multiphase/compressibleInterFoam/Allwmake
@@ -8,7 +8,6 @@ wmake $targetType surfaceTensionModels
 wmake $targetType VoFphaseCompressibleTurbulenceModels
 
 wmake $targetType
-wmake $targetType compressibleInterDyMFoam
 wmake $targetType compressibleInterFilmFoam
 wmake $targetType compressibleInterIsoFoam
 wmake $targetType overCompressibleInterDyMFoam
diff --git a/applications/solvers/multiphase/compressibleInterFoam/Make/options b/applications/solvers/multiphase/compressibleInterFoam/Make/options
index 8204d76d9ac..94bdac326d3 100644
--- a/applications/solvers/multiphase/compressibleInterFoam/Make/options
+++ b/applications/solvers/multiphase/compressibleInterFoam/Make/options
@@ -1,21 +1,25 @@
 EXE_INC = \
     -I../VoF \
     -ItwoPhaseMixtureThermo \
-    -I$(LIB_SRC)/finiteVolume/lnInclude \
+    -IVoFphaseCompressibleTurbulenceModels/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude \
+    -I$(LIB_SRC)/dynamicMesh/lnInclude \
+    -I$(LIB_SRC)/dynamicFvMesh/lnInclude \
+    -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/transportModels/compressible/lnInclude \
     -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
     -I$(LIB_SRC)/transportModels/twoPhaseMixture/lnInclude \
     -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
     -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
     -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-    -I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude \
-    -IVoFphaseCompressibleTurbulenceModels/lnInclude
+    -I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude
 
 EXE_LIBS = \
     -lfiniteVolume \
     -lfvOptions \
     -lmeshTools \
+    -ldynamicMesh \
+    -ldynamicFvMesh \
     -ltwoPhaseMixtureThermo \
     -ltwoPhaseSurfaceTension \
     -lcompressibleTransportModels \
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/files b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/files
deleted file mode 100644
index 121264b1a93..00000000000
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/files
+++ /dev/null
@@ -1,3 +0,0 @@
-compressibleInterDyMFoam.C
-
-EXE = $(FOAM_APPBIN)/compressibleInterDyMFoam
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options
deleted file mode 100644
index 3853db3847f..00000000000
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options
+++ /dev/null
@@ -1,35 +0,0 @@
-EXE_INC = \
-    -I.. \
-    -I../../VoF \
-    -I../twoPhaseMixtureThermo \
-    -I../VoFphaseCompressibleTurbulenceModels/lnInclude \
-    -I$(LIB_SRC)/finiteVolume/lnInclude \
-    -I$(LIB_SRC)/meshTools/lnInclude \
-    -I$(LIB_SRC)/transportModels/compressible/lnInclude \
-    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-    -I$(LIB_SRC)/transportModels/twoPhaseMixture/lnInclude \
-    -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
-    -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-    -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-    -I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude \
-    -I$(LIB_SRC)/dynamicMesh/lnInclude \
-    -I$(LIB_SRC)/dynamicFvMesh/lnInclude
-
-EXE_LIBS = \
-    -lfiniteVolume \
-    -lfvOptions \
-    -lmeshTools \
-    -ltwoPhaseMixtureThermo \
-    -ltwoPhaseSurfaceTension \
-    -lcompressibleTransportModels \
-    -lfluidThermophysicalModels \
-    -lspecie \
-    -ltwoPhaseMixture \
-    -ltwoPhaseProperties \
-    -linterfaceProperties \
-    -lturbulenceModels \
-    -lcompressibleTurbulenceModels \
-    -lthermoTools \
-    -lVoFphaseCompressibleTurbulenceModels \
-    -ldynamicMesh \
-    -ldynamicFvMesh
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaSuSp.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaSuSp.H
deleted file mode 100644
index e580b4620d4..00000000000
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/alphaSuSp.H
+++ /dev/null
@@ -1,43 +0,0 @@
-volScalarField::Internal Sp
-(
-    IOobject
-    (
-        "Sp",
-        runTime.timeName(),
-        mesh
-    ),
-    mesh,
-    dimensionedScalar(dgdt.dimensions(), Zero)
-);
-
-volScalarField::Internal Su
-(
-    IOobject
-    (
-        "Su",
-        runTime.timeName(),
-        mesh
-    ),
-    mesh,
-    dimensionedScalar(dgdt.dimensions(), Zero)
-);
-
-forAll(dgdt, celli)
-{
-    if (dgdt[celli] > 0.0 && alpha1[celli] > 0.0)
-    {
-        Sp[celli] -= dgdt[celli]*alpha1[celli];
-        Su[celli] += dgdt[celli]*alpha1[celli];
-    }
-    else if (dgdt[celli] < 0.0 && alpha1[celli] < 1.0)
-    {
-        Sp[celli] += dgdt[celli]*(1.0 - alpha1[celli]);
-    }
-}
-
-volScalarField::Internal divU
-(
-    mesh.moving()
-  ? fvc::div(phiCN() + mesh.phi())
-  : fvc::div(phiCN())
-);
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C
deleted file mode 100644
index a5036ecdc3b..00000000000
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C
+++ /dev/null
@@ -1,190 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | www.openfoam.com
-     \\/     M anipulation  |
--------------------------------------------------------------------------------
-    Copyright (C) 2011-2017 OpenFOAM Foundation
-    Copyright (C) 2019 OpenCFD Ltd.
--------------------------------------------------------------------------------
-License
-    This file is part of OpenFOAM.
-
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
-    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-    for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
-
-Application
-    compressibleInterDyMFoam
-
-Description
-    Solver for two compressible, non-isothermal immiscible fluids using a VOF
-    (volume of fluid) phase-fraction based interface capturing approach,
-    with optional mesh motion and mesh topology changes including adaptive
-    re-meshing.
-
-    The momentum and other fluid properties are of the "mixture" and a single
-    momentum equation is solved.
-
-    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.
-
-\*---------------------------------------------------------------------------*/
-
-#include "fvCFD.H"
-#include "dynamicFvMesh.H"
-#include "CMULES.H"
-#include "EulerDdtScheme.H"
-#include "localEulerDdtScheme.H"
-#include "CrankNicolsonDdtScheme.H"
-#include "subCycle.H"
-#include "compressibleInterPhaseTransportModel.H"
-#include "pimpleControl.H"
-#include "fvOptions.H"
-#include "CorrectPhi.H"
-#include "fvcSmooth.H"
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-int main(int argc, char *argv[])
-{
-    argList::addNote
-    (
-        "Solver for two compressible, non-isothermal immiscible fluids"
-        " using VOF phase-fraction based interface capturing.\n"
-        "With optional mesh motion and mesh topology changes including"
-        " adaptive re-meshing."
-    );
-
-    #include "postProcess.H"
-
-    #include "setRootCaseLists.H"
-    #include "createTime.H"
-    #include "createDynamicFvMesh.H"
-    #include "initContinuityErrs.H"
-    #include "createDyMControls.H"
-    #include "createFields.H"
-    #include "createUf.H"
-    #include "CourantNo.H"
-    #include "setInitialDeltaT.H"
-
-    volScalarField& p = mixture.p();
-    volScalarField& T = mixture.T();
-    const volScalarField& psi1 = mixture.thermo1().psi();
-    const volScalarField& psi2 = mixture.thermo2().psi();
-
-    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-    Info<< "\nStarting time loop\n" << endl;
-
-    while (runTime.run())
-    {
-        #include "readDyMControls.H"
-
-        // Store divU and divUp from the previous mesh so that it can be mapped
-        // and used in correctPhi to ensure the corrected phi has the
-        // same divergence
-        volScalarField divU("divU0", fvc::div(fvc::absolute(phi, U)));
-        volScalarField divUp("divUp", fvc::div(fvc::absolute(phi, U), p));
-
-        if (LTS)
-        {
-            #include "setRDeltaT.H"
-        }
-        else
-        {
-            #include "CourantNo.H"
-            #include "alphaCourantNo.H"
-            #include "setDeltaT.H"
-        }
-
-        ++runTime;
-
-        Info<< "Time = " << runTime.timeName() << nl << endl;
-
-        // --- Pressure-velocity PIMPLE corrector loop
-        while (pimple.loop())
-        {
-            if (pimple.firstIter() || moveMeshOuterCorrectors)
-            {
-                scalar timeBeforeMeshUpdate = runTime.elapsedCpuTime();
-
-                mesh.update();
-
-                if (mesh.changing())
-                {
-                    MRF.update();
-
-                    Info<< "Execution time for mesh.update() = "
-                        << runTime.elapsedCpuTime() - timeBeforeMeshUpdate
-                        << " s" << endl;
-
-                    gh = (g & mesh.C()) - ghRef;
-                    ghf = (g & mesh.Cf()) - ghRef;
-                }
-
-                if ((mesh.changing() && correctPhi))
-                {
-                    // Calculate absolute flux from the mapped surface velocity
-                    phi = mesh.Sf() & Uf;
-
-                    #include "correctPhi.H"
-
-                    // Make the fluxes relative to the mesh motion
-                    fvc::makeRelative(phi, U);
-
-                    mixture.correct();
-                }
-
-                if (mesh.changing() && checkMeshCourantNo)
-                {
-                    #include "meshCourantNo.H"
-                }
-            }
-
-            #include "alphaControls.H"
-            #include "compressibleAlphaEqnSubCycle.H"
-
-            turbulence.correctPhasePhi();
-
-            #include "UEqn.H"
-            #include "TEqn.H"
-
-            // --- Pressure corrector loop
-            while (pimple.correct())
-            {
-                #include "pEqn.H"
-            }
-
-            if (pimple.turbCorr())
-            {
-                turbulence.correct();
-            }
-        }
-
-        rho = alpha1*rho1 + alpha2*rho2;
-
-        // Correct p_rgh for consistency with p and the updated densities
-        p_rgh = p - rho*gh;
-        p_rgh.correctBoundaryConditions();
-
-        runTime.write();
-
-        runTime.printExecutionTime(Info);
-    }
-
-    Info<< "End\n" << endl;
-
-    return 0;
-}
-
-
-// ************************************************************************* //
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H
deleted file mode 100644
index d56a53bf914..00000000000
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/pEqn.H
+++ /dev/null
@@ -1,145 +0,0 @@
-{
-    volScalarField rAU("rAU", 1.0/UEqn.A());
-    surfaceScalarField rAUf("rAUf", fvc::interpolate(rAU));
-    volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p_rgh));
-    surfaceScalarField phiHbyA
-    (
-        "phiHbyA",
-        fvc::flux(HbyA)
-      + MRF.zeroFilter(fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, Uf))
-    );
-    MRF.makeRelative(phiHbyA);
-
-    surfaceScalarField phig
-    (
-        (
-            mixture.surfaceTensionForce()
-          - ghf*fvc::snGrad(rho)
-        )*rAUf*mesh.magSf()
-    );
-
-    phiHbyA += phig;
-
-    // Update the pressure BCs to ensure flux consistency
-    constrainPressure(p_rgh, U, phiHbyA, rAUf, MRF);
-
-    // Make the fluxes relative to the mesh motion
-    fvc::makeRelative(phiHbyA, U);
-
-    tmp<fvScalarMatrix> p_rghEqnComp1;
-    tmp<fvScalarMatrix> p_rghEqnComp2;
-
-    if (pimple.transonic())
-    {
-        #include "rhofs.H"
-
-        surfaceScalarField phid1("phid1", fvc::interpolate(psi1)*phi);
-        surfaceScalarField phid2("phid2", fvc::interpolate(psi2)*phi);
-
-        p_rghEqnComp1 =
-            pos(alpha1)
-           *(
-                (
-                    fvc::ddt(alpha1, rho1) + fvc::div(alphaPhi1*rho1f)
-                  - (fvOptions(alpha1, mixture.thermo1().rho())&rho1)
-                )/rho1
-              - fvc::ddt(alpha1) - fvc::div(alphaPhi1)
-              + (alpha1/rho1)
-               *correction
-                (
-                    psi1*fvm::ddt(p_rgh)
-                  + fvm::div(phid1, p_rgh) - fvm::Sp(fvc::div(phid1), p_rgh)
-                )
-            );
-        p_rghEqnComp1.ref().relax();
-
-        p_rghEqnComp2 =
-            pos(alpha2)
-           *(
-               (
-                   fvc::ddt(alpha2, rho2) + fvc::div(alphaPhi2*rho2f)
-                 - (fvOptions(alpha2, mixture.thermo2().rho())&rho2)
-               )/rho2
-             - fvc::ddt(alpha2) - fvc::div(alphaPhi2)
-             + (alpha2/rho2)
-              *correction
-               (
-                   psi2*fvm::ddt(p_rgh)
-                 + fvm::div(phid2, p_rgh) - fvm::Sp(fvc::div(phid2), p_rgh)
-               )
-           );
-        p_rghEqnComp2.ref().relax();
-    }
-    else
-    {
-         p_rghEqnComp1 =
-            fvc::ddt(rho1) + psi1*correction(fvm::ddt(p_rgh))
-          + fvc::div(phi, rho1) - fvc::Sp(fvc::div(phi), rho1);
-
-        p_rghEqnComp2 =
-            fvc::ddt(rho2) + psi2*correction(fvm::ddt(p_rgh))
-          + fvc::div(phi, rho2) - fvc::Sp(fvc::div(phi), rho2);
-    }
-
-    // Cache p_rgh prior to solve for density update
-    volScalarField p_rgh_0(p_rgh);
-
-    while (pimple.correctNonOrthogonal())
-    {
-        fvScalarMatrix p_rghEqnIncomp
-        (
-            fvc::div(phiHbyA)
-          - fvm::laplacian(rAUf, p_rgh)
-        );
-
-        solve
-        (
-            (
-                (max(alpha1, scalar(0))/rho1)*p_rghEqnComp1()
-              + (max(alpha2, scalar(0))/rho2)*p_rghEqnComp2()
-            )
-          + p_rghEqnIncomp,
-            p_rgh.select(pimple.finalInnerIter())
-        );
-
-        if (pimple.finalNonOrthogonalIter())
-        {
-            p = max(p_rgh + (alpha1*rho1 + alpha2*rho2)*gh, pMin);
-            p_rgh = p - (alpha1*rho1 + alpha2*rho2)*gh;
-
-            dgdt =
-            (
-                pos(alpha2)*(p_rghEqnComp2 & p_rgh)/rho2
-              - pos(alpha1)*(p_rghEqnComp1 & p_rgh)/rho1
-            );
-
-            phi = phiHbyA + p_rghEqnIncomp.flux();
-
-            U = HbyA
-              + rAU*fvc::reconstruct((phig + p_rghEqnIncomp.flux())/rAUf);
-            U.correctBoundaryConditions();
-            fvOptions.correct(U);
-        }
-    }
-
-    {
-        Uf = fvc::interpolate(U);
-        surfaceVectorField n(mesh.Sf()/mesh.magSf());
-        Uf += n*(fvc::absolute(phi, U)/mesh.magSf() - (n & Uf));
-    }
-
-    // Update densities from change in p_rgh
-    mixture.thermo1().correctRho(psi1*(p_rgh - p_rgh_0));
-    mixture.thermo2().correctRho(psi2*(p_rgh - p_rgh_0));
-
-    rho = alpha1*rho1 + alpha2*rho2;
-
-    // Correct p_rgh for consistency with p and the updated densities
-    p = max(p_rgh + rho*gh, pMin);
-    p_rgh = p - rho*gh;
-    p_rgh.correctBoundaryConditions();
-
-
-
-    K = 0.5*magSqr(U);
-}
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C
index 16b5a73d2b5..15075b2b625 100644
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C
+++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C
@@ -5,8 +5,8 @@
     \\  /    A nd           | www.openfoam.com
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
-    Copyright (C) 2011-2017 OpenFOAM Foundation
-    Copyright (C) OpenCFD OpenCFD Ltd.
+    Copyright (C) 2011-2018 OpenFOAM Foundation
+    Copyright (C) 2024 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -32,7 +32,9 @@ Group
 
 Description
     Solver for two compressible, non-isothermal immiscible fluids using a VOF
-    (volume of fluid) phase-fraction based interface capturing approach.
+    (volume of fluid) phase-fraction based interface capturing approach,
+    with optional mesh motion and mesh topology changes including adaptive
+    re-meshing.
 
     The momentum and other fluid properties are of the "mixture" and a single
     momentum equation is solved.
@@ -45,6 +47,7 @@ Description
 \*---------------------------------------------------------------------------*/
 
 #include "fvCFD.H"
+#include "dynamicFvMesh.H"
 #include "CMULES.H"
 #include "EulerDdtScheme.H"
 #include "localEulerDdtScheme.H"
@@ -53,6 +56,7 @@ Description
 #include "compressibleInterPhaseTransportModel.H"
 #include "pimpleControl.H"
 #include "fvOptions.H"
+#include "CorrectPhi.H"
 #include "fvcSmooth.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -70,30 +74,31 @@ int main(int argc, char *argv[])
     #include "addCheckCaseOptions.H"
     #include "setRootCaseLists.H"
     #include "createTime.H"
-    #include "createMesh.H"
-    #include "createControl.H"
-    #include "createTimeControls.H"
+    #include "createDynamicFvMesh.H"
+    #include "initContinuityErrs.H"
+    #include "createDyMControls.H"
     #include "createFields.H"
+    #include "CourantNo.H"
+    #include "setInitialDeltaT.H"
+    #include "createUfIfPresent.H"
 
     volScalarField& p = mixture.p();
     volScalarField& T = mixture.T();
     const volScalarField& psi1 = mixture.thermo1().psi();
     const volScalarField& psi2 = mixture.thermo2().psi();
 
-    if (!LTS)
-    {
-        #include "readTimeControls.H"
-        #include "CourantNo.H"
-        #include "setInitialDeltaT.H"
-    }
-
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
     Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
-        #include "readTimeControls.H"
+        #include "readDyMControls.H"
+
+        // Store divU from the previous mesh so that it can be mapped
+        // and used in correctPhi to ensure the corrected phi has the
+        // same divergence
+        volScalarField divU("divU0", fvc::div(fvc::absolute(phi, U)));
 
         if (LTS)
         {
@@ -113,6 +118,44 @@ int main(int argc, char *argv[])
         // --- Pressure-velocity PIMPLE corrector loop
         while (pimple.loop())
         {
+            if (pimple.firstIter() || moveMeshOuterCorrectors)
+            {
+                scalar timeBeforeMeshUpdate = runTime.elapsedCpuTime();
+
+                mesh.update();
+
+                if (mesh.changing())
+                {
+                    MRF.update();
+
+                    Info<< "Execution time for mesh.update() = "
+                        << runTime.elapsedCpuTime() - timeBeforeMeshUpdate
+                        << " s" << endl;
+
+                    gh = (g & mesh.C()) - ghRef;
+                    ghf = (g & mesh.Cf()) - ghRef;
+
+                    if (correctPhi)
+                    {
+                        // Calculate absolute flux
+                        // from the mapped surface velocity
+                        phi = mesh.Sf() & Uf();
+
+                        #include "correctPhi.H"
+
+                        // Make the fluxes relative to the mesh motion
+                        fvc::makeRelative(phi, U);
+
+                        mixture.correct();
+                    }
+
+                    if (checkMeshCourantNo)
+                    {
+                        #include "meshCourantNo.H"
+                    }
+                }
+            }
+
             #include "alphaControls.H"
             #include "compressibleAlphaEqnSubCycle.H"
 
diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H b/applications/solvers/multiphase/compressibleInterFoam/correctPhi.H
similarity index 82%
rename from applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H
rename to applications/solvers/multiphase/compressibleInterFoam/correctPhi.H
index ad73a951ff2..79860853b8c 100644
--- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/correctPhi.H
+++ b/applications/solvers/multiphase/compressibleInterFoam/correctPhi.H
@@ -8,6 +8,4 @@ CorrectPhi
     pimple
 );
 
-//***HGW phi.oldTime() = phi;
-
 #include "continuityErrs.H"
diff --git a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
index 381e45e75bc..7f39617aa8d 100644
--- a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
+++ b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
@@ -6,7 +6,7 @@
     (
         "phiHbyA",
         fvc::flux(HbyA)
-      + MRF.zeroFilter(fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, phi))
+      + MRF.zeroFilter(fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, phi, Uf))
     );
     MRF.makeRelative(phiHbyA);
 
@@ -23,6 +23,9 @@
     // Update the pressure BCs to ensure flux consistency
     constrainPressure(p_rgh, U, phiHbyA, rAUf, MRF);
 
+    // Make the fluxes relative to the mesh motion
+    fvc::makeRelative(phiHbyA, U);
+
     tmp<fvScalarMatrix> p_rghEqnComp1;
     tmp<fvScalarMatrix> p_rghEqnComp2;
 
@@ -34,8 +37,7 @@
         surfaceScalarField phid2("phid2", fvc::interpolate(psi2)*phi);
 
         p_rghEqnComp1 =
-            pos(alpha1)
-           *(
+            (
                 (
                     fvc::ddt(alpha1, rho1) + fvc::div(alphaPhi1*rho1f)
                   - (fvOptions(alpha1, mixture.thermo1().rho())&rho1)
@@ -48,11 +50,9 @@
                   + fvm::div(phid1, p_rgh) - fvm::Sp(fvc::div(phid1), p_rgh)
                 )
             );
-        p_rghEqnComp1.ref().relax();
 
         p_rghEqnComp2 =
-            pos(alpha2)
-           *(
+            (
                (
                    fvc::ddt(alpha2, rho2) + fvc::div(alphaPhi2*rho2f)
                  - (fvOptions(alpha2, mixture.thermo2().rho())&rho2)
@@ -65,7 +65,6 @@
                  + fvm::div(phid2, p_rgh) - fvm::Sp(fvc::div(phid2), p_rgh)
                )
            );
-        p_rghEqnComp2.ref().relax();
     }
     else
     {
@@ -94,6 +93,21 @@
             );
     }
 
+    if (mesh.moving())
+    {
+        p_rghEqnComp1.ref() += fvc::div(mesh.phi())*alpha1;
+        p_rghEqnComp2.ref() += fvc::div(mesh.phi())*alpha2;
+    }
+
+    p_rghEqnComp1.ref() *= pos(alpha1);
+    p_rghEqnComp2.ref() *= pos(alpha2);
+
+    if (pimple.transonic())
+    {
+        p_rghEqnComp1.ref().relax();
+        p_rghEqnComp2.ref().relax();
+    }
+
     // Cache p_rgh prior to solve for density update
     volScalarField p_rgh_0(p_rgh);
 
@@ -131,6 +145,9 @@
         }
     }
 
+    // Correct Uf if the mesh is moving
+    fvc::correctUf(Uf, U, fvc::absolute(phi, U));
+
     // Update densities from change in p_rgh
     mixture.thermo1().correctRho(psi1*(p_rgh - p_rgh_0));
     mixture.thermo2().correctRho(psi2*(p_rgh - p_rgh_0));
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/T b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/T
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/T
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/T
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/U b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/U
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/U
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/U
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/alpha.water b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/alpha.water
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/alpha.water
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/alpha.water
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/p b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/p
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/p
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/p
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/p_rgh b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/p_rgh
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/0.orig/p_rgh
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/0.orig/p_rgh
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/Allclean b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/Allclean
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/Allclean
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/Allclean
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/Allrun b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/Allrun
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/Allrun
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/Allrun
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/dynamicMeshDict b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/dynamicMeshDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/dynamicMeshDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/dynamicMeshDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/g b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/g
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/g
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/g
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.air b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.air
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.air
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.air
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.water b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.water
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.water
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/thermophysicalProperties.water
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/transportProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/transportProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/transportProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/transportProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/turbulenceProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/turbulenceProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/constant/turbulenceProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/constant/turbulenceProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/blockMeshDict.m4 b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/blockMeshDict.m4
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/blockMeshDict.m4
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/blockMeshDict.m4
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/controlDict b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/controlDict
similarity index 97%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/controlDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/controlDict
index cb543c876ec..88c3f7aa2dd 100644
--- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/controlDict
+++ b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/controlDict
@@ -14,7 +14,7 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-application     compressibleInterDyMFoam;
+application     compressibleInterFoam;
 
 startFrom       startTime;
 
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/decomposeParDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/decomposeParDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/fvSchemes b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/fvSchemes
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/fvSchemes
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/fvSchemes
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/fvSolution b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/fvSolution
similarity index 93%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/fvSolution
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/fvSolution
index 67137ae8a81..9a7c17806a7 100644
--- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/fvSolution
+++ b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/fvSolution
@@ -73,8 +73,8 @@ solvers
 
     U
     {
-        solver          smoothSolver;
-        smoother        GaussSeidel;
+        solver          PBiCGStab;
+        preconditioner  DILU;
         tolerance       1e-06;
         relTol          0;
         nSweeps         1;
@@ -82,8 +82,8 @@ solvers
 
     "(T|k|B|nuTilda).*"
     {
-        solver          smoothSolver;
-        smoother        symGaussSeidel;
+        solver          PBiCGStab;
+        preconditioner  DILU;
         tolerance       1e-08;
         relTol          0;
     }
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/setFieldsDict b/tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/setFieldsDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/setFieldsDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D/system/setFieldsDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T.air b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T.air
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T.air
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T.air
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T.water b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T.water
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/T.water
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/T.water
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/U b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/U
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/U
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/U
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/alpha.water b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/alpha.water
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/alpha.water
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/alpha.water
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/p b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/p
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/p
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/p
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/p_rgh b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/p_rgh
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/p_rgh
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/p_rgh
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/pointDisplacement b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/pointDisplacement
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/0.orig/pointDisplacement
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/0.orig/pointDisplacement
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allclean b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allclean
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allclean
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allclean
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allrun b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allrun
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allrun
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allrun
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allrun-parallel b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allrun-parallel
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/Allrun-parallel
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/Allrun-parallel
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/dynamicMeshDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/dynamicMeshDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/dynamicMeshDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/dynamicMeshDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/g b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/g
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/g
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/g
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties.air b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties.air
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties.air
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties.air
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties.water b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties.water
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/thermophysicalProperties.water
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/thermophysicalProperties.water
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/transportProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/transportProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/transportProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/transportProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/turbulenceProperties b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/turbulenceProperties
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/constant/turbulenceProperties
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/constant/turbulenceProperties
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/include/meshModifiers b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/include/meshModifiers
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/include/meshModifiers
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/include/meshModifiers
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/blockMeshDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/blockMeshDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/blockMeshDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/blockMeshDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/controlDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/controlDict
similarity index 96%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/controlDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/controlDict
index 447cef88733..413c3d14d10 100644
--- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/controlDict
+++ b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/controlDict
@@ -15,7 +15,7 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-application     compressibleInterDyMFoam;
+application     compressibleInterFoam;
 
 startFrom       startTime;
 
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/createPatchDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/createPatchDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/createPatchDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/createPatchDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/decomposeParDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/decomposeParDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/fvSchemes b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/fvSchemes
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/fvSchemes
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/fvSchemes
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/fvSolution b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/fvSolution
similarity index 96%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/fvSolution
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/fvSolution
index c6f197c5d74..fddbfb43771 100644
--- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/fvSolution
+++ b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/fvSolution
@@ -67,8 +67,8 @@ solvers
 
     "(U|k|epsilon|T)"
     {
-        solver          smoothSolver;
-        smoother        symGaussSeidel;
+        solver          PBiCGStab;
+        preconditioner  DILU;
         tolerance       1e-08;
         relTol          0.1;
     }
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/setFieldsDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/setFieldsDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/setFieldsDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/setFieldsDict
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict b/tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/topoSetDict
similarity index 100%
rename from tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict
rename to tutorials/multiphase/compressibleInterFoam/laminar/sphereDrop/system/topoSetDict
-- 
GitLab