From c367e0764219a75f49ac4b165f53449331a9acb1 Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Mon, 10 May 2010 17:17:49 +0100
Subject: [PATCH] ENH: Converted all cellSet/faceSet/pointSet to topoSet.

---
 .../mesh/manipulation/cellSet/Make/files      |   4 -
 .../mesh/manipulation/cellSet/Make/options    |   5 -
 .../mesh/manipulation/cellSet/cellSet.C       | 196 ------------------
 .../mesh/manipulation/cellSet/cellSetDict     | 149 -------------
 .../mesh/manipulation/faceSet/Make/files      |   4 -
 .../mesh/manipulation/faceSet/Make/options    |   5 -
 .../mesh/manipulation/faceSet/faceSet.C       | 196 ------------------
 .../mesh/manipulation/faceSet/faceSetDict     |  82 --------
 .../mesh/manipulation/pointSet/Make/files     |   4 -
 .../mesh/manipulation/pointSet/Make/options   |   5 -
 .../mesh/manipulation/pointSet/pointSet.C     | 196 ------------------
 .../mesh/manipulation/pointSet/pointSetDict   |  84 --------
 .../mesh/manipulation/topoSet/topoSet.C       |   1 +
 .../mixerVessel2D/system/faceSetDict          |  25 ---
 .../system/faceSetDict_noBoundaryFaces        |  25 ---
 .../system/faceSetDict_rotorFaces             |  25 ---
 .../mixerVessel2D/system/faceSetDict          |  25 ---
 .../system/faceSetDict_noBoundaryFaces        |  25 ---
 .../system/faceSetDict_rotorFaces             |  25 ---
 .../coalChemistryFoam/simplifiedSiwek/Allrun  |   2 +-
 .../system/{cellSetDict => topoSetDict}       |  21 +-
 .../multiphase/cavitatingFoam/les/Allclean    |   4 +-
 .../multiphase/cavitatingFoam/les/Allrun      |   4 +-
 .../les/throttle/system/topoSetDict.1         |  33 +++
 .../les/throttle/system/topoSetDict.2         |  33 +++
 .../les/throttle/system/topoSetDict.3         |  33 +++
 .../les/throttle3D/system/cellSetDict.1       |  31 ---
 .../les/throttle3D/system/cellSetDict.2       |  31 ---
 .../les/throttle3D/system/cellSetDict.3       |  31 ---
 .../les/throttle3D/system/topoSetDict.1       |  33 +++
 .../les/throttle3D/system/topoSetDict.2       |  33 +++
 .../les/throttle3D/system/topoSetDict.3       |  33 +++
 .../cavitatingFoam/ras/throttle/Allclean      |   2 +-
 .../cavitatingFoam/ras/throttle/Allrun        |   4 +-
 .../ras/throttle/system/cellSetDict.1         |  25 ---
 .../ras/throttle/system/cellSetDict.2         |  25 ---
 .../ras/throttle/system/cellSetDict.3         |  25 ---
 .../ras/throttle/system/topoSetDict           |  33 +++
 .../ras/throttle/system/topoSetDict.1}        |  19 +-
 .../ras/throttle/system/topoSetDict.2         |  33 +++
 .../ras/throttle/system/topoSetDict.3         |  33 +++
 .../interDyMFoam/ras/floatingObject/Allclean  |   1 -
 .../interDyMFoam/ras/floatingObject/Allrun    |  13 +-
 .../ras/floatingObject/system/cellSetDict.2   |  24 ---
 .../system/{cellSetDict.1 => topoSetDict}     |  24 ++-
 .../MRFInterFoam/mixerVessel2D/makeMesh       |   7 +-
 .../mixerVessel2D/system/cellSetDict          |  25 ---
 .../mixerVessel2D/system/faceSetDict          |  25 ---
 .../system/faceSetDict_noBoundaryFaces        |  25 ---
 .../system/faceSetDict_rotorFaces             |  25 ---
 .../mixerVessel2D/system/topoSetDict          |  34 +++
 .../interFoam/les/nozzleFlow2D/Allrun         |  10 +-
 .../les/nozzleFlow2D/system/cellSetDict       |  25 ---
 .../les/nozzleFlow2D/system/cellSetDict.1     |  25 ---
 .../les/nozzleFlow2D/system/cellSetDict.2     |  25 ---
 .../les/nozzleFlow2D/system/topoSetDict}      |  18 +-
 .../les/nozzleFlow2D/system/topoSetDict.1}    |  19 +-
 .../les/nozzleFlow2D/system/topoSetDict.2}    |  18 +-
 58 files changed, 415 insertions(+), 1530 deletions(-)
 delete mode 100644 applications/utilities/mesh/manipulation/cellSet/Make/files
 delete mode 100644 applications/utilities/mesh/manipulation/cellSet/Make/options
 delete mode 100644 applications/utilities/mesh/manipulation/cellSet/cellSet.C
 delete mode 100644 applications/utilities/mesh/manipulation/cellSet/cellSetDict
 delete mode 100644 applications/utilities/mesh/manipulation/faceSet/Make/files
 delete mode 100644 applications/utilities/mesh/manipulation/faceSet/Make/options
 delete mode 100644 applications/utilities/mesh/manipulation/faceSet/faceSet.C
 delete mode 100644 applications/utilities/mesh/manipulation/faceSet/faceSetDict
 delete mode 100644 applications/utilities/mesh/manipulation/pointSet/Make/files
 delete mode 100644 applications/utilities/mesh/manipulation/pointSet/Make/options
 delete mode 100644 applications/utilities/mesh/manipulation/pointSet/pointSet.C
 delete mode 100644 applications/utilities/mesh/manipulation/pointSet/pointSetDict
 delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict
 delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
 delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
 delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict
 delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
 delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
 rename tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/{cellSetDict => topoSetDict} (76%)
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3
 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1
 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2
 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2
 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3
 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1
 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2
 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3
 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict
 rename tutorials/{lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict => multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1} (78%)
 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2
 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3
 delete mode 100644 tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2
 rename tutorials/multiphase/interDyMFoam/ras/floatingObject/system/{cellSetDict.1 => topoSetDict} (74%)
 delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict
 delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict
 delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
 delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces
 create mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict
 delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict
 delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1
 delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2
 rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.1 => interFoam/les/nozzleFlow2D/system/topoSetDict} (78%)
 rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.3 => interFoam/les/nozzleFlow2D/system/topoSetDict.1} (78%)
 rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.2 => interFoam/les/nozzleFlow2D/system/topoSetDict.2} (78%)

