From 7325e3ac7d190b4b051a660321e2ceeb6aa4b127 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@esi-group.com>
Date: Tue, 30 Oct 2018 15:09:44 +0000
Subject: [PATCH] ENH: topoSetSource::SUBTRACT enum action (#1060)

- old 'DELETE' enum was easily confused with 'REMOVE', which removes
  the set, not the elements from the set.

- provide corresponding subtractSet() method

STYLE: HashSet set/unset instead of insert/erase methods in topoSetSource

- simplifies switching to/from bitSet storage
---
 .../mesh/manipulation/setSet/setSet.C         |  4 +--
 .../mesh/manipulation/topoSet/topoSet.C       |  6 ++--
 .../badQualityToCell/badQualityToCell.C       |  4 +--
 .../badQualityToFace/badQualityToFace.C       |  4 +--
 .../sets/cellSources/boxToCell/boxToCell.C    |  8 ++---
 .../sets/cellSources/cellToCell/cellToCell.C  |  6 ++--
 .../cylinderAnnulusToCell.C                   |  4 +--
 .../cylinderToCell/cylinderToCell.C           |  4 +--
 .../sets/cellSources/faceToCell/faceToCell.C  |  4 +--
 .../faceZoneToCell/faceZoneToCell.C           |  4 +--
 .../cellSources/fieldToCell/fieldToCell.C     | 11 +++---
 .../cellSources/labelToCell/labelToCell.C     |  4 +--
 .../sets/cellSources/nbrToCell/nbrToCell.C    |  4 +--
 .../cellSources/nearestToCell/nearestToCell.C |  4 +--
 .../cellSources/pointToCell/pointToCell.C     |  4 +--
 .../cellSources/regionToCell/regionToCell.C   |  4 +--
 .../rotatedBoxToCell/rotatedBoxToCell.C       |  8 ++---
 .../cellSources/shapeToCell/shapeToCell.C     |  4 +--
 .../cellSources/sphereToCell/sphereToCell.C   |  4 +--
 .../cellSources/surfaceToCell/surfaceToCell.C |  4 +--
 .../targetVolumeToCell/targetVolumeToCell.C   |  4 +--
 .../sets/cellSources/zoneToCell/zoneToCell.C  |  4 +--
 .../setToCellZone/setToCellZone.C             | 26 +++++++-------
 .../boundaryToFace/boundaryToFace.C           |  4 +--
 .../sets/faceSources/boxToFace/boxToFace.C    |  4 +--
 .../sets/faceSources/cellToFace/cellToFace.C  |  4 +--
 .../cylinderAnnulusToFace.C                   |  4 +--
 .../cylinderToFace/cylinderToFace.C           |  4 +--
 .../sets/faceSources/faceToFace/faceToFace.C  |  6 ++--
 .../faceSources/labelToFace/labelToFace.C     |  4 +--
 .../faceSources/normalToFace/normalToFace.C   |  8 ++---
 .../faceSources/patchToFace/patchToFace.C     |  4 +--
 .../faceSources/pointToFace/pointToFace.C     |  4 +--
 .../faceSources/regionToFace/regionToFace.C   |  4 +--
 .../sets/faceSources/zoneToFace/zoneToFace.C  |  4 +--
 .../faceZoneToFaceZone/faceZoneToFaceZone.C   | 36 +++++++++----------
 .../searchableSurfaceToFaceZone.C             |  4 +--
 .../setAndNormalToFaceZone.C                  | 36 +++++++++----------
 .../setToFaceZone/setToFaceZone.C             | 36 +++++++++----------
 .../setsToFaceZone/setsToFaceZone.C           | 36 +++++++++----------
 .../sets/pointSources/boxToPoint/boxToPoint.C |  4 +--
 .../pointSources/cellToPoint/cellToPoint.C    |  4 +--
 .../pointSources/faceToPoint/faceToPoint.C    |  4 +--
 .../pointSources/labelToPoint/labelToPoint.C  |  4 +--
 .../nearestToPoint/nearestToPoint.C           |  4 +--
 .../pointSources/pointToPoint/pointToPoint.C  |  6 ++--
 .../surfaceToPoint/surfaceToPoint.C           |  4 +--
 .../pointSources/zoneToPoint/zoneToPoint.C    |  4 +--
 .../setToPointZone/setToPointZone.C           | 26 +++++++-------
 .../sets/topoSetSource/topoSetSource.C        | 21 +++++------
 .../sets/topoSetSource/topoSetSource.H        | 29 +++++++--------
 src/meshTools/sets/topoSets/cellZoneSet.C     |  4 +--
 src/meshTools/sets/topoSets/cellZoneSet.H     |  4 +--
 src/meshTools/sets/topoSets/faceSet.C         |  4 +--
 src/meshTools/sets/topoSets/faceZoneSet.C     |  6 ++--
 src/meshTools/sets/topoSets/faceZoneSet.H     |  4 +--
 src/meshTools/sets/topoSets/pointSet.C        |  4 +--
 src/meshTools/sets/topoSets/pointZoneSet.C    |  4 +--
 src/meshTools/sets/topoSets/pointZoneSet.H    |  4 +--
 src/meshTools/sets/topoSets/topoSet.C         | 20 +++++++----
 src/meshTools/sets/topoSets/topoSet.H         |  6 +++-
 src/meshTools/surfaceSets/surfaceSets.C       |  6 ++--
 src/overset/regionsToCell/regionsToCell.C     |  4 +--
 .../LES/compartmentFire/system/topoSetDict    |  8 +----
 .../twoSimpleRotors/system/topoSetDict        |  2 +-
 .../externalSolarLoad/system/topoSetDict      |  4 +--
 .../twoSimpleRotors/system/topoSetDict        |  2 +-
 .../RAS/TJunctionFan/system/topoSetDict       |  2 +-
 .../simpleFoam/pipeCyclic/system/topoSetDict  |  2 +-
 .../hotBoxes/createObstacle.setSet            |  8 ++---
 .../hotBoxes/system/topoSetDict               |  8 ++---
 .../foamyHexMesh/flange/system/faceSetDict    |  4 +--
 .../flange/system/topoSetDict-background      |  2 +-
 .../simple-cube1/system/topoSetDict           |  4 +--
 .../laminar/sphereDrop/system/topoSetDict     |  2 +-
 .../createObstacle.setSet                     |  2 +-
 .../damBreakWithObstacle/system/topoSetDict   |  2 +-
 .../damBreakWithObstacle/system/topoSetDict   |  2 +-
 .../twoSimpleRotors/system/topoSetDict        |  2 +-
 79 files changed, 288 insertions(+), 283 deletions(-)

diff --git a/applications/utilities/mesh/manipulation/setSet/setSet.C b/applications/utilities/mesh/manipulation/setSet/setSet.C
index bc800b920ae..fa48186c90c 100644
--- a/applications/utilities/mesh/manipulation/setSet/setSet.C
+++ b/applications/utilities/mesh/manipulation/setSet/setSet.C
@@ -132,9 +132,9 @@ void printHelp(Ostream& os)
         << "    clear           - clears the set" << nl
         << "    invert          - inverts the set" << nl
         << "    remove          - remove the set" << nl
-        << "    new <source>    - sets to set to the source set" << nl
+        << "    new <source>    - use all elements from the source set" << nl
         << "    add <source>    - adds all elements from the source set" << nl
-        << "    delete <source> - deletes      ,," << nl
+        << "    subtract <source> - subtract the source set elements" << nl
         << "    subset <source> - combines current set with the source set"
         << nl
         << nl
diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
index f08ea751690..a9cd056c58f 100644
--- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C
+++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
@@ -247,8 +247,8 @@ int main(int argc, char *argv[])
             autoPtr<topoSet> currentSet;
             if
             (
-                (action == topoSetSource::NEW)
-             || (action == topoSetSource::CLEAR)
+                action == topoSetSource::NEW
+             || action == topoSetSource::CLEAR
             )
             {
                 currentSet = topoSet::New(setType, mesh, setName, 10000);
@@ -281,7 +281,7 @@ int main(int argc, char *argv[])
             {
                 case topoSetSource::NEW:
                 case topoSetSource::ADD:
-                case topoSetSource::DELETE:
+                case topoSetSource::SUBTRACT:
                 {
                     const word sourceName(dict.get<word>("source"));
 
diff --git a/src/dynamicMesh/motionSmoother/badQualityToCell/badQualityToCell.C b/src/dynamicMesh/motionSmoother/badQualityToCell/badQualityToCell.C
index 81788a57035..12841270806 100644
--- a/src/dynamicMesh/motionSmoother/badQualityToCell/badQualityToCell.C
+++ b/src/dynamicMesh/motionSmoother/badQualityToCell/badQualityToCell.C
@@ -114,12 +114,12 @@ void Foam::badQualityToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding bad-quality cells" << endl;
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing bad-quality cells" << endl;
         combine(set, false);
diff --git a/src/dynamicMesh/motionSmoother/badQualityToFace/badQualityToFace.C b/src/dynamicMesh/motionSmoother/badQualityToFace/badQualityToFace.C
index d98621d5245..1b7ee0d2ac6 100644
--- a/src/dynamicMesh/motionSmoother/badQualityToFace/badQualityToFace.C
+++ b/src/dynamicMesh/motionSmoother/badQualityToFace/badQualityToFace.C
@@ -110,12 +110,12 @@ void Foam::badQualityToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding bad-quality faces" << endl;
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing bad-quality faces" << endl;
         combine(set, false);
diff --git a/src/meshTools/sets/cellSources/boxToCell/boxToCell.C b/src/meshTools/sets/cellSources/boxToCell/boxToCell.C
index 5d4b7bcd4cb..b403151a590 100644
--- a/src/meshTools/sets/cellSources/boxToCell/boxToCell.C
+++ b/src/meshTools/sets/cellSources/boxToCell/boxToCell.C
@@ -142,15 +142,15 @@ void Foam::boxToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
-        Info<< "    Adding cells with center within boxes " << bbs_ << endl;
+        Info<< "    Adding cells with centre within boxes " << bbs_ << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
-        Info<< "    Removing cells with center within boxes " << bbs_ << endl;
+        Info<< "    Removing cells with centre within boxes " << bbs_ << endl;
 
         combine(set, false);
     }
diff --git a/src/meshTools/sets/cellSources/cellToCell/cellToCell.C b/src/meshTools/sets/cellSources/cellToCell/cellToCell.C
index 565ad65e342..aa23317c567 100644
--- a/src/meshTools/sets/cellSources/cellToCell/cellToCell.C
+++ b/src/meshTools/sets/cellSources/cellToCell/cellToCell.C
@@ -94,7 +94,7 @@ void Foam::cellToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::ADD) || (action == topoSetSource::NEW))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all elements of cellSet " << setName_ << " ..."
             << endl;
@@ -104,7 +104,7 @@ void Foam::cellToCell::applyToSet
 
         set.addSet(loadedSet);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all elements of cellSet " << setName_ << " ..."
             << endl;
@@ -112,7 +112,7 @@ void Foam::cellToCell::applyToSet
         // Load the set
         cellSet loadedSet(mesh_, setName_);
 
-        set.deleteSet(loadedSet);
+        set.subtractSet(loadedSet);
     }
 }
 
diff --git a/src/meshTools/sets/cellSources/cylinderAnnulusToCell/cylinderAnnulusToCell.C b/src/meshTools/sets/cellSources/cylinderAnnulusToCell/cylinderAnnulusToCell.C
index 033b7602ce4..4cb8e1bfed3 100644
--- a/src/meshTools/sets/cellSources/cylinderAnnulusToCell/cylinderAnnulusToCell.C
+++ b/src/meshTools/sets/cellSources/cylinderAnnulusToCell/cylinderAnnulusToCell.C
@@ -158,7 +158,7 @@ void Foam::cylinderAnnulusToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells with centre within cylinder annulus,"
             << " with p1 = "
@@ -168,7 +168,7 @@ void Foam::cylinderAnnulusToCell::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells with centre within cylinder annulus,"
             << " with p1 = "
diff --git a/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.C b/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.C
index 910868d1717..7eb50853a6c 100644
--- a/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.C
+++ b/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.C
@@ -142,7 +142,7 @@ void Foam::cylinderToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells with centre within cylinder, with p1 = "
             << point1_ << ", p2 = " << point2_ << ", radius = " << radius_
@@ -150,7 +150,7 @@ void Foam::cylinderToCell::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells with centre within cylinder, with p1 = "
             << point1_ << ", p2 = " << point2_ << ", radius = " << radius_
diff --git a/src/meshTools/sets/cellSources/faceToCell/faceToCell.C b/src/meshTools/sets/cellSources/faceToCell/faceToCell.C
index 5966d80fa26..8d7d1365307 100644
--- a/src/meshTools/sets/cellSources/faceToCell/faceToCell.C
+++ b/src/meshTools/sets/cellSources/faceToCell/faceToCell.C
@@ -176,14 +176,14 @@ void Foam::faceToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells according to faceSet " << setName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells according to faceSet " << setName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.C b/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.C
index 8079cd72d0c..9d50ffa689b 100644
--- a/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.C
+++ b/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.C
@@ -159,7 +159,7 @@ void Foam::faceZoneToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all " << faceActionNames_[option_]
             << " cells of face zones "
@@ -167,7 +167,7 @@ void Foam::faceZoneToCell::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all " << faceActionNames_[option_]
             << " cells of face zones "
diff --git a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
index c12bbab2c48..cf57936c728 100644
--- a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
+++ b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
@@ -74,10 +74,9 @@ void Foam::fieldToCell::applyToSet
     topoSet& set
 ) const
 {
-    Info<< "    Field min:" << min(field)
-        << " max:" << max(field) << endl;
+    Info<< "    Field min:" << min(field) << " max:" << max(field) << endl;
 
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all cells with value of field " << fieldName_
             << " within range " << min_ << ".." << max_ << endl;
@@ -86,11 +85,11 @@ void Foam::fieldToCell::applyToSet
         {
             if (field[celli] >= min_ && field[celli] <= max_)
             {
-                set.insert(celli);
+                set.set(celli);
             }
         }
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells with value of field " << fieldName_
             << " within range " << min_ << ".." << max_ << endl;
@@ -99,7 +98,7 @@ void Foam::fieldToCell::applyToSet
         {
             if (field[celli] >= min_ && field[celli] <= max_)
             {
-                set.erase(celli);
+                set.unset(celli);
             }
         }
     }
diff --git a/src/meshTools/sets/cellSources/labelToCell/labelToCell.C b/src/meshTools/sets/cellSources/labelToCell/labelToCell.C
index a314644f5e3..5828a2ba813 100644
--- a/src/meshTools/sets/cellSources/labelToCell/labelToCell.C
+++ b/src/meshTools/sets/cellSources/labelToCell/labelToCell.C
@@ -116,13 +116,13 @@ void Foam::labelToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells mentioned in dictionary" << " ..." << endl;
 
         addOrDelete(set, labels_, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells mentioned in dictionary" << " ..." << endl;
 
diff --git a/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.C b/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.C
index 7201163abc7..4a62f60f723 100644
--- a/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.C
+++ b/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.C
@@ -151,14 +151,14 @@ void Foam::nbrToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells with only " << minNbrs_ << " or less"
                 " neighbouring cells" << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells with only " << minNbrs_ << " or less"
                 " neighbouring cells" << " ..." << endl;
diff --git a/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.C b/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.C
index 1894e5ec825..924de4ca6dd 100644
--- a/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.C
+++ b/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.C
@@ -152,13 +152,13 @@ void Foam::nearestToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells nearest to " << points_ << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells nearest to " << points_ << endl;
 
diff --git a/src/meshTools/sets/cellSources/pointToCell/pointToCell.C b/src/meshTools/sets/cellSources/pointToCell/pointToCell.C
index 03fa90f1139..26e0a619f14 100644
--- a/src/meshTools/sets/cellSources/pointToCell/pointToCell.C
+++ b/src/meshTools/sets/cellSources/pointToCell/pointToCell.C
@@ -159,14 +159,14 @@ void Foam::pointToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells according to pointSet " << setName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells according to pointSet " << setName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/cellSources/regionToCell/regionToCell.C b/src/meshTools/sets/cellSources/regionToCell/regionToCell.C
index 4d5b22b4c24..10df22acf0f 100644
--- a/src/meshTools/sets/cellSources/regionToCell/regionToCell.C
+++ b/src/meshTools/sets/cellSources/regionToCell/regionToCell.C
@@ -432,14 +432,14 @@ void Foam::regionToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all cells of connected region containing points "
             << insidePoints_ << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells of connected region containing points "
             << insidePoints_ << " ..." << endl;
diff --git a/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.C b/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.C
index db7cde1c758..f4c8216e691 100644
--- a/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.C
+++ b/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.C
@@ -176,15 +176,15 @@ void Foam::rotatedBoxToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
-        Info<< "    Adding cells with center within rotated box " << endl;
+        Info<< "    Adding cells with centre within rotated box " << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
-        Info<< "    Removing cells with center within rotated box " << endl;
+        Info<< "    Removing cells with centre within rotated box " << endl;
 
         combine(set, false);
     }