diff --git a/applications/utilities/mesh/manipulation/cellSet/Make/files b/applications/utilities/mesh/manipulation/cellSet/Make/files
deleted file mode 100644
index f8143495484..00000000000
--- a/applications/utilities/mesh/manipulation/cellSet/Make/files
+++ /dev/null
@@ -1,4 +0,0 @@
-cellSet.C
-
-EXE = $(FOAM_APPBIN)/cellSet
-
diff --git a/applications/utilities/mesh/manipulation/cellSet/Make/options b/applications/utilities/mesh/manipulation/cellSet/Make/options
deleted file mode 100644
index 54c035b8f55..00000000000
--- a/applications/utilities/mesh/manipulation/cellSet/Make/options
+++ /dev/null
@@ -1,5 +0,0 @@
-EXE_INC = \
-    -I$(LIB_SRC)/meshTools/lnInclude
-
-EXE_LIBS = \
-    -lmeshTools
diff --git a/applications/utilities/mesh/manipulation/cellSet/cellSet.C b/applications/utilities/mesh/manipulation/cellSet/cellSet.C
deleted file mode 100644
index 3eafef872ba..00000000000
--- a/applications/utilities/mesh/manipulation/cellSet/cellSet.C
+++ /dev/null
@@ -1,196 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
-     \\/     M anipulation  |
--------------------------------------------------------------------------------
-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/>.
-
-Description
-    Selects a cell set through a dictionary.
-
-\*---------------------------------------------------------------------------*/
-
-#include "argList.H"
-#include "Time.H"
-#include "polyMesh.H"
-#include "topoSetSource.H"
-#include "cellSet.H"
-
-using namespace Foam;
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Main program:
-
-int main(int argc, char *argv[])
-{
-#   include "setRootCase.H"
-#   include "createTime.H"
-#   include "createPolyMesh.H"
-
-    Info<< "Reading cellSetDict\n" << endl;
-
-    IOdictionary cellSetDict
-    (
-        IOobject
-        (
-            "cellSetDict",
-            runTime.system(),
-            mesh,
-            IOobject::MUST_READ,
-            IOobject::NO_WRITE
-        )
-    );
-
-
-    const word setName(cellSetDict.lookup("name"));
-    const word actionName(cellSetDict.lookup("action"));
-
-    topoSetSource::setAction action = topoSetSource::toAction(actionName);
-
-
-    // Create topoSetSources
-    PtrList<topoSetSource> topoSetSources
-    (
-        cellSetDict.lookup("topoSetSources"),
-        topoSetSource::iNew(mesh)
-    );
-
-
-    // Load set to work
-    autoPtr<topoSet> currentSetPtr(NULL);
-    IOobject::readOption r;
-
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR))
-    {
-        r = IOobject::NO_READ;
-
-        currentSetPtr.reset
-        (
-            new cellSet
-            (
-                mesh,
-                setName,
-                mesh.nCells()/10+1  // Reasonable size estimate.
-            )
-        );
-    }
-    else
-    {
-        r = IOobject::MUST_READ;
-
-        currentSetPtr.reset
-        (
-            new cellSet
-            (
-                mesh,
-                setName,
-                r
-            )
-        );
-    }
-
-    topoSet& currentSet = currentSetPtr();
-
-    Info<< "Set:" << currentSet.name()
-        << "  Size:" << currentSet.size()
-        << "  Action:" << actionName
-        << endl;
-
-    if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST))
-    {
-        // currentSet has been read so can make copy.
-        //backup(mesh, setName, currentSet, setName + "_old");
-    }
-
-    if (action == topoSetSource::CLEAR)
-    {
-        // Already handled above by not reading
-    }
-    else if (action == topoSetSource::INVERT)
-    {
-        currentSet.invert(currentSet.maxSize(mesh));
-    }
-    else if (action == topoSetSource::LIST)
-    {
-        currentSet.writeDebug(Info, mesh, 100);
-        Info<< endl;
-    }
-    else if (action == topoSetSource::SUBSET)
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            // Backup current set.
-            autoPtr<topoSet> oldSet
-            (
-                topoSet::New
-                (
-                    currentSet.type(),
-                    mesh,
-                    currentSet.name() + "_old2",
-                    currentSet
-                )
-            );
-
-            currentSet.clear();
-
-            topoSetSources[topoSetSourceI].applyToSet
-            (
-                topoSetSource::NEW,
-                currentSet
-            );
-
-            // Combine new value of currentSet with old one.
-            currentSet.subset(oldSet);
-        }
-    }
-    else
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            topoSetSources[topoSetSourceI].applyToSet(action, currentSet);
-        }
-    }
-
-
-    if (action != topoSetSource::LIST)
-    {
-        // Set has changed.
-
-        // Sync across coupled patches.
-        currentSet.sync(mesh);
-
-        Info<< "Writing " << currentSet.name()
-            << " (size " << currentSet.size() << ") to "
-            << currentSet.instance()/currentSet.local()
-               /currentSet.name()
-            << endl << endl;
-
-        currentSet.write();
-    }
-
-    Info<< "\nEnd\n" << endl;
-
-    return 0;
-}
-
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/cellSet/cellSetDict b/applications/utilities/mesh/manipulation/cellSet/cellSetDict
deleted file mode 100644
index 1108d6c3d9d..00000000000
--- a/applications/utilities/mesh/manipulation/cellSet/cellSetDict
+++ /dev/null
@@ -1,149 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    object      cellSetDict;
-}
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Name of set to operate on
-name c0;
-
-// One of clear/new/invert/add/delete|subset/list
-action new;
-
-// Actions to apply to cellSet. These are all the topoSetSource's ending
-// in ..ToCell (see the meshTools library).
-
-topoSetSources
-(
-    // Select by explicitly providing cell labels
-    labelToCell
-    {
-        value (12 13 56);   // labels of cells
-    }
-
-    // Copy elements from cellSet
-    cellToCell
-    {
-        set c1;
-    }
-
-    // Cells in cell zone
-    zoneToCell
-    {
-        name ".*Zone";      // Name of cellZone, regular expressions allowed
-    }
-
-    // Cells on master or slave side of faceZone
-    faceZoneToCell
-    {
-        name ".*Zone";      // Name of faceZone, regular expressions allowed
-        option master;      // master/slave
-    }
-
-    // Select based on faceSet
-    faceToCell
-    {
-        set f0;             // Name of faceSet
-
-        //option neighbour; // cell with neighbour in faceSet
-        //option owner;     //  ,,       owner
-        option any;         // cell with any face in faceSet
-        //option all;       // cell with all faces in faceSet
-    }
-
-    // Select based on pointSet
-    pointToCell
-    {
-        set p0;
-        option any;         // cell with any point in pointSet
-        //option all;       // cell with all points in pointSet
-    }
-
-    // Select based on cellShape
-    shapeToCell
-    {
-        type hex;           // hex/wedge/prism/pyr/tet/tetWedge/splitHex
-    }
-
-    // Cells with cell centre within box
-    boxToCell
-    {
-       box   (0 0 0) (1 1 1);
-    }
-
-    // Cells with cell centre within box
-    // Is skewed, rotated box. Given as origin and three spanning vectors.
-    rotatedBoxToCell
-    {
-       origin   (0.2 0.2 -10);
-       i        (0.2 0.2 0);
-       j        (-0.2 0.2 0);
-       k        (10 10 10);
-    }
-
-    // Cells with centre within cylinder
-    cylinderToCell
-    {
-       p1       (0.2 0.2 -10); // start point on cylinder axis
-       p2       (0.2 0.2 0);   // end point on cylinder axis
-       radius   5.0;
-    }
-
-    // Cells with centre within sphere
-    sphereToCell
-    {
-       centre   (0.2 0.2 -10);
-       radius   5.0;
-    }
-
-    // Cells with cellCentre nearest to coordinates
-    nearestToCell
-    {
-       points ((0 0 0) (1 1 1)(2 2 2));
-    }
-
-    // Select based on surface
-    surfaceToCell
-    {
-        file            "www.avl.com-geometry.stl";
-        outsidePoints   ((-99 -99 -59));    // definition of outside
-        includeCut      false;              // cells cut by surface
-        includeInside   false;              // cells not on outside of surf
-        includeOutside  false;              // cells on outside of surf
-        nearDistance    -1;                 // cells with centre near surf
-                                            // (set to -1 if not used)
-        curvature       0.9;                // cells within nearDistance
-                                            // and near surf curvature
-                                            // (set to -100 if not used)
-    }
-
-    // values of field within certain range
-    fieldToCell
-    {
-        fieldName   U;      // Note: uses mag(U) since volVectorField
-        min         0.1;
-        max         0.5;
-    }
-
-    // Mesh region (non-face connected part of (subset of)mesh)
-    regionToCell
-    {
-        set         c0;         // name of cellSet giving mesh subset
-        insidePoint (1 2 3);    // point inside region to select
-    }
-
-);
-
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/faceSet/Make/files b/applications/utilities/mesh/manipulation/faceSet/Make/files
deleted file mode 100644
index 13398e10714..00000000000
--- a/applications/utilities/mesh/manipulation/faceSet/Make/files
+++ /dev/null
@@ -1,4 +0,0 @@
-faceSet.C
-
-EXE = $(FOAM_APPBIN)/faceSet
-
diff --git a/applications/utilities/mesh/manipulation/faceSet/Make/options b/applications/utilities/mesh/manipulation/faceSet/Make/options
deleted file mode 100644
index 54c035b8f55..00000000000
--- a/applications/utilities/mesh/manipulation/faceSet/Make/options
+++ /dev/null
@@ -1,5 +0,0 @@
-EXE_INC = \
-    -I$(LIB_SRC)/meshTools/lnInclude
-
-EXE_LIBS = \
-    -lmeshTools
diff --git a/applications/utilities/mesh/manipulation/faceSet/faceSet.C b/applications/utilities/mesh/manipulation/faceSet/faceSet.C
deleted file mode 100644
index 7c97b95ef5d..00000000000
--- a/applications/utilities/mesh/manipulation/faceSet/faceSet.C
+++ /dev/null
@@ -1,196 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
-     \\/     M anipulation  |
--------------------------------------------------------------------------------
-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/>.
-
-Description
-    Selects a face set through a dictionary.
-
-\*---------------------------------------------------------------------------*/
-
-#include "argList.H"
-#include "Time.H"
-#include "polyMesh.H"
-#include "topoSetSource.H"
-#include "faceSet.H"
-
-using namespace Foam;
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Main program:
-
-int main(int argc, char *argv[])
-{
-#   include "setRootCase.H"
-#   include "createTime.H"
-#   include "createPolyMesh.H"
-
-    Info<< "Reading faceSetDict\n" << endl;
-
-    IOdictionary faceSetDict
-    (
-        IOobject
-        (
-            "faceSetDict",
-            runTime.system(),
-            mesh,
-            IOobject::MUST_READ,
-            IOobject::NO_WRITE
-        )
-    );
-
-
-    const word setName(faceSetDict.lookup("name"));
-    const word actionName(faceSetDict.lookup("action"));
-
-    topoSetSource::setAction action = topoSetSource::toAction(actionName);
-
-
-    // Create topoSetSources
-    PtrList<topoSetSource> topoSetSources
-    (
-        faceSetDict.lookup("topoSetSources"),
-        topoSetSource::iNew(mesh)
-    );
-
-
-    // Load set to work
-    autoPtr<topoSet> currentSetPtr(NULL);
-    IOobject::readOption r;
-
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR))
-    {
-        r = IOobject::NO_READ;
-
-        currentSetPtr.reset
-        (
-            new faceSet
-            (
-                mesh,
-                setName,
-                mesh.nFaces()/10+1  // Reasonable size estimate.
-            )
-        );
-    }
-    else
-    {
-        r = IOobject::MUST_READ;
-
-        currentSetPtr.reset
-        (
-            new faceSet
-            (
-                mesh,
-                setName,
-                r
-            )
-        );
-    }
-
-    topoSet& currentSet = currentSetPtr();
-
-    Info<< "Set:" << currentSet.name()
-        << "  Size:" << currentSet.size()
-        << "  Action:" << actionName
-        << endl;
-
-    if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST))
-    {
-        // currentSet has been read so can make copy.
-        //backup(mesh, setName, currentSet, setName + "_old");
-    }
-
-    if (action == topoSetSource::CLEAR)
-    {
-        // Already handled above by not reading
-    }
-    else if (action == topoSetSource::INVERT)
-    {
-        currentSet.invert(currentSet.maxSize(mesh));
-    }
-    else if (action == topoSetSource::LIST)
-    {
-        currentSet.writeDebug(Info, mesh, 100);
-        Info<< endl;
-    }
-    else if (action == topoSetSource::SUBSET)
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            // Backup current set.
-            autoPtr<topoSet> oldSet
-            (
-                topoSet::New
-                (
-                    currentSet.type(),
-                    mesh,
-                    currentSet.name() + "_old2",
-                    currentSet
-                )
-            );
-
-            currentSet.clear();
-
-            topoSetSources[topoSetSourceI].applyToSet
-            (
-                topoSetSource::NEW,
-                currentSet
-            );
-
-            // Combine new value of currentSet with old one.
-            currentSet.subset(oldSet);
-        }
-    }
-    else
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            topoSetSources[topoSetSourceI].applyToSet(action, currentSet);
-        }
-    }
-
-
-    if (action != topoSetSource::LIST)
-    {
-        // Set has changed.
-
-        // Sync across coupled patches.
-        currentSet.sync(mesh);
-
-        Info<< "Writing " << currentSet.name()
-            << " (size " << currentSet.size() << ") to "
-            << currentSet.instance()/currentSet.local()
-               /currentSet.name()
-            << endl << endl;
-
-        currentSet.write();
-    }
-
-    Info<< "\nEnd\n" << endl;
-
-    return 0;
-}
-
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/faceSet/faceSetDict b/applications/utilities/mesh/manipulation/faceSet/faceSetDict
deleted file mode 100644
index fd0ea0c09d1..00000000000
--- a/applications/utilities/mesh/manipulation/faceSet/faceSetDict
+++ /dev/null
@@ -1,82 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    object      faceSetDict;
-}
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Name of set to operate on
-name f0;
-
-// One of clear/new/invert/add/delete|subset/list
-action new;
-
-// Actions to apply to pointSet. These are all the topoSetSource's ending
-// in ..ToFace (see the meshTools library).
-topoSetSources
-(
-    // Copy elements from faceSet
-    faceToFace
-    {
-        set f1;
-    }
-
-    // Select based on cellSet
-    cellToFace
-    {
-        set c0;
-        option all;         // All faces of cells
-        //option both;      // Only faces whose owner&neighbour are in cellSet
-    }
-
-    // Select based on pointSet
-    pointToFace
-    {
-        set p0;
-        option any;         // Faces using any point in pointSet
-        //option all        // Faces with all points in pointSet
-    }
-
-    //  Select by explicitly providing face labels
-    labelToFace
-    {
-        value (12 13 56);   // labels of faces
-    }
-
-    // All faces of patch
-    patchToFace
-    {
-        name ".*Wall";      // Name of patch, regular expressions allowed
-    }
-
-    // All faces of faceZone
-    zoneToFace
-    {
-        name ".*Zone1";     // Name of faceZone, regular expressions allowed
-    }
-
-    // Faces with face centre within box
-    boxToFace
-    {
-        box  (0 0 0) (1 1 1);
-    }
-
-    // Faces with normal to within certain angle aligned with vector.
-    normalToFace
-    {
-        normal (0 0 1);     // Vector
-        cos     0.01;       // Tolerance (max cos of angle)
-    }
-);
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/pointSet/Make/files b/applications/utilities/mesh/manipulation/pointSet/Make/files
deleted file mode 100644
index 321ed23bf4b..00000000000
--- a/applications/utilities/mesh/manipulation/pointSet/Make/files
+++ /dev/null
@@ -1,4 +0,0 @@
-pointSet.C
-
-EXE = $(FOAM_APPBIN)/pointSet
-
diff --git a/applications/utilities/mesh/manipulation/pointSet/Make/options b/applications/utilities/mesh/manipulation/pointSet/Make/options
deleted file mode 100644
index 54c035b8f55..00000000000
--- a/applications/utilities/mesh/manipulation/pointSet/Make/options
+++ /dev/null
@@ -1,5 +0,0 @@
-EXE_INC = \
-    -I$(LIB_SRC)/meshTools/lnInclude
-
-EXE_LIBS = \
-    -lmeshTools
diff --git a/applications/utilities/mesh/manipulation/pointSet/pointSet.C b/applications/utilities/mesh/manipulation/pointSet/pointSet.C
deleted file mode 100644
index 8219ec41b6c..00000000000
--- a/applications/utilities/mesh/manipulation/pointSet/pointSet.C
+++ /dev/null
@@ -1,196 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
-     \\/     M anipulation  |
--------------------------------------------------------------------------------
-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/>.
-
-Description
-    Selects a point set through a dictionary.
-
-\*---------------------------------------------------------------------------*/
-
-#include "argList.H"
-#include "Time.H"
-#include "polyMesh.H"
-#include "topoSetSource.H"
-#include "pointSet.H"
-
-using namespace Foam;
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Main program:
-
-int main(int argc, char *argv[])
-{
-#   include "setRootCase.H"
-#   include "createTime.H"
-#   include "createPolyMesh.H"
-
-    Info<< "Reading pointSetDict\n" << endl;
-
-    IOdictionary pointSetDict
-    (
-        IOobject
-        (
-            "pointSetDict",
-            runTime.system(),
-            mesh,
-            IOobject::MUST_READ,
-            IOobject::NO_WRITE
-        )
-    );
-
-
-    const word setName(pointSetDict.lookup("name"));
-    const word actionName(pointSetDict.lookup("action"));
-
-    topoSetSource::setAction action = topoSetSource::toAction(actionName);
-
-
-    // Create topoSetSources
-    PtrList<topoSetSource> topoSetSources
-    (
-        pointSetDict.lookup("topoSetSources"),
-        topoSetSource::iNew(mesh)
-    );
-
-
-    // Load set to work
-    autoPtr<topoSet> currentSetPtr(NULL);
-    IOobject::readOption r;
-
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR))
-    {
-        r = IOobject::NO_READ;
-
-        currentSetPtr.reset
-        (
-            new pointSet
-            (
-                mesh,
-                setName,
-                mesh.nPoints()/10+1  // Reasonable size estimate.
-            )
-        );
-    }
-    else
-    {
-        r = IOobject::MUST_READ;
-
-        currentSetPtr.reset
-        (
-            new pointSet
-            (
-                mesh,
-                setName,
-                r
-            )
-        );
-    }
-
-    topoSet& currentSet = currentSetPtr();
-
-    Info<< "Set:" << currentSet.name()
-        << "  Size:" << currentSet.size()
-        << "  Action:" << actionName
-        << endl;
-
-    if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST))
-    {
-        // currentSet has been read so can make copy.
-        //backup(mesh, setName, currentSet, setName + "_old");
-    }
-
-    if (action == topoSetSource::CLEAR)
-    {
-        // Already handled above by not reading
-    }
-    else if (action == topoSetSource::INVERT)
-    {
-        currentSet.invert(currentSet.maxSize(mesh));
-    }
-    else if (action == topoSetSource::LIST)
-    {
-        currentSet.writeDebug(Info, mesh, 100);
-        Info<< endl;
-    }
-    else if (action == topoSetSource::SUBSET)
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            // Backup current set.
-            autoPtr<topoSet> oldSet
-            (
-                topoSet::New
-                (
-                    currentSet.type(),
-                    mesh,
-                    currentSet.name() + "_old2",
-                    currentSet
-                )
-            );
-
-            currentSet.clear();
-
-            topoSetSources[topoSetSourceI].applyToSet
-            (
-                topoSetSource::NEW,
-                currentSet
-            );
-
-            // Combine new value of currentSet with old one.
-            currentSet.subset(oldSet);
-        }
-    }
-    else
-    {
-        // Apply topoSetSources to it to handle new/add/delete
-        forAll(topoSetSources, topoSetSourceI)
-        {
-            topoSetSources[topoSetSourceI].applyToSet(action, currentSet);
-        }
-    }
-
-
-    if (action != topoSetSource::LIST)
-    {
-        // Set has changed.
-
-        // Sync across coupled patches.
-        currentSet.sync(mesh);
-
-        Info<< "Writing " << currentSet.name()
-            << " (size " << currentSet.size() << ") to "
-            << currentSet.instance()/currentSet.local()
-               /currentSet.name()
-            << endl << endl;
-
-        currentSet.write();
-    }
-
-    Info<< "\nEnd\n" << endl;
-
-    return 0;
-}
-
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/pointSet/pointSetDict b/applications/utilities/mesh/manipulation/pointSet/pointSetDict
deleted file mode 100644
index 7d4dd656ae8..00000000000
--- a/applications/utilities/mesh/manipulation/pointSet/pointSetDict
+++ /dev/null
@@ -1,84 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    object      pointSetDict;
-}
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-// Name of set to operate on
-name p0;
-
-// One of clear/new/invert/add/delete|subset/list
-action new;
-
-// Actions to apply to pointSet. These are all the topoSetSource's ending
-// in ..ToPoint (see the meshTools library).
-topoSetSources
-(
-    // Copy elements from pointSet
-    pointToPoint
-    {
-        set p1;
-    }
-
-    // Select based on cellSet
-    cellToPoint
-    {
-        set c0;
-        option all;         // all points of cell
-    }
-
-    // Select based on faceSet
-    faceToPoint
-    {
-        set f0;             // name of faceSet
-        option all;         // all points of face
-    }
-
-    // Select by explicitly providing point labels
-    labelToPoint
-    {
-        value (12 13 56);   // labels of points
-    }
-
-    // All points in pointzone
-    zoneToPoint
-    {
-        name ".*Zone";      // name of pointZone, regular expressions allowed
-    }
-
-    // Points nearest to coordinates
-    nearestToPoint
-    {
-       points ((0 0 0) (1 1 1));
-    }
-
-    // Points with coordinate within box
-    boxToPoint
-    {
-       box   (0 0 0) (1 1 1);
-    }
-
-    // Select based on surface
-    surfaceToPoint
-    {
-        file            "www.avl.com-geometry.stl";
-        nearDistance    0.1;    // points near to surface
-        includeInside   false;  // points on inside of surface
-                                // (requires closed surface with consistent
-                                //  normals)
-        includeOutside  false;  //   ,,    outside  ,,
-    }
-);
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
index bd15b1cc081..d794ae342da 100644
--- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C
+++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
@@ -167,6 +167,7 @@ int main(int argc, char *argv[])
             case topoSetSource::INVERT:
                 Info<< "    Inverting set" << endl;
                 currentSet().invert(currentSet().maxSize(mesh));