diff --git a/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.C b/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.C
index 5bdbe838e6c..9fda5ad9ada 100644
--- a/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.C
+++ b/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.C
@@ -142,13 +142,13 @@ void Foam::shapeToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all cells of type " << type_ << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells of type " << type_ << " ..." << endl;
 
diff --git a/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.C b/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.C
index c79625b6277..0c164dc714a 100644
--- a/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.C
+++ b/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.C
@@ -129,14 +129,14 @@ void Foam::sphereToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells within a sphere with centre = "
             << origin_ << " and radius = " << radius_ << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells within a sphere with centre = "
             << origin_ << " and radius = " << radius_ << endl;
diff --git a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C
index 04cd8842e1b..5723b9962c7 100644
--- a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C
+++ b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C
@@ -487,14 +487,14 @@ void Foam::surfaceToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells in relation to surface " << surfName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells in relation to surface " << surfName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/cellSources/targetVolumeToCell/targetVolumeToCell.C b/src/meshTools/sets/cellSources/targetVolumeToCell/targetVolumeToCell.C
index bf34accc7fe..12862a2adaf 100644
--- a/src/meshTools/sets/cellSources/targetVolumeToCell/targetVolumeToCell.C
+++ b/src/meshTools/sets/cellSources/targetVolumeToCell/targetVolumeToCell.C
@@ -327,14 +327,14 @@ void Foam::targetVolumeToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding cells up to target volume " << vol_
             << " out of total volume " << gSum(mesh_.cellVolumes()) << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing cells up to target volume " << vol_
             << " out of total volume " << gSum(mesh_.cellVolumes()) << endl;
diff --git a/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.C b/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.C
index 81959a589b8..16003df577e 100644
--- a/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.C
+++ b/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.C
@@ -152,14 +152,14 @@ void Foam::zoneToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all cells of cell zones "
             << flatOutput(selectedZones_) << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells of cell zones "
             << flatOutput(selectedZones_) << " ..." << endl;
diff --git a/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.C b/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.C
index 0a6e6e8fe9e..51c55942d2d 100644
--- a/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.C
+++ b/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.C
@@ -96,9 +96,9 @@ void Foam::setToCellZone::applyToSet
     }
     else
     {
-        cellZoneSet& fzSet = refCast<cellZoneSet>(set);
+        cellZoneSet& zoneSet = refCast<cellZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all cells from cellSet " << setName_
                 << " ..." << endl;
@@ -107,20 +107,20 @@ void Foam::setToCellZone::applyToSet
             cellSet fSet(mesh_, setName_);
 
             // Start off from copy
-            DynamicList<label> newAddressing(fzSet.addressing());
+            DynamicList<label> newAddressing(zoneSet.addressing());
 
             for (const label celli : fSet)
             {
-                if (!fzSet.found(celli))
+                if (!zoneSet.found(celli))
                 {
                     newAddressing.append(celli);
                 }
             }
 
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all cells from cellSet " << setName_
                 << " ..." << endl;
@@ -129,17 +129,17 @@ void Foam::setToCellZone::applyToSet
             cellSet loadedSet(mesh_, setName_);
 
             // Start off empty
-            DynamicList<label> newAddressing(fzSet.addressing().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
 
-            forAll(fzSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fzSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fzSet.addressing()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
                 }
             }
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.C b/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.C
index 73d8336a89d..c788a3aeee5 100644
--- a/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.C
+++ b/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.C
@@ -113,13 +113,13 @@ void Foam::boundaryToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all boundary faces ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all boundary faces ..." << endl;
 
diff --git a/src/meshTools/sets/faceSources/boxToFace/boxToFace.C b/src/meshTools/sets/faceSources/boxToFace/boxToFace.C
index 572e1ffd7ce..1a8bbd1d122 100644
--- a/src/meshTools/sets/faceSources/boxToFace/boxToFace.C
+++ b/src/meshTools/sets/faceSources/boxToFace/boxToFace.C
@@ -142,13 +142,13 @@ void Foam::boxToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces with centre within boxes " << bbs_ << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces with centre within boxes " << bbs_ << endl;
 
diff --git a/src/meshTools/sets/faceSources/cellToFace/cellToFace.C b/src/meshTools/sets/faceSources/cellToFace/cellToFace.C
index 34dc77bfe82..4147aece2ca 100644
--- a/src/meshTools/sets/faceSources/cellToFace/cellToFace.C
+++ b/src/meshTools/sets/faceSources/cellToFace/cellToFace.C
@@ -196,14 +196,14 @@ void Foam::cellToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces according to cellSet " << setName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces according to cellSet " << setName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/faceSources/cylinderAnnulusToFace/cylinderAnnulusToFace.C b/src/meshTools/sets/faceSources/cylinderAnnulusToFace/cylinderAnnulusToFace.C
index 8366a41f2f5..89db47312e3 100644
--- a/src/meshTools/sets/faceSources/cylinderAnnulusToFace/cylinderAnnulusToFace.C
+++ b/src/meshTools/sets/faceSources/cylinderAnnulusToFace/cylinderAnnulusToFace.C
@@ -158,7 +158,7 @@ void Foam::cylinderAnnulusToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces with centre within cylinder annulus,"
             << " with p1 = "
@@ -168,7 +168,7 @@ void Foam::cylinderAnnulusToFace::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces with centre within cylinder annulus,"
             << " with p1 = "
diff --git a/src/meshTools/sets/faceSources/cylinderToFace/cylinderToFace.C b/src/meshTools/sets/faceSources/cylinderToFace/cylinderToFace.C
index 6e40dda85cf..ec993610b05 100644
--- a/src/meshTools/sets/faceSources/cylinderToFace/cylinderToFace.C
+++ b/src/meshTools/sets/faceSources/cylinderToFace/cylinderToFace.C
@@ -142,7 +142,7 @@ void Foam::cylinderToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces with centre within cylinder, with  p1 = "
             << point1_ << ", p2 = " << point2_ << ", radius = " << radius_
@@ -150,7 +150,7 @@ void Foam::cylinderToFace::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces with centre within cylinder, with p1 = "
             << point1_ << ", p2 = " << point2_ << ", radius = " << radius_
diff --git a/src/meshTools/sets/faceSources/faceToFace/faceToFace.C b/src/meshTools/sets/faceSources/faceToFace/faceToFace.C
index 4310fda9958..1bfa44e824d 100644
--- a/src/meshTools/sets/faceSources/faceToFace/faceToFace.C
+++ b/src/meshTools/sets/faceSources/faceToFace/faceToFace.C
@@ -94,7 +94,7 @@ void Foam::faceToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all faces from faceSet " << setName_ << " ..."
             << endl;
@@ -104,7 +104,7 @@ void Foam::faceToFace::applyToSet
 
         set.addSet(loadedSet);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all faces from faceSet " << setName_ << " ..."
             << endl;
@@ -112,7 +112,7 @@ void Foam::faceToFace::applyToSet
         // Load the set
         faceSet loadedSet(mesh_, setName_);
 
-        set.deleteSet(loadedSet);
+        set.subtractSet(loadedSet);
     }
 }
 
diff --git a/src/meshTools/sets/faceSources/labelToFace/labelToFace.C b/src/meshTools/sets/faceSources/labelToFace/labelToFace.C
index 0f085a42324..0a6147550b9 100644
--- a/src/meshTools/sets/faceSources/labelToFace/labelToFace.C
+++ b/src/meshTools/sets/faceSources/labelToFace/labelToFace.C
@@ -120,13 +120,13 @@ void Foam::labelToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces mentioned in dictionary" << " ..." << endl;
 
         addOrDelete(set, labels_, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces mentioned dictionary" << " ..." << endl;
 
diff --git a/src/meshTools/sets/faceSources/normalToFace/normalToFace.C b/src/meshTools/sets/faceSources/normalToFace/normalToFace.C
index 3c5c309afcb..2bf77f29710 100644
--- a/src/meshTools/sets/faceSources/normalToFace/normalToFace.C
+++ b/src/meshTools/sets/faceSources/normalToFace/normalToFace.C
@@ -128,7 +128,7 @@ void Foam::normalToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces according to normal being aligned with "
             << normal_ << " (to within " << tol_ << ") ..." << endl;
@@ -139,11 +139,11 @@ void Foam::normalToFace::applyToSet
 
             if (mag(1 - (n & normal_)) < tol_)
             {
-                set.insert(facei);
+                set.set(facei);
             }
         }
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces according to normal being aligned with "
             << normal_ << " (to within " << tol_ << ") ..." << endl;
@@ -160,7 +160,7 @@ void Foam::normalToFace::applyToSet
             }
         }
 
-        set.erase(toBeRemoved);
+        set.unset(toBeRemoved);
     }
 }
 
diff --git a/src/meshTools/sets/faceSources/patchToFace/patchToFace.C b/src/meshTools/sets/faceSources/patchToFace/patchToFace.C
index 8a3045f1b7b..46da30cbe9a 100644
--- a/src/meshTools/sets/faceSources/patchToFace/patchToFace.C
+++ b/src/meshTools/sets/faceSources/patchToFace/patchToFace.C
@@ -152,14 +152,14 @@ void Foam::patchToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all faces of patches "
             << flatOutput(selectedPatches_) << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all faces of patches "
             << flatOutput(selectedPatches_) << " ..." << endl;
diff --git a/src/meshTools/sets/faceSources/pointToFace/pointToFace.C b/src/meshTools/sets/faceSources/pointToFace/pointToFace.C
index 7c0ca179725..8b6d9168b91 100644
--- a/src/meshTools/sets/faceSources/pointToFace/pointToFace.C
+++ b/src/meshTools/sets/faceSources/pointToFace/pointToFace.C
@@ -204,14 +204,14 @@ void Foam::pointToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding faces according to pointSet " << setName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing faces according to pointSet " << setName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/faceSources/regionToFace/regionToFace.C b/src/meshTools/sets/faceSources/regionToFace/regionToFace.C
index a06e5d53afa..a5ebb929e78 100644
--- a/src/meshTools/sets/faceSources/regionToFace/regionToFace.C
+++ b/src/meshTools/sets/faceSources/regionToFace/regionToFace.C
@@ -234,7 +234,7 @@ void Foam::regionToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all faces of connected region of set "
             << setName_
@@ -243,7 +243,7 @@ void Foam::regionToFace::applyToSet
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells of connected region of set "
             << setName_
diff --git a/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.C b/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.C
index 1830bb94b2f..becbcb66dc2 100644
--- a/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.C
+++ b/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.C
@@ -152,14 +152,14 @@ void Foam::zoneToFace::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all faces of face zones "
             << flatOutput(selectedZones_) << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all faces of face zones "
             << flatOutput(selectedZones_) << " ..." << endl;
diff --git a/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C b/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C
index dfd056ae0ad..db90f92d511 100644
--- a/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.C
@@ -96,9 +96,9 @@ void Foam::faceZoneToFaceZone::applyToSet
     }
     else
     {
-        faceZoneSet& fSet = refCast<faceZoneSet>(set);
+        faceZoneSet& zoneSet = refCast<faceZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all faces from faceZone " << setName_ << " ..."
                 << endl;
@@ -106,22 +106,22 @@ void Foam::faceZoneToFaceZone::applyToSet
             // Load the set
             faceZoneSet loadedSet(mesh_, setName_);
 
-            DynamicList<label> newAddressing(fSet.addressing());
-            DynamicList<bool> newFlipMap(fSet.flipMap());
+            DynamicList<label> newAddressing(zoneSet.addressing());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap());
 
             forAll(loadedSet.addressing(), i)
             {
-                if (!fSet.found(loadedSet.addressing()[i]))
+                if (!zoneSet.found(loadedSet.addressing()[i]))
                 {
                     newAddressing.append(loadedSet.addressing()[i]);
                     newFlipMap.append(loadedSet.flipMap()[i]);
                 }
             }
-            fSet.addressing().transfer(newAddressing);
-            fSet.flipMap().transfer(newFlipMap);
-            fSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all faces from faceZone " << setName_ << " ..."
                 << endl;
@@ -129,20 +129,20 @@ void Foam::faceZoneToFaceZone::applyToSet
             // Load the set
             faceZoneSet loadedSet(mesh_, setName_);
 
-            DynamicList<label> newAddressing(fSet.addressing().size());
-            DynamicList<bool> newFlipMap(fSet.flipMap().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap().size());
 
-            forAll(fSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fSet.addressing()[i]);
-                    newFlipMap.append(fSet.flipMap()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
+                    newFlipMap.append(zoneSet.flipMap()[i]);
                 }
             }
-            fSet.addressing().transfer(newAddressing);
-            fSet.flipMap().transfer(newFlipMap);
-            fSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C b/src/meshTools/sets/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C
index 173c852cd69..90472163020 100644
--- a/src/meshTools/sets/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/searchableSurfaceToFaceZone/searchableSurfaceToFaceZone.C
@@ -162,7 +162,7 @@ void Foam::searchableSurfaceToFaceZone::applyToSet
         // Select intersected faces
         // ~~~~~~~~~~~~~~~~~~~~~~~~
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all faces from surface "
                 << surfacePtr_().name() << " ..." << endl;
@@ -184,7 +184,7 @@ void Foam::searchableSurfaceToFaceZone::applyToSet
             fzSet.flipMap().transfer(newFlipMap);
             fzSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all faces from surface "
                 << surfacePtr_().name() << " ..." << endl;
diff --git a/src/meshTools/sets/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C b/src/meshTools/sets/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C
index 3b4e6ed5b7a..bd34ad6cf93 100644
--- a/src/meshTools/sets/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/setAndNormalToFaceZone/setAndNormalToFaceZone.C
@@ -100,9 +100,9 @@ void Foam::setAndNormalToFaceZone::applyToSet
     }
     else
     {
-        faceZoneSet& fzSet = refCast<faceZoneSet>(set);
+        faceZoneSet& zoneSet = refCast<faceZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all faces from faceSet " << setName_
                 << " ..." << endl;
@@ -112,15 +112,15 @@ void Foam::setAndNormalToFaceZone::applyToSet
             labelHashSet& faceIds = loadedSet;
 
             // Start off from copy
-            DynamicList<label> newAddressing(fzSet.addressing());
-            DynamicList<bool> newFlipMap(fzSet.flipMap());
+            DynamicList<label> newAddressing(zoneSet.addressing());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap());
 
             const faceList& faces = mesh_.faces();
             const pointField& points = mesh_.points();
 
             for (const label facei : faceIds)
             {
-                if (!fzSet.found(facei))
+                if (!zoneSet.found(facei))
                 {
                     newAddressing.append(facei);
 
@@ -136,11 +136,11 @@ void Foam::setAndNormalToFaceZone::applyToSet
                 }
             }
 
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all faces from faceSet " << setName_
                 << " ..." << endl;
@@ -149,20 +149,20 @@ void Foam::setAndNormalToFaceZone::applyToSet
             faceSet loadedSet(mesh_, setName_);
 
             // Start off empty