+                currentSet().write();
             break;
 
             default:
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict
deleted file mode 100644
index d4c9e000656..00000000000
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
deleted file mode 100644
index 38fa0208ed9..00000000000
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_noBoundaryFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
deleted file mode 100644
index 3ccb7ad761d..00000000000
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_rotorFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          new;
-
-topoSetSources  ( cellToFace { set rotor ; option all ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict
deleted file mode 100644
index d4c9e000656..00000000000
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
deleted file mode 100644
index 38fa0208ed9..00000000000
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_noBoundaryFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
deleted file mode 100644
index 3ccb7ad761d..00000000000
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_rotorFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          new;
-
-topoSetSources  ( cellToFace { set rotor ; option all ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun
index a67553deb14..666ec8f2867 100755
--- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun
+++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun
@@ -10,7 +10,7 @@ application=`getApplication`
 runApplication blockMesh
 
 # create ignition cells cellSet
-runApplication cellSet
+runApplication topoSet
 
 runApplication $application
 
diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
similarity index 76%
rename from tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict
rename to tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
index bd2802d8bd1..ccaf0363cd2 100644
--- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict
+++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
@@ -10,21 +10,24 @@ FoamFile
     version     2.0;
     format      ascii;
     class       dictionary;
-    object      cellSetDict;
+    object      topoSetDict;
 }
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name ignitionCells;
-
-action new;
-
-topoSetSources
+actions
 (
-    sphereToCell
     {
-        centre          ( 0.125 0.375 0.05 );
-        radius          0.005;
+        name ignitionCells;
+        type cellSet;
+        action new;
+
+        source sphereToCell;
+        sourceDict
+        {
+            centre          ( 0.125 0.375 0.05 );
+            radius          0.005;
+        }
     }
 );
 
diff --git a/tutorials/multiphase/cavitatingFoam/les/Allclean b/tutorials/multiphase/cavitatingFoam/les/Allclean
index fae8abfab6a..68db65d125c 100755
--- a/tutorials/multiphase/cavitatingFoam/les/Allclean
+++ b/tutorials/multiphase/cavitatingFoam/les/Allclean
@@ -9,7 +9,7 @@ cd ${0%/*} || exit 1    # run from this directory
 
     rm -rf constant/polyMesh/sets > /dev/null 2>&1
     rm -rf 0/polyMesh > /dev/null 2>&1
-    rm system/cellSetDict > /dev/null 2>&1
+    rm system/topoSetDict > /dev/null 2>&1
 
     cleanCase
 )
@@ -21,7 +21,7 @@ cd ${0%/*} || exit 1    # run from this directory
     rm -rf constant/polyMesh/sets > /dev/null 2>&1
     rm -rf 0 > /dev/null 2>&1
     cp -r 0.org 0
-    rm system/cellSetDict > /dev/null 2>&1
+    rm system/topoSetDict > /dev/null 2>&1
     rm -rf processor[0-9] > /dev/null 2>&1
 
     cleanCase
diff --git a/tutorials/multiphase/cavitatingFoam/les/Allrun b/tutorials/multiphase/cavitatingFoam/les/Allrun
index caff26f5710..2cf6a091a2f 100755
--- a/tutorials/multiphase/cavitatingFoam/les/Allrun
+++ b/tutorials/multiphase/cavitatingFoam/les/Allrun
@@ -12,8 +12,8 @@ refineMeshByCellSet()
    while [ $# -ge 1 ]
    do
       echo "creating cell set for primary zone - $1"
-      cp system/cellSetDict.$1 system/cellSetDict
-      cellSet > log.cellSet.$1 2>&1
+      cp system/topoSetDict.$1 system/topoSetDict
+      topoSet > log.topoSet.$1 2>&1
 
       echo "refining primary zone - $1"
       refineMesh -dict -overwrite > log.refineMesh.$1 2>&1
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1
new file mode 100644
index 00000000000..1e1592ee394
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.1;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box (0.004 -0.001 -1) (0.012 0.001 1);
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2
new file mode 100644
index 00000000000..ab0289c1567
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.2;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box (0.0045 -0.00075 -1) (0.0095 0.00075 1);
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3
new file mode 100644
index 00000000000..3e504e9aef3
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.3;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box (0.00475 -0.000375 -1) (0.009 0.000375 1);
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1
deleted file mode 100644
index 2eb73c024ed..00000000000
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1
+++ /dev/null
@@ -1,31 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.1;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources
-(
-    boxToCell
-    {
-        box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 );
-    }
-);
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2
deleted file mode 100644
index 8a78bbba80f..00000000000
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2
+++ /dev/null
@@ -1,31 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.2;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources
-(
-    boxToCell
-    {
-        box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 );
-    }
-);
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3
deleted file mode 100644
index 3eb51acdc42..00000000000
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3
+++ /dev/null
@@ -1,31 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.3;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources
-(
-    boxToCell
-    {
-        box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 );
-    }
-);
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1
new file mode 100644
index 00000000000..cd2329f57dc
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.1;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 );
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2
new file mode 100644
index 00000000000..a8a80dff4d0
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.2;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 );
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3
new file mode 100644
index 00000000000..67021ba2196
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.3;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name            c0;
+        type            cellSet;
+        action          new;
+        source          boxToCell;
+        sourceDict
+        {
+            box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 );
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean
index 96f49541209..c49b5e9af36 100755
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean
@@ -6,7 +6,7 @@ cd ${0%/*} || exit 1    # run from this directory
 
 rm -rf constant/polyMesh/sets > /dev/null 2>&1
 rm -rf 0/polyMesh > /dev/null 2>&1
-rm system/cellSetDict > /dev/null 2>&1
+rm system/topoDict > /dev/null 2>&1
 cleanCase
 
 # ----------------------------------------------------------------- end-of-file
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun
index 878222cf807..9f117b0ba86 100755
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun
@@ -11,8 +11,8 @@ refineMeshByCellSet()
    while [ $# -ge 1 ]
    do
       echo "creating cell set for primary zone - $1"
-      cp system/cellSetDict.$1 system/cellSetDict
-      cellSet > log.cellSet.$1 2>&1
+      cp system/topoSetDict.$1 system/topoSetDict
+      topoSet > log.topoSet.$1 2>&1
 
       echo "refining primary zone - $1"
       refineMesh -dict -overwrite > log.refineMesh.$1 2>&1
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1
deleted file mode 100644
index 93a5a661f8b..00000000000
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.1;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2
deleted file mode 100644
index c7826d86894..00000000000
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.2;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3
deleted file mode 100644
index 87b315aafbb..00000000000
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.3;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict
new file mode 100644
index 00000000000..30e3ea00069
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.3;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ;
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1
similarity index 78%
rename from tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict
rename to tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1
index 304f1d94454..01e4f46a66a 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1
@@ -11,20 +11,21 @@ FoamFile
     format      ascii;
     class       dictionary;
     location    "system";
-    object      cellSetDict;
+    object      topoSetDict.1;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name filter;
-
-action new;
-
-topoSetSources
+actions
 (
-    // Cells with cell centre within box
-    boxToCell
     {
-       box   (1.5 -1 -1) (2 1 1);
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ;
+        }
     }
 );
 
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2
new file mode 100644
index 00000000000..20bc81f6ba9
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.2;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ;
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3
new file mode 100644
index 00000000000..30e3ea00069
--- /dev/null
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3
@@ -0,0 +1,33 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict.3;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+actions
+(
+    {
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ;
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean
index 2c6db87c7f2..d16400a94f6 100755
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean
@@ -4,7 +4,6 @@ cd ${0%/*} || exit 1    # run from this directory
 # Source tutorial clean functions
 . $WM_PROJECT_DIR/bin/tools/CleanFunctions
 
-rm system/cellSetDict > /dev/null 2>&1
 rm -rf 0 > /dev/null 2>&1
 
 cleanCase
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun
index 8016666d736..5613186ba27 100755
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun
@@ -7,19 +7,8 @@ cd ${0%/*} || exit 1    # run from this directory
 # Set application name
 application="interDyMFoam"
 
-makeMeshByCellSet()
-{
-    while [ $# -ge 1 ]
-    do
-        echo "Running cellSet operation $1"
-        cp system/cellSetDict.$1 system/cellSetDict
-        cellSet > log.cellSet.$1 2>&1
-        shift
-    done
-}
-
 runApplication blockMesh
-makeMeshByCellSet 1 2
+runApplication topoSet
 runApplication subsetMesh -overwrite c0 -patch floatingObject
 cp -r 0.org 0 > /dev/null 2>&1
 runApplication setFields
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2
deleted file mode 100644
index 57cc0658f72..00000000000
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2
+++ /dev/null
@@ -1,24 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    object      cellSetDict;
-}
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name c0;
-
-action invert;
-
-topoSetSources ();
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
similarity index 74%
rename from tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1
rename to tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
index 90a225e6a9a..c696d169b42 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
@@ -10,20 +10,28 @@ FoamFile
     version     2.0;
     format      ascii;
     class       dictionary;
-    object      cellSetDict;
+    object      topoSetDict;
 }
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name c0;
-
-action new;
-
-topoSetSources
+actions
 (
-    boxToCell
     {
-       box   (0.35 0.35 0.44) (0.65 0.65 0.56);
+        name c0;
+        type cellSet;
+        action new;
+        source boxToCell;
+        sourceDict
+        {
+           box   (0.35 0.35 0.44) (0.65 0.65 0.56);
+        }
+    }
+
+    {
+        name c0;
+        type cellSet;
+        action invert;
     }
 );
 
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh
index b0be10d8e5f..8ef4993fdeb 100755
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh
@@ -2,10 +2,5 @@
 
 m4 < constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict
 blockMesh
-cellSet
-#- MRF determines its own faceZone if not supplied
-#cp system/faceSetDict_rotorFaces system/faceSetDict
-#faceSet
-#cp system/faceSetDict_noBoundaryFaces system/faceSetDict
-#faceSet
+topoSet
 setsToZones -noFlipMap
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict
deleted file mode 100644
index ae58e6ff702..00000000000
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          new;
-
-topoSetSources  ( zoneToCell { name rotor ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict
deleted file mode 100644
index d4c9e000656..00000000000
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
deleted file mode 100644
index 38fa0208ed9..00000000000
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_noBoundaryFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          delete;
-
-topoSetSources  ( boundaryToFace { } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces
deleted file mode 100644
index 3ccb7ad761d..00000000000
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      faceSetDict_rotorFaces;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            rotor;
-
-action          new;
-
-topoSetSources  ( cellToFace { set rotor ; option all ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict
new file mode 100644
index 00000000000..b89e6319bf4
--- /dev/null
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict
@@ -0,0 +1,34 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    location    "system";
+    object      topoSetDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+
+actions
+(
+    {
+        name            rotor;
+        type            cellSet;
+        action          new;
+        source          zoneToCell;
+        sourceDict
+        {
+            name rotor;
+        }
+    }
+);
+
+
+// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun
index c233dfa3568..cb29d4ff801 100755
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun
@@ -17,19 +17,19 @@ runRefineMesh()
 runApplication blockMesh
 
 i=1
-if [ -f log.cellSet ]
+if [ -f log.topoSet ]
 then
     i=3
 fi
 
 while [ "$i" -lt 3 ]
 do
-    if [ -f log.cellSet ]
+    if [ -f log.topoSet ]
     then
-        mv log.cellSet log.cellSet.1
+        mv log.topoSet log.topoSet.1
     fi
-    cp system/cellSetDict.${i} system/cellSetDict
-    runApplication cellSet
+    cp system/topoSetDict.${i} system/topoSetDict
+    runApplication topoSet
     runRefineMesh
     cp -r 1e-08/polyMesh/* constant/polyMesh
     rm -rf 1e-08
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict
deleted file mode 100644
index f7d399ef060..00000000000
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.2;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1
deleted file mode 100644
index adf351bd6fa..00000000000
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.1;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2
deleted file mode 100644
index f7d399ef060..00000000000
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2
+++ /dev/null
@@ -1,25 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       dictionary;
-    location    "system";
-    object      cellSetDict.2;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-name            c0;
-
-action          new;
-
-topoSetSources  ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } );
-
-
-// ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict
similarity index 78%
rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1
rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict
index 8b6a6950d8c..cf1a5033ebe 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict
@@ -11,19 +11,21 @@ FoamFile
     format      ascii;
     class       dictionary;
     location    "system";
-    object      cellSetDict.1;
+    object      topoSetDict.2;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name            c0;
-
-action          new;
-
-topoSetSources
+actions
 (
-    boxToCell
     {
-        box (0.004 -0.001 -1) (0.012 0.001 1);
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 );
+        }
     }
 );
 
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1
similarity index 78%
rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3
rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1
index 967c4deacc2..5c87356b4a8 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1
@@ -11,21 +11,22 @@ FoamFile
     format      ascii;
     class       dictionary;
     location    "system";
-    object      cellSetDict.3;
+    object      topoSetDict.1;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name            c0;
-
-action          new;
-
-topoSetSources
+actions
 (
-    boxToCell
     {
-        box (0.00475 -0.000375 -1) (0.009 0.000375 1);
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ;
+        }
     }
 );
 
-
 // ************************************************************************* //
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2
similarity index 78%
rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2
rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2
index 9c999712069..cf1a5033ebe 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2
@@ -11,19 +11,21 @@ FoamFile
     format      ascii;
     class       dictionary;
     location    "system";
-    object      cellSetDict.2;
+    object      topoSetDict.2;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-name            c0;
-
-action          new;
-
-topoSetSources
+actions
 (
-    boxToCell
     {
-        box (0.0045 -0.00075 -1) (0.0095 0.00075 1);
+        name    c0;
+        type    cellSet;
+        action  new;
+        source  boxToCell;
+        sourceDict
+        {
+            box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 );
+        }
     }
 );
 
-- 
GitLab