-            DynamicList<label> newAddressing(fzSet.addressing().size());
-            DynamicList<bool> newFlipMap(fzSet.flipMap().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap().size());
 
-            forAll(fzSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fzSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fzSet.addressing()[i]);
-                    newFlipMap.append(fzSet.flipMap()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
+                    newFlipMap.append(zoneSet.flipMap()[i]);
                 }
             }
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.C b/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.C
index 3ed303102b5..411512705af 100644
--- a/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.C
@@ -97,9 +97,9 @@ void Foam::setToFaceZone::applyToSet
     }
     else
     {
-        faceZoneSet& fzSet = refCast<faceZoneSet>(set);
+        faceZoneSet& zoneSet = refCast<faceZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all faces from faceSet " << setName_
                 << " ..." << endl;
@@ -109,23 +109,23 @@ void Foam::setToFaceZone::applyToSet
             const labelHashSet& faceLabels = loadedSet;
 
             // Start off from copy
-            DynamicList<label> newAddressing(fzSet.addressing());
-            DynamicList<bool> newFlipMap(fzSet.flipMap());
+            DynamicList<label> newAddressing(zoneSet.addressing());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap());
 
             for (const label facei : faceLabels)
             {
-                if (!fzSet.found(facei))
+                if (!zoneSet.found(facei))
                 {
                     newAddressing.append(facei);
                     newFlipMap.append(false);
                 }
             }
 
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all faces from faceSet " << setName_
                 << " ..." << endl;
@@ -134,20 +134,20 @@ void Foam::setToFaceZone::applyToSet
             faceSet loadedSet(mesh_, setName_);
 
             // Start off empty
-            DynamicList<label> newAddressing(fzSet.addressing().size());
-            DynamicList<bool> newFlipMap(fzSet.flipMap().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap().size());
 
-            forAll(fzSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fzSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fzSet.addressing()[i]);
-                    newFlipMap.append(fzSet.flipMap()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
+                    newFlipMap.append(zoneSet.flipMap()[i]);
                 }
             }
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
index 8c016ea7f6c..776f0b06c97 100644
--- a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
@@ -106,9 +106,9 @@ void Foam::setsToFaceZone::applyToSet
     }
     else
     {
-        faceZoneSet& fzSet = refCast<faceZoneSet>(set);
+        faceZoneSet& zoneSet = refCast<faceZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all faces from faceSet " << faceSetName_
                 << " ..." << endl;
@@ -118,14 +118,14 @@ void Foam::setsToFaceZone::applyToSet
             cellSet cSet(mesh_, cellSetName_);
 
             // Start off from copy
-            DynamicList<label> newAddressing(fzSet.addressing());
-            DynamicList<bool> newFlipMap(fzSet.flipMap());
+            DynamicList<label> newAddressing(zoneSet.addressing());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap());
 
             forAllConstIter(faceSet, fSet, iter)
             {
                 label facei = iter.key();
 
-                if (!fzSet.found(facei))
+                if (!zoneSet.found(facei))
                 {
                     bool flipFace = false;
 
@@ -176,11 +176,11 @@ void Foam::setsToFaceZone::applyToSet
                 }
             }
 
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all faces from faceSet " << faceSetName_
                 << " ..." << endl;
@@ -189,20 +189,20 @@ void Foam::setsToFaceZone::applyToSet
             faceZoneSet loadedSet(mesh_, faceSetName_);
 
             // Start off empty
-            DynamicList<label> newAddressing(fzSet.addressing().size());
-            DynamicList<bool> newFlipMap(fzSet.flipMap().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
+            DynamicList<bool> newFlipMap(zoneSet.flipMap().size());
 
-            forAll(fzSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fzSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fzSet.addressing()[i]);
-                    newFlipMap.append(fzSet.flipMap()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
+                    newFlipMap.append(zoneSet.flipMap()[i]);
                 }
             }
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.flipMap().transfer(newFlipMap);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.flipMap().transfer(newFlipMap);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.C b/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.C
index cec79cccb2f..add0cf7f4c0 100644
--- a/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.C
+++ b/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.C
@@ -142,14 +142,14 @@ void Foam::boxToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding points that are within boxes " << bbs_ << " ..."
             << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing points that are within boxes " << bbs_ << " ..."
             << endl;
diff --git a/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.C b/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.C
index 6b21b8415b7..c18b5d37d2f 100644
--- a/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.C
+++ b/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.C
@@ -133,13 +133,13 @@ void Foam::cellToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding from " << setName_ << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing from " << setName_ << " ..." << endl;
 
diff --git a/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.C b/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.C
index 8b0439bed6f..f2d50b750a7 100644
--- a/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.C
+++ b/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.C
@@ -127,14 +127,14 @@ void Foam::faceToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding points from face in faceSet " << setName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing points from face in faceSet " << setName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.C b/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.C
index f6c2ce45777..0e6455d7f63 100644
--- a/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.C
+++ b/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.C
@@ -116,13 +116,13 @@ void Foam::labelToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding points mentioned in dictionary" << " ..." << endl;
 
         addOrDelete(set, labels_, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing points mentioned in dictionary" << " ..." << endl;
 
diff --git a/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.C b/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.C
index a7c62b94740..240509ca457 100644
--- a/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.C
+++ b/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.C
@@ -167,13 +167,13 @@ void Foam::nearestToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding points nearest to " << points_ << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing points nearest to " << points_ << endl;
 
diff --git a/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.C b/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.C
index 120f50c1298..ebab5698dcf 100644
--- a/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.C
+++ b/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.C
@@ -90,7 +90,7 @@ void Foam::pointToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all from pointSet " << setName_ << " ..." << endl;
 
@@ -99,14 +99,14 @@ void Foam::pointToPoint::applyToSet
 
         set.addSet(loadedSet);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all from pointSet " << setName_ << " ..." << endl;
 
         // Load the set
         pointSet loadedSet(mesh_, setName_);
 
-        set.deleteSet(loadedSet);
+        set.subtractSet(loadedSet);
     }
 }
 
diff --git a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C
index 729426e5b80..d44b69e3a10 100644
--- a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C
+++ b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C
@@ -188,14 +188,14 @@ void Foam::surfaceToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding points in relation to surface " << surfName_
             << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing points in relation to surface " << surfName_
             << " ..." << endl;
diff --git a/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.C b/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.C
index 3879a24b178..3781ff5ccb9 100644
--- a/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.C
+++ b/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.C
@@ -152,14 +152,14 @@ void Foam::zoneToPoint::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all points of point zones "
             << flatOutput(selectedZones_) << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all points of point zones "
             << flatOutput(selectedZones_) << " ..." << endl;
diff --git a/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.C b/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.C
index fd714d51fa2..c9b58da462d 100644
--- a/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.C
+++ b/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.C
@@ -96,9 +96,9 @@ void Foam::setToPointZone::applyToSet
     }
     else
     {
-        pointZoneSet& fzSet = refCast<pointZoneSet>(set);
+        pointZoneSet& zoneSet = refCast<pointZoneSet>(set);
 
-        if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+        if (action == topoSetSource::ADD || action == topoSetSource::NEW)
         {
             Info<< "    Adding all points from pointSet " << setName_
                 << " ..." << endl;
@@ -108,20 +108,20 @@ void Foam::setToPointZone::applyToSet
             const labelHashSet& pointLabels = loadedSet;
 
             // Start off from copy
-            DynamicList<label> newAddressing(fzSet.addressing());
+            DynamicList<label> newAddressing(zoneSet.addressing());
 
             for (const label pointi : pointLabels)
             {
-                if (!fzSet.found(pointi))
+                if (!zoneSet.found(pointi))
                 {
                     newAddressing.append(pointi);
                 }
             }
 
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.updateSet();
         }
-        else if (action == topoSetSource::DELETE)
+        else if (action == topoSetSource::SUBTRACT)
         {
             Info<< "    Removing all points from pointSet " << setName_
                 << " ..." << endl;
@@ -130,17 +130,17 @@ void Foam::setToPointZone::applyToSet
             pointSet loadedSet(mesh_, setName_);
 
             // Start off empty
-            DynamicList<label> newAddressing(fzSet.addressing().size());
+            DynamicList<label> newAddressing(zoneSet.addressing().size());
 
-            forAll(fzSet.addressing(), i)
+            forAll(zoneSet.addressing(), i)
             {
-                if (!loadedSet.found(fzSet.addressing()[i]))
+                if (!loadedSet.found(zoneSet.addressing()[i]))
                 {
-                    newAddressing.append(fzSet.addressing()[i]);
+                    newAddressing.append(zoneSet.addressing()[i]);
                 }
             }
-            fzSet.addressing().transfer(newAddressing);
-            fzSet.updateSet();
+            zoneSet.addressing().transfer(newAddressing);
+            zoneSet.updateSet();
         }
     }
 }
diff --git a/src/meshTools/sets/topoSetSource/topoSetSource.C b/src/meshTools/sets/topoSetSource/topoSetSource.C
index fa95d9d27b8..e31efe15c4d 100644
--- a/src/meshTools/sets/topoSetSource/topoSetSource.C
+++ b/src/meshTools/sets/topoSetSource/topoSetSource.C
@@ -3,7 +3,7 @@
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
     \\  /    A nd           | Copyright (C) 2011-2016 OpenFOAM Foundation
-     \\/     M anipulation  |
+     \\/     M anipulation  | Copyright (C) 2018 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -46,14 +46,15 @@ const Foam::Enum
 >
 Foam::topoSetSource::actionNames
 ({
-    { setAction::CLEAR, "clear" },
-    { setAction::NEW, "new" },
-    { setAction::INVERT, "invert" },
     { setAction::ADD, "add" },
-    { setAction::DELETE, "delete" },
+    { setAction::SUBTRACT, "subtract" },
     { setAction::SUBSET, "subset" },
-    { setAction::LIST, "list" },
+    { setAction::INVERT, "invert" },
+    { setAction::CLEAR, "clear" },
+    { setAction::NEW, "new" },
     { setAction::REMOVE, "remove" },
+    { setAction::LIST, "list" },
+    { setAction::SUBTRACT, "delete" },   // Compat (1806)
 });
 
 
@@ -169,11 +170,11 @@ void Foam::topoSetSource::addOrDelete
 {
     if (add)
     {
-        set.insert(id);
+        set.set(id);
     }
     else
     {
-        set.erase(id);
+        set.unset(id);
     }
 }
 
@@ -187,11 +188,11 @@ void Foam::topoSetSource::addOrDelete
 {
     if (add)
     {
-        set.insert(labels);
+        set.set(labels);
     }
     else
     {
-        set.erase(labels);
+        set.unset(labels);
     }
 }
 
diff --git a/src/meshTools/sets/topoSetSource/topoSetSource.H b/src/meshTools/sets/topoSetSource/topoSetSource.H
index 5a085b5b4b9..67511f048e7 100644
--- a/src/meshTools/sets/topoSetSource/topoSetSource.H
+++ b/src/meshTools/sets/topoSetSource/topoSetSource.H
@@ -69,26 +69,27 @@ public:
         //- Enumeration defining the types of sources
         enum sourceType
         {
-            CELLSETSOURCE,
-            FACESETSOURCE,
-            POINTSETSOURCE,
+            CELLSETSOURCE = 0x1,        //!< Cells
+            FACESETSOURCE = 0x2,        //!< Faces
+            POINTSETSOURCE = 0x4,       //!< Points
 
-            CELLZONESOURCE,
-            FACEZONESOURCE,
-            POINTZONESOURCE
+            CELLZONESOURCE = 0x11,      //!< Cells as zone
+            FACEZONESOURCE = 0x12,      //!< Faces as zone
+            POINTZONESOURCE = 0x14,     //!< Points as zone
         };
 
         //- Enumeration defining the valid actions
         enum setAction
         {
-            CLEAR,
-            NEW,
-            INVERT,
-            ADD,
-            DELETE,
-            SUBSET,
-            LIST,
-            REMOVE
+            ADD,                //!< Adds elements to the set
+            SUBTRACT,           //!< Removes elements from the set
+            SUBSET,             //!< Subset with elements in the set
+            INVERT,             //!< Invert the elements in the set
+            CLEAR,              //!< Clear the set, possibly creating it
+            NEW,                //!< Create a new set and ADD elemets to it
+            REMOVE,             //!< Remove the set (from the file system)
+            LIST,               //!< Print contents of the set
+            DELETE = SUBTRACT,  //!< \deprecated alias for SUBTRACT (OCT-2018)
         };
 
         //- The setActions text representations
diff --git a/src/meshTools/sets/topoSets/cellZoneSet.C b/src/meshTools/sets/topoSets/cellZoneSet.C
index 4168af394a8..0ca2fdc96da 100644
--- a/src/meshTools/sets/topoSets/cellZoneSet.C
+++ b/src/meshTools/sets/topoSets/cellZoneSet.C
@@ -49,7 +49,7 @@ void Foam::cellZoneSet::updateSet()
 
     cellSet::clearStorage();
     cellSet::resize(2*addressing_.size());
-    cellSet::insert(addressing_);
+    cellSet::set(addressing_);
 }
 
 
@@ -189,7 +189,7 @@ void Foam::cellZoneSet::addSet(const topoSet& set)
 }
 
 
-void Foam::cellZoneSet::deleteSet(const topoSet& set)
+void Foam::cellZoneSet::subtractSet(const topoSet& set)
 {
     DynamicList<label> newAddressing(addressing_.size());
 
diff --git a/src/meshTools/sets/topoSets/cellZoneSet.H b/src/meshTools/sets/topoSets/cellZoneSet.H
index 8e21178a5e9..c7e96c3058f 100644
--- a/src/meshTools/sets/topoSets/cellZoneSet.H
+++ b/src/meshTools/sets/topoSets/cellZoneSet.H
@@ -122,8 +122,8 @@ public:
         //- Add elements present in set.
         virtual void addSet(const topoSet& set);
 
-        //- Delete elements present in set.
-        virtual void deleteSet(const topoSet& set);
+        //- Subtract elements present in set.
+        virtual void subtractSet(const topoSet& set);
 
         //- Sync cellSet across coupled patches; update cellZone from cellSet
         virtual void sync(const polyMesh& mesh);
diff --git a/src/meshTools/sets/topoSets/faceSet.C b/src/meshTools/sets/topoSets/faceSet.C
index 2de0053c38e..b4839065a8e 100644
--- a/src/meshTools/sets/topoSets/faceSet.C
+++ b/src/meshTools/sets/topoSets/faceSet.C
@@ -143,7 +143,7 @@ void Foam::faceSet::sync(const polyMesh& mesh)
     {
         if (set[facei])
         {
-            if (insert(facei))
+            if (this->set(facei))
             {
                 ++nAdded;
             }
@@ -207,7 +207,7 @@ void Foam::faceSet::distribute(const mapDistributePolyMesh& map)
     {
         if (inSet[facei])
         {
-            insert(facei);
+            this->set(facei);
         }
     }
 }
diff --git a/src/meshTools/sets/topoSets/faceZoneSet.C b/src/meshTools/sets/topoSets/faceZoneSet.C
index 674beddc35d..ff0431ac69f 100644
--- a/src/meshTools/sets/topoSets/faceZoneSet.C
+++ b/src/meshTools/sets/topoSets/faceZoneSet.C
@@ -54,7 +54,7 @@ void Foam::faceZoneSet::updateSet()
 
     faceSet::clearStorage();
     faceSet::resize(2*addressing_.size());
-    faceSet::insert(addressing_);
+    faceSet::set(addressing_);
 }
 
 
@@ -260,7 +260,7 @@ void Foam::faceZoneSet::addSet(const topoSet& set)
 }
 
 
-void Foam::faceZoneSet::deleteSet(const topoSet& set)
+void Foam::faceZoneSet::subtractSet(const topoSet& set)
 {
     label nConflict = 0;
 
@@ -301,7 +301,7 @@ void Foam::faceZoneSet::deleteSet(const topoSet& set)
     if (nConflict > 0)
     {
         WarningInFunction
-            << "deleteSet : there are " << nConflict
+            << "subtractSet : there are " << nConflict
             << " faces with different orientation in faceZonesSets "
             << name() << " and " << set.name() << endl;
     }
diff --git a/src/meshTools/sets/topoSets/faceZoneSet.H b/src/meshTools/sets/topoSets/faceZoneSet.H
index c8c00149067..09d60624626 100644
--- a/src/meshTools/sets/topoSets/faceZoneSet.H
+++ b/src/meshTools/sets/topoSets/faceZoneSet.H
@@ -137,8 +137,8 @@ public:
         //- Add elements present in set.
         virtual void addSet(const topoSet& set);
 
-        //- Delete elements present in set.
-        virtual void deleteSet(const topoSet& set);
+        //- Subtract elements present in set.
+        virtual void subtractSet(const topoSet& set);
 
         //- Sync faceZoneSet across coupled patches.
         virtual void sync(const polyMesh& mesh);
diff --git a/src/meshTools/sets/topoSets/pointSet.C b/src/meshTools/sets/topoSets/pointSet.C
index ed4347a59d8..d0c9459420d 100644
--- a/src/meshTools/sets/topoSets/pointSet.C
+++ b/src/meshTools/sets/topoSets/pointSet.C
@@ -153,7 +153,7 @@ void Foam::pointSet::sync(const polyMesh& mesh)
     {
         if (contents[pointi])
         {
-            newContents.insert(pointi);
+            newContents.set(pointi);
         }
     }
 
@@ -202,7 +202,7 @@ void Foam::pointSet::distribute(const mapDistributePolyMesh& map)
     {
         if (inSet[pointi])
         {
-            insert(pointi);
+            this->set(pointi);
         }
     }
 }
diff --git a/src/meshTools/sets/topoSets/pointZoneSet.C b/src/meshTools/sets/topoSets/pointZoneSet.C
index 06b8eba119f..647adac1999 100644
--- a/src/meshTools/sets/topoSets/pointZoneSet.C
+++ b/src/meshTools/sets/topoSets/pointZoneSet.C
@@ -50,7 +50,7 @@ void Foam::pointZoneSet::updateSet()
 
     pointSet::clearStorage();
     pointSet::resize(2*addressing_.size());
-    pointSet::insert(addressing_);
+    pointSet::set(addressing_);
 }
 
 
@@ -189,7 +189,7 @@ void Foam::pointZoneSet::addSet(const topoSet& set)
 }
 
 
-void Foam::pointZoneSet::deleteSet(const topoSet& set)
+void Foam::pointZoneSet::subtractSet(const topoSet& set)
 {
     DynamicList<label> newAddressing(addressing_.size());
 
diff --git a/src/meshTools/sets/topoSets/pointZoneSet.H b/src/meshTools/sets/topoSets/pointZoneSet.H
index f32db072d9c..a5668e2ed57 100644
--- a/src/meshTools/sets/topoSets/pointZoneSet.H
+++ b/src/meshTools/sets/topoSets/pointZoneSet.H
@@ -123,8 +123,8 @@ public:
         //- Add elements present in set.
         virtual void addSet(const topoSet& set);
 
-        //- Delete elements present in set.
-        virtual void deleteSet(const topoSet& set);
+        //- Subtract elements present in set.
+        virtual void subtractSet(const topoSet& set);
 
         //- Sync pointZoneSet across coupled patches.
         virtual void sync(const polyMesh& mesh);
diff --git a/src/meshTools/sets/topoSets/topoSet.C b/src/meshTools/sets/topoSets/topoSet.C
index c69ffa92ebb..3b92d5c2a34 100644
--- a/src/meshTools/sets/topoSets/topoSet.C
+++ b/src/meshTools/sets/topoSets/topoSet.C
@@ -174,7 +174,7 @@ void Foam::topoSet::updateLabels(const labelList& map)
 
             if (newId >= 0)
             {
-                newSet.insert(newId);
+                newSet.set(newId);
             }
         }
 
@@ -506,7 +506,7 @@ void Foam::topoSet::invert(const label maxLen)
     {
         if (!original.found(id))
         {
-            insert(id);
+            this->set(id);
         }
     }
 }
@@ -514,25 +514,31 @@ void Foam::topoSet::invert(const label maxLen)
 
 void Foam::topoSet::subset(const topoSet& set)
 {
-    // Only retain entries found in both HashSets
+    // Only retain entries found in both sets
     static_cast<labelHashSet&>(*this) &= set;
 }
 
 
 void Foam::topoSet::addSet(const topoSet& set)
 {
-    // Add entries to the HashSet
-    static_cast<labelHashSet&>(*this) += set;
+    // Add entries to the set
+    static_cast<labelHashSet&>(*this) |= set;
 }
 
 
-void Foam::topoSet::deleteSet(const topoSet& set)
+void Foam::topoSet::subtractSet(const topoSet& set)
 {
-    // Remove entries from the HashSet
+    // Subtract entries from the set
     static_cast<labelHashSet&>(*this) -= set;
 }
 
 
+void Foam::topoSet::deleteSet(const topoSet& set)
+{
+    this->subtractSet(set);
+}
+
+
 void Foam::topoSet::sync(const polyMesh&)
 {
     NotImplemented;
diff --git a/src/meshTools/sets/topoSets/topoSet.H b/src/meshTools/sets/topoSets/topoSet.H
index 7255caecbba..5d5794dac5c 100644
--- a/src/meshTools/sets/topoSets/topoSet.H
+++ b/src/meshTools/sets/topoSets/topoSet.H
@@ -324,7 +324,11 @@ public:
         //- Add elements present in set.
         virtual void addSet(const topoSet& set);
 
-        //- Delete elements present in set.
+        //- Subtract elements present in set.
+        virtual void subtractSet(const topoSet& set);
+
+        //- Subtract elements present in set.
+        //  \deprecated use subtractSet instead (OCT-2018)
         virtual void deleteSet(const topoSet& set);
 
         //- Sync set across coupled patches.
diff --git a/src/meshTools/surfaceSets/surfaceSets.C b/src/meshTools/surfaceSets/surfaceSets.C
index 9309e963ece..6b639055917 100644
--- a/src/meshTools/surfaceSets/surfaceSets.C
+++ b/src/meshTools/surfaceSets/surfaceSets.C
@@ -496,7 +496,7 @@ Foam::labelHashSet Foam::surfaceSets::getHangingCells
 //
 //    cellToCell deleteInsideSource(mesh, rawInside.name());
 //
-//    deleteInsideSource.applyToSet(topoSetSource::DELETE, cutCells);
+//    deleteInsideSource.applyToSet(topoSetSource::SUBTRACT, cutCells);
 //    Pout<< "Writing cut cells (" << cutCells.size() << ") to cellSet "
 //        << cutCells.instance()/cutCells.local()/cutCells.name()
 //        << endl << endl;
@@ -544,8 +544,8 @@ Foam::labelHashSet Foam::surfaceSets::getHangingCells
 //    cellSet inside(mesh, "inside", rawInside);
 //    cellSet outside(mesh, "outside", rawOutside);
 //
-//    pToCell.applyToSet(topoSetSource::DELETE, inside);
-//    pToCell.applyToSet(topoSetSource::DELETE, outside);
+//    pToCell.applyToSet(topoSetSource::SUBTRACT, inside);
+//    pToCell.applyToSet(topoSetSource::SUBTRACT, outside);
 //
 //    Pout<< nl
 //        << "Removed " << rawInside.size() - inside.size()
diff --git a/src/overset/regionsToCell/regionsToCell.C b/src/overset/regionsToCell/regionsToCell.C
index 99fea0c97c6..500140f00ae 100644
--- a/src/overset/regionsToCell/regionsToCell.C
+++ b/src/overset/regionsToCell/regionsToCell.C
@@ -463,14 +463,14 @@ void Foam::regionsToCell::applyToSet
     topoSet& set
 ) const
 {
-    if ((action == topoSetSource::NEW) || (action == topoSetSource::ADD))
+    if (action == topoSetSource::ADD || action == topoSetSource::NEW)
     {
         Info<< "    Adding all cells of connected region containing points "
             << insidePoints_ << " ..." << endl;
 
         combine(set, true);
     }
-    else if (action == topoSetSource::DELETE)
+    else if (action == topoSetSource::SUBTRACT)
     {
         Info<< "    Removing all cells of connected region containing points "
             << insidePoints_ << " ..." << endl;
diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict
index a4c7c7240b0..0f3ab08509c 100644
--- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict
+++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/topoSetDict
@@ -228,19 +228,13 @@ actions
     {
         name    wallPanel;
         type    faceZoneSet;
-        action  delete;
+        action  subtract;
         source  setToFaceZone;
         sourceInfo
         {
             faceSet inletFace;
         }
     }
-
-
-
-
-
-
 );
 
 // ************************************************************************* //
diff --git a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
index 1730a01d246..12893748211 100644
--- a/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
+++ b/tutorials/compressible/overRhoPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
@@ -59,7 +59,7 @@ actions
     {
         name    c1;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict
index 446ba1e24bd..1928aeb4f18 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/topoSetDict
@@ -63,7 +63,7 @@ actions
     {
         name    solid;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
@@ -108,7 +108,7 @@ actions
     {
         name    solid;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
diff --git a/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/topoSetDict b/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
index 50c273074f0..14957ba5c2a 100644
--- a/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
+++ b/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/topoSetDict
@@ -59,7 +59,7 @@ actions
     {
         name    c1;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
diff --git a/tutorials/incompressible/pimpleFoam/RAS/TJunctionFan/system/topoSetDict b/tutorials/incompressible/pimpleFoam/RAS/TJunctionFan/system/topoSetDict
index 62cdff3e629..51c370663d5 100644
--- a/tutorials/incompressible/pimpleFoam/RAS/TJunctionFan/system/topoSetDict
+++ b/tutorials/incompressible/pimpleFoam/RAS/TJunctionFan/system/topoSetDict
@@ -65,7 +65,7 @@ actions
     {
         name    baffleFaceSet;
         type    faceSet;
-        action  delete;
+        action  subtract;
         source  boxToFace;
         sourceInfo
         {
diff --git a/tutorials/incompressible/simpleFoam/pipeCyclic/system/topoSetDict b/tutorials/incompressible/simpleFoam/pipeCyclic/system/topoSetDict
index 17030d220d5..ebf3952fe09 100644
--- a/tutorials/incompressible/simpleFoam/pipeCyclic/system/topoSetDict
+++ b/tutorials/incompressible/simpleFoam/pipeCyclic/system/topoSetDict
@@ -63,7 +63,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  faceToCell;
         sourceInfo
         {
diff --git a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/createObstacle.setSet b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/createObstacle.setSet
index 59c9f9d9d6b..25de4d699aa 100644
--- a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/createObstacle.setSet
+++ b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/createObstacle.setSet
@@ -1,6 +1,6 @@
 cellSet c0 new
 cellSet c0 invert
-cellSet c0 delete boxToCell (0.4 0.1 0.1) (0.6 0.3 0.3)
-cellSet c0 delete boxToCell (0.4 0.1 0.4) (0.6 0.3 0.6)
-cellSet c0 delete boxToCell (0.4 0.4 0.1) (0.6 0.6 0.3)
-cellSet c0 delete boxToCell (0.4 0.4 0.4) (0.6 0.6 0.6)
+cellSet c0 subtract boxToCell (0.4 0.1 0.1) (0.6 0.3 0.3)
+cellSet c0 subtract boxToCell (0.4 0.1 0.4) (0.6 0.3 0.6)
+cellSet c0 subtract boxToCell (0.4 0.4 0.1) (0.6 0.6 0.3)
+cellSet c0 subtract boxToCell (0.4 0.4 0.4) (0.6 0.6 0.6)
diff --git a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/topoSetDict b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/topoSetDict
index 24195e15d86..c60ef73a85c 100644
--- a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/topoSetDict
+++ b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/topoSetDict
@@ -30,7 +30,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
@@ -40,7 +40,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
@@ -50,7 +50,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
@@ -60,7 +60,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
diff --git a/tutorials/mesh/foamyHexMesh/flange/system/faceSetDict b/tutorials/mesh/foamyHexMesh/flange/system/faceSetDict
index 5f3ed0b9a59..4af8cfcb2bf 100644
--- a/tutorials/mesh/foamyHexMesh/flange/system/faceSetDict
+++ b/tutorials/mesh/foamyHexMesh/flange/system/faceSetDict
@@ -18,8 +18,8 @@ FoamFile
 // Name of set to operate on
 name facesToBeRemoved;
 
-// One of (clear | new | invert | add | delete | subset | list)
-action new;
+// One of (add | subtract | subset | clear | new | invert | list)
+action  new;
 
 // Actions to apply to pointSet. These are all the topoSetSource's ending
 // in ..ToFace (see the meshTools library).
diff --git a/tutorials/mesh/foamyHexMesh/flange/system/topoSetDict-background b/tutorials/mesh/foamyHexMesh/flange/system/topoSetDict-background
index 16a72497f13..7fb6380806c 100644
--- a/tutorials/mesh/foamyHexMesh/flange/system/topoSetDict-background
+++ b/tutorials/mesh/foamyHexMesh/flange/system/topoSetDict-background
@@ -23,7 +23,7 @@ FoamFile
 //
 //     // action to perform on set. Two types:
 //     // - require no source : clear/invert
-//     // - require source    : new/add/delete/subset
+//     // - require source    : add/subtract/subset/new
 //     action  new;
 //
 // The source entry varies according to the type of set:
diff --git a/tutorials/mesh/stitchMesh/simple-cube1/system/topoSetDict b/tutorials/mesh/stitchMesh/simple-cube1/system/topoSetDict
index 3604118de25..754f878051b 100644
--- a/tutorials/mesh/stitchMesh/simple-cube1/system/topoSetDict
+++ b/tutorials/mesh/stitchMesh/simple-cube1/system/topoSetDict
@@ -56,7 +56,7 @@ actions
     {
         name    inner;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
@@ -67,7 +67,7 @@ actions
     {
         name    outer;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict
index 04f2b192996..15b0923bb7e 100644
--- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict
+++ b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/topoSetDict
@@ -263,7 +263,7 @@ actions
     {
         name    topBlockCells;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
diff --git a/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/createObstacle.setSet b/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/createObstacle.setSet
index df2efd8a538..6f646d44dc6 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/createObstacle.setSet
+++ b/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/createObstacle.setSet
@@ -1,3 +1,3 @@
 cellSet c0 new
 cellSet c0 invert
-cellSet c0 delete boxToCell (0.375 0.375 0) (0.625 0.625 0.25)
+cellSet c0 subtract boxToCell (0.375 0.375 0) (0.625 0.625 0.25)
diff --git a/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/system/topoSetDict b/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/system/topoSetDict
index db9c6783c8d..49101640d22 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/system/topoSetDict
+++ b/tutorials/multiphase/interFoam/laminar/damBreakWithObstacle/system/topoSetDict
@@ -30,7 +30,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
diff --git a/tutorials/multiphase/interIsoFoam/damBreakWithObstacle/system/topoSetDict b/tutorials/multiphase/interIsoFoam/damBreakWithObstacle/system/topoSetDict
index db9c6783c8d..49101640d22 100644
--- a/tutorials/multiphase/interIsoFoam/damBreakWithObstacle/system/topoSetDict
+++ b/tutorials/multiphase/interIsoFoam/damBreakWithObstacle/system/topoSetDict
@@ -30,7 +30,7 @@ actions
     {
         name    c0;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  boxToCell;
         sourceInfo
         {
diff --git a/tutorials/multiphase/overInterDyMFoam/twoSimpleRotors/system/topoSetDict b/tutorials/multiphase/overInterDyMFoam/twoSimpleRotors/system/topoSetDict
index 6fb992b37a8..95d02e89a80 100644
--- a/tutorials/multiphase/overInterDyMFoam/twoSimpleRotors/system/topoSetDict
+++ b/tutorials/multiphase/overInterDyMFoam/twoSimpleRotors/system/topoSetDict
@@ -59,7 +59,7 @@ actions
     {
         name    c1;
         type    cellSet;
-        action  delete;
+        action  subtract;
         source  cellToCell;
         sourceInfo
         {
-- 
GitLab