From 475ed5cc32d2c28f5d1064e7c8be3bcfe105deeb Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@esi-group.com>
Date: Tue, 14 Mar 2023 17:39:28 +0100
Subject: [PATCH] STYLE: readOnProc/writeOnProc instead of 'valid' for IO

---
 applications/test/IOField/Test-IOField.C      | 14 +++--
 .../foamFormatConvert/foamFormatConvert.C     |  9 ++-
 .../unmappedPassivePositionParticleCloud.H    |  2 +-
 .../IOobjects/CompactIOField/CompactIOField.C | 20 +++---
 .../IOobjects/CompactIOField/CompactIOField.H |  8 +--
 .../IOobjects/CompactIOList/CompactIOList.C   |  6 +-
 .../IOobjects/CompactIOList/CompactIOList.H   |  2 +-
 src/OpenFOAM/db/IOobjects/IOField/IOField.C   | 37 ++++++-----
 src/OpenFOAM/db/IOobjects/IOField/IOField.H   |  5 +-
 .../decomposedBlockData/decomposedBlockData.C |  2 +-
 .../decomposedBlockData/decomposedBlockData.H |  2 +-
 .../db/IOstreams/Fstreams/masterOFstream.C    | 10 +--
 .../db/IOstreams/Fstreams/masterOFstream.H    |  8 +--
 src/OpenFOAM/db/Time/Time.H                   |  2 +-
 src/OpenFOAM/db/Time/TimeIO.C                 |  4 +-
 .../db/objectRegistry/objectRegistry.C        |  4 +-
 .../db/objectRegistry/objectRegistry.H        |  2 +-
 src/OpenFOAM/db/regIOobject/regIOobject.H     | 12 ++--
 src/OpenFOAM/db/regIOobject/regIOobjectRead.C | 10 +--
 .../db/regIOobject/regIOobjectWrite.C         |  8 +--
 .../collatedFileOperation.C                   |  6 +-
 .../collatedFileOperation.H                   |  2 +-
 .../fileOperation/fileOperation.C             |  4 +-
 .../fileOperation/fileOperation.H             | 10 +--
 .../masterUncollatedFileOperation.C           | 32 ++++++----
 .../masterUncollatedFileOperation.H           | 10 +--
 .../uncollatedFileOperation.C                 |  8 +--
 .../uncollatedFileOperation.H                 |  4 +-
 src/OpenFOAM/global/profiling/profiling.C     |  2 +-
 src/OpenFOAM/global/profiling/profiling.H     |  2 +-
 .../polyBoundaryMesh/polyBoundaryMesh.C       |  4 +-
 .../polyBoundaryMesh/polyBoundaryMesh.H       |  2 +-
 .../coordinate/systems/coordinateSystems.C    | 10 +--
 .../coordinate/systems/coordinateSystems.H    |  4 +-
 .../dynamicRefineFvMesh/dynamicRefineFvMesh.C |  8 +--
 .../dynamicRefineFvMesh/dynamicRefineFvMesh.H |  2 +-
 .../motionSolvers/motionSolver/motionSolver.C |  2 +-
 .../motionSolvers/motionSolver/motionSolver.H |  2 +-
 .../polyTopoChange/hexRef8/hexRef8.C          | 10 +--
 .../polyTopoChange/hexRef8/hexRef8.H          |  2 +-
 .../faMesh/faBoundaryMesh/faBoundaryMesh.C    |  4 +-
 .../faMesh/faBoundaryMesh/faBoundaryMesh.H    |  2 +-
 src/finiteArea/faMesh/faMesh.C                |  2 +-
 src/finiteArea/faMesh/faMesh.H                |  2 +-
 src/finiteVolume/fvMesh/fvMesh.C              | 12 ++--
 src/finiteVolume/fvMesh/fvMesh.H              |  4 +-
 .../field/streamLine/streamLineParticle.C     | 12 ++--
 .../Templates/DSMCParcel/DSMCParcelIO.C       | 17 +++---
 src/lagrangian/basic/Cloud/Cloud.H            |  2 +-
 src/lagrangian/basic/Cloud/CloudIO.C          | 16 ++---
 src/lagrangian/basic/IOPosition/IOPosition.C  |  7 ++-
 src/lagrangian/basic/IOPosition/IOPosition.H  |  4 +-
 .../basic/particle/particleTemplates.C        | 16 ++---
 .../CollidingParcel/CollidingParcelIO.C       | 46 +++++++-------
 .../KinematicParcel/KinematicParcelIO.C       | 48 +++++++--------
 .../Templates/MPPICParcel/MPPICParcelIO.C     |  9 ++-
 .../ReactingHeterogeneousParcelIO.C           | 21 ++++---
 .../ReactingMultiphaseParcelIO.C              | 23 ++++---
 .../ReactingParcel/ReactingParcelIO.C         | 14 +++--
 .../Templates/ThermoParcel/ThermoParcelIO.C   | 12 ++--
 .../AveragingMethod/AveragingMethod.C         | 10 +--
 .../AveragingMethod/AveragingMethod.H         |  2 +-
 .../molecule/molecule/moleculeIO.C            | 54 ++++++++--------
 .../solidParticle/solidParticleIO.C           | 11 ++--
 .../Templates/SprayParcel/SprayParcelIO.C     | 61 ++++++++++---------
 .../triSurfaceMesh/triSurfaceMesh.C           |  2 +-
 .../triSurfaceMesh/triSurfaceMesh.H           |  2 +-
 src/meshTools/topoSet/topoSets/cellZoneSet.C  |  6 +-
 src/meshTools/topoSet/topoSets/cellZoneSet.H  |  2 +-
 src/meshTools/topoSet/topoSets/faceZoneSet.C  |  6 +-
 src/meshTools/topoSet/topoSets/faceZoneSet.H  |  2 +-
 src/meshTools/topoSet/topoSets/pointZoneSet.C |  6 +-
 src/meshTools/topoSet/topoSets/pointZoneSet.H |  2 +-
 .../incompressiblePrimalSolver.H              |  1 -
 .../dynamicOversetFvMesh.C                    |  7 ++-
 .../dynamicOversetFvMesh.H                    |  2 +-
 src/overset/oversetFvMesh/oversetFvMeshBase.C |  8 +--
 src/overset/oversetFvMesh/oversetFvMeshBase.H |  2 +-
 .../staticOversetFvMesh/staticOversetFvMesh.C |  6 +-
 .../staticOversetFvMesh/staticOversetFvMesh.H |  2 +-
 .../distributedTriSurfaceMesh.C               |  4 +-
 .../distributedTriSurfaceMesh.H               |  2 +-
 .../rigidBodyMeshMotion/rigidBodyMeshMotion.C |  4 +-
 .../rigidBodyMeshMotion/rigidBodyMeshMotion.H |  2 +-
 .../rigidBodyMeshMotionSolver.C               |  4 +-
 .../rigidBodyMeshMotionSolver.H               |  2 +-
 .../sixDoFRigidBodyMotionSolver.C             |  4 +-
 .../sixDoFRigidBodyMotionSolver.H             |  2 +-
 .../MeshedSurfaceIOAllocator.C                |  6 +-
 .../MeshedSurfaceIOAllocator.H                |  2 +-
 src/surfMesh/polySurface/polySurface.H        |  2 +-
 src/surfMesh/polySurface/polySurfaceIO.C      |  2 +-
 src/surfMesh/surfMesh/surfMesh.H              |  2 +-
 src/surfMesh/surfMesh/surfMeshIO.C            |  6 +-
 94 files changed, 418 insertions(+), 386 deletions(-)

diff --git a/applications/test/IOField/Test-IOField.C b/applications/test/IOField/Test-IOField.C
index 478d9173595..d921dc09b0b 100644
--- a/applications/test/IOField/Test-IOField.C
+++ b/applications/test/IOField/Test-IOField.C
@@ -46,35 +46,39 @@ using namespace Foam;
 template<class Type>
 void doWrite(const IOobject& io, const label sz)
 {
+    const bool writeOnProc = (sz > 0);
+
     IOField<Type> fld(io, sz);
     forAll(fld, i)
     {
         fld[i] = i + 1000.25 + (0.25 * i);
     }
     Pout<< "writing:" << fld << endl;
-    fld.write(sz > 0);
+    fld.write(writeOnProc);
 }
 
 
 template<>
 void doWrite<bool>(const IOobject& io, const label sz)
 {
+    const bool writeOnProc = (sz > 0);
+
     IOField<bool> fld(io, sz);
     forAll(fld, i)
     {
         fld[i] = i % 2;
     }
     Pout<< "writing:" << fld << endl;
-    fld.write(sz > 0);
+    fld.write(writeOnProc);
 }
 
 
 template<class Type>
 void doRead(const IOobject& io, const label sz)
 {
-    bool valid = (sz > 0);
-    Pout<< "    valid:" << valid << endl;
-    IOField<Type> fld(io, valid);
+    const bool readOnProc = (sz > 0);
+    Pout<< "    readOnProc:" << readOnProc << endl;
+    IOField<Type> fld(io, readOnProc);
     Pout<< "    wanted:" << sz << " actually read:" << fld.size() << endl;
 
     if (fld.size() != sz)
diff --git a/applications/utilities/miscellaneous/foamFormatConvert/foamFormatConvert.C b/applications/utilities/miscellaneous/foamFormatConvert/foamFormatConvert.C
index 45734f1ef51..e95503d0214 100644
--- a/applications/utilities/miscellaneous/foamFormatConvert/foamFormatConvert.C
+++ b/applications/utilities/miscellaneous/foamFormatConvert/foamFormatConvert.C
@@ -203,7 +203,7 @@ bool writeOptionalMeshObject
     const word& name,
     const fileName& meshDir,
     Time& runTime,
-    const bool valid
+    const bool writeOnProc
 )
 {
     IOobject io
@@ -218,8 +218,7 @@ bool writeOptionalMeshObject
     );
 
     bool writeOk = false;
-
-    bool haveFile = io.typeHeaderOk<IOField<label>>(false);
+    const bool haveFile = io.typeHeaderOk<IOField<label>>(false);
 
     // Make sure all know if there is a valid class name
     wordList classNames(1, io.headerClassName());
@@ -230,10 +229,10 @@ bool writeOptionalMeshObject
     {
         Info<< "        Reading " << classNames[0]
             << " : " << name << endl;
-        T meshObject(io, valid && haveFile);
+        T meshObject(io, writeOnProc && haveFile);
 
         Info<< "        Writing " << name << endl;
-        writeOk = meshObject.regIOobject::write(valid && haveFile);
+        writeOk = meshObject.regIOobject::write(writeOnProc && haveFile);
     }
 
     return writeOk;
diff --git a/applications/utilities/parallelProcessing/redistributePar/unmappedPassivePositionParticleCloud.H b/applications/utilities/parallelProcessing/redistributePar/unmappedPassivePositionParticleCloud.H
index 74cc738f15a..031e04801c2 100644
--- a/applications/utilities/parallelProcessing/redistributePar/unmappedPassivePositionParticleCloud.H
+++ b/applications/utilities/parallelProcessing/redistributePar/unmappedPassivePositionParticleCloud.H
@@ -94,7 +94,7 @@ public:
         {}
 
         //- Disable writing objects
-        virtual bool writeObject(IOstreamOption, const bool valid) const
+        virtual bool writeObject(IOstreamOption, const bool writeOnProc) const
         {
             return true;
         }
diff --git a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C
index e89d1039137..b37ae44d6b5 100644
--- a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C
+++ b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.C
@@ -32,11 +32,11 @@ License
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
 template<class T, class BaseType>
-void Foam::CompactIOField<T, BaseType>::readFromStream(const bool valid)
+void Foam::CompactIOField<T, BaseType>::readFromStream(const bool readOnProc)
 {
-    Istream& is = readStream(word::null, valid);
+    Istream& is = readStream(word::null, readOnProc);
 
-    if (valid)
+    if (readOnProc)
     {
         if (headerClassName() == IOField<T>::typeName)
         {
@@ -93,19 +93,19 @@ template<class T, class BaseType>
 Foam::CompactIOField<T, BaseType>::CompactIOField
 (
     const IOobject& io,
-    const bool valid
+    const bool readOnProc
 )
 :
     regIOobject(io)
 {
     if (readOpt() == IOobject::MUST_READ)
     {
-        readFromStream(valid);
+        readFromStream(readOnProc);
     }
     else if (isReadOptional())
     {
-        bool haveFile = headerOk();
-        readFromStream(valid && haveFile);
+        const bool haveFile = headerOk();
+        readFromStream(readOnProc && haveFile);
     }
 }
 
@@ -176,7 +176,7 @@ template<class T, class BaseType>
 bool Foam::CompactIOField<T, BaseType>::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     if (streamOpt.format() == IOstreamOption::ASCII)
@@ -186,7 +186,7 @@ bool Foam::CompactIOField<T, BaseType>::writeObject
 
         const_cast<word&>(typeName) = IOField<T>::typeName;
 
-        bool good = regIOobject::writeObject(streamOpt, valid);
+        bool good = regIOobject::writeObject(streamOpt, writeOnProc);
 
         // Restore type
         const_cast<word&>(typeName) = oldTypeName;
@@ -194,7 +194,7 @@ bool Foam::CompactIOField<T, BaseType>::writeObject
         return good;
     }
 
-    return regIOobject::writeObject(streamOpt, valid);
+    return regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H
index fe7baa3a7ea..506a0e0c67b 100644
--- a/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H
+++ b/src/OpenFOAM/db/IOobjects/CompactIOField/CompactIOField.H
@@ -76,8 +76,8 @@ class CompactIOField
 {
     // Private Member Functions
 
-        //- Read according to header type
-        void readFromStream(const bool valid = true);
+        //- Read according to header type, with optional 'on-proc' value
+        void readFromStream(const bool readOnProc = true);
 
         //- Read if IOobject flags set. Return true if read.
         //  Reads according to the header type
@@ -99,7 +99,7 @@ public:
         explicit CompactIOField(const IOobject& io);
 
         //- Construct from IOobject, with local processor conditional reading
-        CompactIOField(const IOobject& io, const bool valid);
+        CompactIOField(const IOobject& io, const bool readOnProc);
 
         //- Construct from IOobject and zero size (if not read)
         CompactIOField(const IOobject& io, Foam::zero);
@@ -124,7 +124,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         virtual bool writeData(Ostream& os) const;
diff --git a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C
index 3780264f834..eb9ec7c591e 100644
--- a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C
+++ b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C
@@ -169,7 +169,7 @@ template<class T, class BaseType>
 bool Foam::CompactIOList<T, BaseType>::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     if
@@ -193,7 +193,7 @@ bool Foam::CompactIOList<T, BaseType>::writeObject
 
         const_cast<word&>(typeName) = IOList<T>::typeName;
 
-        bool good = regIOobject::writeObject(streamOpt, valid);
+        bool good = regIOobject::writeObject(streamOpt, writeOnProc);
 
         // Change type back
         const_cast<word&>(typeName) = oldTypeName;
@@ -201,7 +201,7 @@ bool Foam::CompactIOList<T, BaseType>::writeObject
         return good;
     }
 
-    return regIOobject::writeObject(streamOpt, valid);
+    return regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H
index 20312ff2625..77d599428f6 100644
--- a/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H
+++ b/src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.H
@@ -127,7 +127,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         virtual bool writeData(Ostream&) const;
diff --git a/src/OpenFOAM/db/IOobjects/IOField/IOField.C b/src/OpenFOAM/db/IOobjects/IOField/IOField.C
index 516971f8c07..3c4a7a9eb5c 100644
--- a/src/OpenFOAM/db/IOobjects/IOField/IOField.C
+++ b/src/OpenFOAM/db/IOobjects/IOField/IOField.C
@@ -30,13 +30,25 @@ License
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
+template<class Type>
+void Foam::IOField<Type>::readFromStream(const bool readOnProc)
+{
+    Istream& is = readStream(typeName, readOnProc);
+
+    if (readOnProc)
+    {
+        is >> *this;
+    }
+    close();
+}
+
+
 template<class Type>
 bool Foam::IOField<Type>::readContents()
 {
     if (isReadRequired() || (isReadOptional() && headerOk()))
     {
-        readStream(typeName) >> *this;
-        close();
+        readFromStream();
         return true;
     }
 
@@ -59,7 +71,7 @@ Foam::IOField<Type>::IOField(const IOobject& io)
 
 
 template<class Type>
-Foam::IOField<Type>::IOField(const IOobject& io, const bool valid)
+Foam::IOField<Type>::IOField(const IOobject& io, const bool readOnProc)
 :
     regIOobject(io)
 {
@@ -68,25 +80,12 @@ Foam::IOField<Type>::IOField(const IOobject& io, const bool valid)
 
     if (isReadRequired())
     {
-        Istream& is = readStream(typeName, valid);
-
-        if (valid)
-        {
-            is >> *this;
-        }
-        close();
+        readFromStream(readOnProc);
     }
     else if (isReadOptional())
     {
-        bool haveFile = headerOk();
-
-        Istream& is = readStream(typeName, haveFile && valid);
-
-        if (valid && haveFile)
-        {
-            is >> *this;
-        }
-        close();
+        const bool haveFile = headerOk();
+        readFromStream(readOnProc && haveFile);
     }
 }
 
diff --git a/src/OpenFOAM/db/IOobjects/IOField/IOField.H b/src/OpenFOAM/db/IOobjects/IOField/IOField.H
index bb6bff25848..3132244c2bb 100644
--- a/src/OpenFOAM/db/IOobjects/IOField/IOField.H
+++ b/src/OpenFOAM/db/IOobjects/IOField/IOField.H
@@ -59,6 +59,9 @@ class IOField
 {
     // Private Member Functions
 
+        //- Read with optional 'on-proc' value
+        void readFromStream(const bool readOnProc = true);
+
         //- Read if IOobject flags set. Return true if read.
         bool readContents();
 
@@ -80,7 +83,7 @@ public:
         explicit IOField(const IOobject& io);
 
         //- Construct from IOobject, with local processor conditional reading
-        IOField(const IOobject& io, const bool valid);
+        IOField(const IOobject& io, const bool readOnProc);
 
         //- Construct from IOobject and zero size (if not read)
         IOField(const IOobject& io, Foam::zero);
diff --git a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
index 1d5105688b6..aff5bd271ec 100644
--- a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
+++ b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
@@ -1002,7 +1002,7 @@ bool Foam::decomposedBlockData::writeData(Ostream& os) const
 bool Foam::decomposedBlockData::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     autoPtr<OSstream> osPtr;
diff --git a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.H b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.H
index 247a7006f2b..bedc5e5e5ec 100644
--- a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.H
+++ b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.H
@@ -188,7 +188,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C
index 58f1caddf37..79da7ae93b4 100644
--- a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C
+++ b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.C
@@ -101,7 +101,7 @@ void Foam::masterOFstream::commit()
 
         if (uniform)
         {
-            if (Pstream::master() && valid_)
+            if (Pstream::master() && writeOnProc_)
             {
                 checkWrite(pathName_, this->str());
             }
@@ -116,7 +116,7 @@ void Foam::masterOFstream::commit()
         // Send my (valid) buffer to master
         if (!Pstream::master())
         {
-            if (valid_)
+            if (writeOnProc_)
             {
                 string s(this->str());
 
@@ -131,7 +131,7 @@ void Foam::masterOFstream::commit()
         if (Pstream::master())
         {
             // Write (valid) master data
-            if (valid_)
+            if (writeOnProc_)
             {
                 checkWrite(filePaths[Pstream::masterNo()], this->str());
             }
@@ -173,7 +173,7 @@ Foam::masterOFstream::masterOFstream
     const fileName& pathName,
     IOstreamOption streamOpt,
     IOstreamOption::appendType append,
-    const bool valid
+    const bool writeOnProc
 )
 :
     OStringStream(streamOpt),
@@ -181,7 +181,7 @@ Foam::masterOFstream::masterOFstream
     atomic_(atomic),
     compression_(streamOpt.compression()),
     append_(append),
-    valid_(valid)
+    writeOnProc_(writeOnProc)
 {}
 
 
diff --git a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H
index aa75227b945..4abeaf17e8c 100644
--- a/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H
+++ b/src/OpenFOAM/db/IOstreams/Fstreams/masterOFstream.H
@@ -68,7 +68,7 @@ class masterOFstream
         const IOstreamOption::appendType append_;
 
         //- Should file be written (on this processor)
-        const bool valid_;
+        const bool writeOnProc_;
 
 
     // Private Member Functions
@@ -100,7 +100,7 @@ public:
             const fileName& pathname,
             IOstreamOption streamOpt = IOstreamOption(),
             IOstreamOption::appendType append = IOstreamOption::NON_APPEND,
-            const bool valid = true
+            const bool writeOnProc = true
         );
 
         //- Construct (with worldComm)
@@ -110,7 +110,7 @@ public:
             const fileName& pathname,
             IOstreamOption streamOpt = IOstreamOption(),
             IOstreamOption::appendType append = IOstreamOption::NON_APPEND,
-            const bool valid = true
+            const bool writeOnProc = true
         )
         :
             masterOFstream
@@ -119,7 +119,7 @@ public:
                 pathname,
                 streamOpt,
                 append,
-                valid
+                writeOnProc
             )
         {}
 
diff --git a/src/OpenFOAM/db/Time/Time.H b/src/OpenFOAM/db/Time/Time.H
index ec329333e75..f9a410114ff 100644
--- a/src/OpenFOAM/db/Time/Time.H
+++ b/src/OpenFOAM/db/Time/Time.H
@@ -465,7 +465,7 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Write the objects immediately (not at end of iteration)
diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C
index d41f0485f5f..5f54fc28dce 100644
--- a/src/OpenFOAM/db/Time/TimeIO.C
+++ b/src/OpenFOAM/db/Time/TimeIO.C
@@ -547,7 +547,7 @@ bool Foam::Time::writeTimeDict() const
 bool Foam::Time::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     if (writeTime())
@@ -556,7 +556,7 @@ bool Foam::Time::writeObject
 
         if (writeOK)
         {
-            writeOK = objectRegistry::writeObject(streamOpt, valid);
+            writeOK = objectRegistry::writeObject(streamOpt, writeOnProc);
         }
 
         if (writeOK)
diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.C b/src/OpenFOAM/db/objectRegistry/objectRegistry.C
index 9f730d0375c..13f1b5f16e8 100644
--- a/src/OpenFOAM/db/objectRegistry/objectRegistry.C
+++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.C
@@ -500,7 +500,7 @@ bool Foam::objectRegistry::readIfModified()
 bool Foam::objectRegistry::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     bool ok = true;
@@ -521,7 +521,7 @@ bool Foam::objectRegistry::writeObject
 
         if (iter.val()->writeOpt() != IOobjectOption::NO_WRITE)
         {
-            ok = iter.val()->writeObject(streamOpt, valid) && ok;
+            ok = iter.val()->writeObject(streamOpt, writeOnProc) && ok;
         }
     }
 
diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.H b/src/OpenFOAM/db/objectRegistry/objectRegistry.H
index d8a56712bb9..f0cff91d5c7 100644
--- a/src/OpenFOAM/db/objectRegistry/objectRegistry.H
+++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.H
@@ -585,7 +585,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/OpenFOAM/db/regIOobject/regIOobject.H b/src/OpenFOAM/db/regIOobject/regIOobject.H
index bdd4d9ec255..ea84d29dc38 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobject.H
+++ b/src/OpenFOAM/db/regIOobject/regIOobject.H
@@ -114,7 +114,7 @@ private:
     // Private Member Functions
 
         //- Construct object stream, read header if not already constructed
-        void readStream(const bool valid);
+        void readStream(const bool readOnProc);
 
         //- No copy assignment
         void operator=(const regIOobject&) = delete;
@@ -306,7 +306,7 @@ public:
             bool headerOk();
 
             //- Return Istream and check object type against that given
-            Istream& readStream(const word&, const bool valid = true);
+            Istream& readStream(const word&, const bool readOnProc = true);
 
             //- Close Istream
             void close();
@@ -347,11 +347,11 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Write using setting from DB
-            virtual bool write(const bool valid = true) const;
+            virtual bool write(const bool writeOnProc = true) const;
 
 
         // Other
@@ -378,10 +378,10 @@ public:
             IOstreamOption::streamFormat fmt,
             IOstreamOption::versionNumber ver,
             IOstreamOption::compressionType cmp,
-            const bool valid
+            const bool writeOnProc
         ) const
         {
-            return writeObject(IOstreamOption(fmt, ver, cmp), valid);
+            return writeObject(IOstreamOption(fmt, ver, cmp), writeOnProc);
         }
 };
 
diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectRead.C b/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
index 9de632967ea..7f47d0f8181 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
@@ -83,7 +83,7 @@ bool Foam::regIOobject::readHeaderOk
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-void Foam::regIOobject::readStream(const bool valid)
+void Foam::regIOobject::readStream(const bool readOnProc)
 {
     if (readOpt() == IOobject::NO_READ)
     {
@@ -117,7 +117,7 @@ void Foam::regIOobject::readStream(const bool valid)
             }
         }
 
-        isPtr_ = fileHandler().readStream(*this, objPath, type(), valid);
+        isPtr_ = fileHandler().readStream(*this, objPath, type(), readOnProc);
     }
 }
 
@@ -125,7 +125,7 @@ void Foam::regIOobject::readStream(const bool valid)
 Foam::Istream& Foam::regIOobject::readStream
 (
     const word& expectName,
-    const bool valid
+    const bool readOnProc
 )
 {
     if (IFstream::debug)
@@ -140,14 +140,14 @@ Foam::Istream& Foam::regIOobject::readStream
     // Construct IFstream if not already constructed
     if (!isPtr_)
     {
-        readStream(valid);
+        readStream(readOnProc);
 
         // Check the className of the regIOobject
         // dictionary is an allowable name in case the actual class
         // instantiated is a dictionary
         if
         (
-            valid
+            readOnProc
          && expectName.size()
          && headerClassName() != expectName
          && headerClassName() != "dictionary"
diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C b/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
index 42864ee98ad..44dcdcd4495 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
@@ -35,7 +35,7 @@ License
 bool Foam::regIOobject::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     if (!good())
@@ -107,7 +107,7 @@ bool Foam::regIOobject::writeObject
     bool osGood = false;
     if (!masterOnly || Pstream::master())
     {
-        osGood = fileHandler().writeObject(*this, streamOpt, valid);
+        osGood = fileHandler().writeObject(*this, streamOpt, writeOnProc);
     }
     else
     {
@@ -131,12 +131,12 @@ bool Foam::regIOobject::writeObject
 }
 
 
-bool Foam::regIOobject::write(const bool valid) const
+bool Foam::regIOobject::write(const bool writeOnProc) const
 {
     return writeObject
     (
         IOstreamOption(time().writeFormat(), time().writeCompression()),
-        valid
+        writeOnProc
     );
 }
 
diff --git a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C
index ec67865fca5..e12779bf695 100644
--- a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C
+++ b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.C
@@ -364,7 +364,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject
 (
     const regIOobject& io,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     const Time& tm = io.time();
@@ -392,7 +392,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject
             pathName,
             streamOpt,
             IOstreamOption::NON_APPEND,
-            valid
+            writeOnProc
         );
 
         // If any of these fail, return
@@ -436,7 +436,7 @@ bool Foam::fileOperations::collatedFileOperation::writeObject
                 pathName,
                 streamOpt,
                 IOstreamOption::NON_APPEND,
-                valid
+                writeOnProc
             );
 
             // If any of these fail, return
diff --git a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.H b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.H
index b789fee4a97..fdfd59c2c48 100644
--- a/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.H
+++ b/src/OpenFOAM/global/fileOperations/collatedFileOperation/collatedFileOperation.H
@@ -162,7 +162,7 @@ public:
             (
                 const regIOobject&,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
         // Other
diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C
index 62a485d85bf..4fcef621cf2 100644
--- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C
+++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.C
@@ -801,10 +801,10 @@ bool Foam::fileOperation::writeObject
 (
     const regIOobject& io,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
-    if (valid)
+    if (writeOnProc)
     {
         const fileName pathName(io.objectPath());
 
diff --git a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H
index 982ac5dfe45..8da0f46275b 100644
--- a/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H
+++ b/src/OpenFOAM/global/fileOperations/fileOperation/fileOperation.H
@@ -433,7 +433,7 @@ public:
                 regIOobject&,
                 const fileName&,
                 const word& typeName,
-                const bool valid = true
+                const bool readOnProc = true
             ) const = 0;
 
             //- Top-level read
@@ -447,14 +447,14 @@ public:
 
             //- Writes a regIOobject (so header, contents and divider).
             //  Returns success state. Default action is to write to
-            //  the objectPath using writeData. If !valid the
+            //  the objectPath using writeData. If !writeOnProc the
             //  file does not need to be written (this is used e.g. to
             //  suppress empty local lagrangian data)
             virtual bool writeObject
             (
                 const regIOobject& io,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
 
@@ -477,7 +477,7 @@ public:
             (
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const = 0;
 
             //- Generate an OSstream that writes a file
@@ -486,7 +486,7 @@ public:
                 IOstreamOption::atomicType atomic,
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const = 0;
 
 
diff --git a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C
index df2c0822c8c..de391d0b0cc 100644
--- a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C
+++ b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C
@@ -1835,7 +1835,7 @@ Foam::fileOperations::masterUncollatedFileOperation::readStream
     regIOobject& io,
     const fileName& fName,
     const word& typeName,
-    const bool valid
+    const bool readOnProc
 ) const
 {
     if (debug)
@@ -1843,7 +1843,7 @@ Foam::fileOperations::masterUncollatedFileOperation::readStream
         Pout<< "masterUncollatedFileOperation::readStream :"
             << " object : " << io.name()
             << " global : " << io.global()
-            << " fName : " << fName << " valid:" << valid << endl;
+            << " fName : " << fName << " readOnProc:" << readOnProc << endl;
     }
 
 
@@ -2027,10 +2027,13 @@ Foam::fileOperations::masterUncollatedFileOperation::readStream
             filePaths[Pstream::myProcNo()] = fName;
             Pstream::gatherList(filePaths);
 
-            boolList procValid(UPstream::listGatherValues<bool>(valid));
+            boolList procValid
+            (
+                UPstream::listGatherValues<bool>(readOnProc)
+            );
             // NB: local proc validity information required on sub-ranks too!
             procValid.resize(Pstream::nProcs());
-            procValid[Pstream::myProcNo()] = valid;
+            procValid[Pstream::myProcNo()] = readOnProc;
 
             return read(io, Pstream::worldComm, true, filePaths, procValid);
         }
@@ -2041,10 +2044,13 @@ Foam::fileOperations::masterUncollatedFileOperation::readStream
             filePaths[Pstream::myProcNo(comm_)] = fName;
             Pstream::gatherList(filePaths, Pstream::msgType(), comm_);
 
-            boolList procValid(UPstream::listGatherValues<bool>(valid, comm_));
+            boolList procValid
+            (
+                UPstream::listGatherValues<bool>(readOnProc, comm_)
+            );
             // NB: local proc validity information required on sub-ranks too!
             procValid.resize(Pstream::nProcs(comm_));
-            procValid[Pstream::myProcNo(comm_)] = valid;
+            procValid[Pstream::myProcNo(comm_)] = readOnProc;
 
             // Uniform in local comm
             const bool uniform = uniformFile(filePaths);
@@ -2139,7 +2145,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::writeObject
 (
     const regIOobject& io,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     fileName pathName(io.objectPath());
@@ -2147,7 +2153,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::writeObject
     if (debug)
     {
         Pout<< "masterUncollatedFileOperation::writeObject :"
-            << " io:" << pathName << " valid:" << valid << endl;
+            << " io:" << pathName << " writeOnProc:" << writeOnProc << endl;
     }
 
     // Make sure to pick up any new times
@@ -2156,7 +2162,7 @@ bool Foam::fileOperations::masterUncollatedFileOperation::writeObject
     // Update meta-data for current state
     const_cast<regIOobject&>(io).updateMetaData();
 
-    autoPtr<OSstream> osPtr(NewOFstream(pathName, streamOpt, valid));
+    autoPtr<OSstream> osPtr(NewOFstream(pathName, streamOpt, writeOnProc));
     OSstream& os = *osPtr;
 
     // If any of these fail, return (leave error handling to Ostream class)
@@ -2406,7 +2412,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream
 (
     const fileName& pathName,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return autoPtr<OSstream>
@@ -2416,7 +2422,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream
             pathName,
             streamOpt,
             IOstreamOption::NON_APPEND,
-            valid
+            writeOnProc
         )
     );
 }
@@ -2428,7 +2434,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream
     IOstreamOption::atomicType atomic,
     const fileName& pathName,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return autoPtr<OSstream>
@@ -2439,7 +2445,7 @@ Foam::fileOperations::masterUncollatedFileOperation::NewOFstream
             pathName,
             streamOpt,
             IOstreamOption::NON_APPEND,
-            valid
+            writeOnProc
         )
     );
 }
diff --git a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H
index 54ce0dbd385..225102ab4db 100644
--- a/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H
+++ b/src/OpenFOAM/global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.H
@@ -662,13 +662,13 @@ public:
             ) const;
 
             //- Reads header for regIOobject and returns an ISstream
-            //  to read the contents.
+            //- to read the contents.
             virtual autoPtr<ISstream> readStream
             (
                 regIOobject&,
                 const fileName&,
                 const word& typeName,
-                const bool valid = true
+                const bool readOnProc = true
             ) const;
 
             //- Top-level read
@@ -686,7 +686,7 @@ public:
             (
                 const regIOobject& io,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
             //- Generate an ISstream that reads a file
@@ -697,7 +697,7 @@ public:
             (
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
             //- Generate an OSstream that writes a file
@@ -706,7 +706,7 @@ public:
                 IOstreamOption::atomicType atomic,
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
 
diff --git a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C
index 39181c47028..8acc5692ad5 100644
--- a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C
+++ b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.C
@@ -548,10 +548,10 @@ Foam::fileOperations::uncollatedFileOperation::readStream
     regIOobject& io,
     const fileName& fName,
     const word& typeName,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
-    if (!valid)
+    if (!writeOnProc)
     {
         return autoPtr<ISstream>(new dummyISstream());
     }
@@ -718,7 +718,7 @@ Foam::fileOperations::uncollatedFileOperation::NewOFstream
 (
     const fileName& pathName,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return autoPtr<OSstream>(new OFstream(pathName, streamOpt));
@@ -731,7 +731,7 @@ Foam::fileOperations::uncollatedFileOperation::NewOFstream
     IOstreamOption::atomicType atomic,
     const fileName& pathName,
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return autoPtr<OSstream>(new OFstream(atomic, pathName, streamOpt));
diff --git a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.H b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.H
index 66949b2adc0..d81c54d86d9 100644
--- a/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.H
+++ b/src/OpenFOAM/global/fileOperations/uncollatedFileOperation/uncollatedFileOperation.H
@@ -291,7 +291,7 @@ public:
             (
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 
             //- Generate an OSstream that writes a file
@@ -300,7 +300,7 @@ public:
                 IOstreamOption::atomicType,
                 const fileName& pathname,
                 IOstreamOption streamOpt = IOstreamOption(),
-                const bool valid = true
+                const bool writeOnProc = true
             ) const;
 };
 
diff --git a/src/OpenFOAM/global/profiling/profiling.C b/src/OpenFOAM/global/profiling/profiling.C
index 74fb946cb95..7d4f10908f1 100644
--- a/src/OpenFOAM/global/profiling/profiling.C
+++ b/src/OpenFOAM/global/profiling/profiling.C
@@ -386,7 +386,7 @@ bool Foam::profiling::writeData(Ostream& os) const
 bool Foam::profiling::writeObject
 (
     IOstreamOption,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return
diff --git a/src/OpenFOAM/global/profiling/profiling.H b/src/OpenFOAM/global/profiling/profiling.H
index fe711bad202..472a6b2c18f 100644
--- a/src/OpenFOAM/global/profiling/profiling.H
+++ b/src/OpenFOAM/global/profiling/profiling.H
@@ -260,7 +260,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption /*ignore*/,
-            const bool valid
+            const bool writeOnProc
         ) const;
 };
 
diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
index 5f7e691c76b..2f2ce8a5686 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
@@ -1246,11 +1246,11 @@ bool Foam::polyBoundaryMesh::writeData(Ostream& os) const
 bool Foam::polyBoundaryMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     streamOpt.compression(IOstreamOption::UNCOMPRESSED);
-    return regIOobject::writeObject(streamOpt, valid);
+    return regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H
index 6230d222f4a..8787136c47a 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H
+++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.H
@@ -315,7 +315,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C
index 296f9aae280..54a95185d20 100644
--- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C
+++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.C
@@ -46,11 +46,11 @@ static const char* headerTypeCompat = "IOPtrList<coordinateSystem>";
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-void Foam::coordinateSystems::readFromStream(const bool valid)
+void Foam::coordinateSystems::readFromStream(const bool readOnProc)
 {
-    Istream& is = readStream(word::null, valid);
+    Istream& is = readStream(word::null, readOnProc);
 
-    if (valid)
+    if (readOnProc)
     {
         if (headerClassName() == typeName)
         {
@@ -308,14 +308,14 @@ bool Foam::coordinateSystems::writeData(Ostream& os) const
 bool Foam::coordinateSystems::writeObject
 (
     IOstreamOption,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Force ASCII, uncompressed
     return regIOobject::writeObject
     (
         IOstreamOption(IOstreamOption::ASCII),
-        valid
+        writeOnProc
     );
 }
 
diff --git a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H
index de5b756425b..3f4b483f8a7 100644
--- a/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H
+++ b/src/OpenFOAM/primitives/coordinate/systems/coordinateSystems.H
@@ -84,7 +84,7 @@ class coordinateSystems
     // Private Member Functions
 
         //- Read "coordinateSystems" or older "IOPtrList<coordinateSystem>"
-        void readFromStream(const bool valid = true);
+        void readFromStream(const bool readOnProc = true);
 
         //- Read if IOobject flags set. Return true if read.
         bool readContents();
@@ -184,7 +184,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid = true
+            const bool writeOnProc = true
         ) const;
 
 
diff --git a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
index 5d5ad7e906b..7c9eae62199 100644
--- a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
+++ b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
@@ -1486,7 +1486,7 @@ bool Foam::dynamicRefineFvMesh::update()
 bool Foam::dynamicRefineFvMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Force refinement data to go to the current time directory.
@@ -1494,9 +1494,9 @@ bool Foam::dynamicRefineFvMesh::writeObject
 
     bool writeOk =
     (
-        //dynamicFvMesh::writeObject(streamOpt, valid)
-        dynamicMotionSolverListFvMesh::writeObject(streamOpt, valid)
-     && meshCutter_.write(valid)
+        //dynamicFvMesh::writeObject(streamOpt, writeOnProc)
+        dynamicMotionSolverListFvMesh::writeObject(streamOpt, writeOnProc)
+     && meshCutter_.write(writeOnProc)
     );
 
     if (dumpLevel_)
diff --git a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.H b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.H
index 53e245f7025..99ece8c4ffd 100644
--- a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.H
+++ b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.H
@@ -280,7 +280,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 };
 
diff --git a/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.C b/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.C
index 8ec04241826..1e2c396d35a 100644
--- a/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.C
+++ b/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.C
@@ -217,7 +217,7 @@ void Foam::motionSolver::updateMesh(const mapPolyMesh& mpm)
 bool Foam::motionSolver::writeObject
 (
     IOstreamOption,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return true;
diff --git a/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.H b/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.H
index 576f4931b3d..6e5d2e04a44 100644
--- a/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.H
+++ b/src/dynamicMesh/motionSolvers/motionSolver/motionSolver.H
@@ -174,7 +174,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Read dynamicMeshDict dictionary
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C
index 2a361e6bbda..81bb134441c 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.C
@@ -5690,16 +5690,16 @@ void Foam::hexRef8::setUnrefinement
 
 
 // Write refinement to polyMesh directory.
-bool Foam::hexRef8::write(const bool valid) const
+bool Foam::hexRef8::write(const bool writeOnProc) const
 {
     bool writeOk =
-        cellLevel_.write(valid)
-     && pointLevel_.write(valid)
-     && level0Edge_.write(valid);
+        cellLevel_.write(writeOnProc)
+     && pointLevel_.write(writeOnProc)
+     && level0Edge_.write(writeOnProc);
 
     if (history_.active())
     {
-        writeOk = writeOk && history_.write(valid);
+        writeOk = writeOk && history_.write(writeOnProc);
     }
     else
     {
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.H b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.H
index d82f7b4fefa..d013c92a588 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.H
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8.H
@@ -588,7 +588,7 @@ public:
             void setInstance(const fileName& inst);
 
             //- Force writing refinement+history to polyMesh directory.
-            bool write(const bool valid = true) const;
+            bool write(const bool writeOnProc = true) const;
 
             //- Helper: remove all relevant files from mesh instance
             static void removeFiles(const polyMesh&);
diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C
index 9dee45cd566..47fc2ff4801 100644
--- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C
+++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.C
@@ -909,14 +909,14 @@ bool Foam::faBoundaryMesh::writeData(Ostream& os) const
 bool Foam::faBoundaryMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Allow/disallow compression?
     // 1. keep readable
     // 2. save some space
     // ??? streamOpt.compression(IOstreamOption::UNCOMPRESSED);
-    return regIOobject::writeObject(streamOpt, valid);
+    return regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H
index e3945375eac..ca64a6380c5 100644
--- a/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H
+++ b/src/finiteArea/faMesh/faBoundaryMesh/faBoundaryMesh.H
@@ -244,7 +244,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/finiteArea/faMesh/faMesh.C b/src/finiteArea/faMesh/faMesh.C
index 12d34152be3..46719c6b866 100644
--- a/src/finiteArea/faMesh/faMesh.C
+++ b/src/finiteArea/faMesh/faMesh.C
@@ -1044,7 +1044,7 @@ Foam::boolList& Foam::faMesh::correctPatchPointNormals() const
 }
 
 
-bool Foam::faMesh::write(const bool valid) const
+bool Foam::faMesh::write(const bool writeOnProc) const
 {
     faceLabels_.write();
     boundary_.write();
diff --git a/src/finiteArea/faMesh/faMesh.H b/src/finiteArea/faMesh/faMesh.H
index 7ccfa6c2688..a512b9de59e 100644
--- a/src/finiteArea/faMesh/faMesh.H
+++ b/src/finiteArea/faMesh/faMesh.H
@@ -947,7 +947,7 @@ public:
 
 
         //- Write mesh
-        virtual bool write(const bool valid = true) const;
+        virtual bool write(const bool writeOnProc = true) const;
 
 
     // Member Operators
diff --git a/src/finiteVolume/fvMesh/fvMesh.C b/src/finiteVolume/fvMesh/fvMesh.C
index 9d1765ad0de..f2759e7cdd8 100644
--- a/src/finiteVolume/fvMesh/fvMesh.C
+++ b/src/finiteVolume/fvMesh/fvMesh.C
@@ -1048,13 +1048,13 @@ void Foam::fvMesh::updateMesh(const mapPolyMesh& mpm)
 bool Foam::fvMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     bool ok = true;
     if (phiPtr_)
     {
-        ok = phiPtr_->write(valid);
+        ok = phiPtr_->write(writeOnProc);
         // NOTE: The old old time mesh phi might be necessary for certain
         // solver smooth restart using second order time schemes.
         //ok = phiPtr_->oldTime().write();
@@ -1062,16 +1062,16 @@ bool Foam::fvMesh::writeObject
     if (V0Ptr_ && V0Ptr_->writeOpt() == IOobject::AUTO_WRITE)
     {
         // For second order restarts we need to write V0
-        ok = V0Ptr_->write(valid);
+        ok = V0Ptr_->write(writeOnProc);
     }
 
-    return ok && polyMesh::writeObject(streamOpt, valid);
+    return ok && polyMesh::writeObject(streamOpt, writeOnProc);
 }
 
 
-bool Foam::fvMesh::write(const bool valid) const
+bool Foam::fvMesh::write(const bool writeOnProc) const
 {
-    return polyMesh::write(valid);
+    return polyMesh::write(writeOnProc);
 }
 
 
diff --git a/src/finiteVolume/fvMesh/fvMesh.H b/src/finiteVolume/fvMesh/fvMesh.H
index 4b76ea85153..1d0d9b1fa22 100644
--- a/src/finiteVolume/fvMesh/fvMesh.H
+++ b/src/finiteVolume/fvMesh/fvMesh.H
@@ -508,11 +508,11 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Write mesh using IO settings from time
-            virtual bool write(const bool valid = true) const;
+            virtual bool write(const bool writeOnProc = true) const;
 
 
     // Member Operators
diff --git a/src/functionObjects/field/streamLine/streamLineParticle.C b/src/functionObjects/field/streamLine/streamLineParticle.C
index 41c2bb8e8d6..c18415d524a 100644
--- a/src/functionObjects/field/streamLine/streamLineParticle.C
+++ b/src/functionObjects/field/streamLine/streamLineParticle.C
@@ -388,21 +388,21 @@ void Foam::streamLineParticle::hitWallPatch
 
 void Foam::streamLineParticle::readFields(Cloud<streamLineParticle>& c)
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     particle::readFields(c);
 
     IOField<label> lifeTime
     (
         c.fieldIOobject("lifeTime", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, lifeTime);
 
     vectorFieldIOField sampledPositions
     (
         c.fieldIOobject("sampledPositions", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, sampledPositions);
 
@@ -421,7 +421,7 @@ void Foam::streamLineParticle::writeFields(const Cloud<streamLineParticle>& c)
     particle::writeFields(c);
 
     const label np = c.size();
-    const bool valid = c.size();
+    const bool writeOnProc = c.size();
 
     IOField<label> lifeTime
     (
@@ -442,8 +442,8 @@ void Foam::streamLineParticle::writeFields(const Cloud<streamLineParticle>& c)
         ++i;
     }
 
-    lifeTime.write(valid);
-    sampledPositions.write(valid);
+    lifeTime.write(writeOnProc);
+    sampledPositions.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C
index 3900bd6fb00..c50c4e35018 100644
--- a/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C
+++ b/src/lagrangian/DSMC/parcels/Templates/DSMCParcel/DSMCParcelIO.C
@@ -87,20 +87,20 @@ Foam::DSMCParcel<ParcelType>::DSMCParcel
 template<class ParcelType>
 void Foam::DSMCParcel<ParcelType>::readFields(Cloud<DSMCParcel<ParcelType>>& c)
 {
-    bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
-    IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), valid);
+    IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, U);
 
-    IOField<scalar> Ei(c.fieldIOobject("Ei", IOobject::MUST_READ), valid);
+    IOField<scalar> Ei(c.fieldIOobject("Ei", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, Ei);
 
     IOField<label> typeId
     (
         c.fieldIOobject("typeId", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, typeId);
 
@@ -123,7 +123,8 @@ void Foam::DSMCParcel<ParcelType>::writeFields
 {
     ParcelType::writeFields(c);
 
-    label np = c.size();
+    const label np = c.size();
+    const bool writeOnProc = c.size();
 
     IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np);
     IOField<scalar> Ei(c.fieldIOobject("Ei", IOobject::NO_READ), np);
@@ -138,9 +139,9 @@ void Foam::DSMCParcel<ParcelType>::writeFields
         ++i;
     }
 
-    U.write(np > 0);
-    Ei.write(np > 0);
-    typeId.write(np > 0);
+    U.write(writeOnProc);
+    Ei.write(writeOnProc);
+    typeId.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/basic/Cloud/Cloud.H b/src/lagrangian/basic/Cloud/Cloud.H
index 5a92cc0320c..e295f600d4c 100644
--- a/src/lagrangian/basic/Cloud/Cloud.H
+++ b/src/lagrangian/basic/Cloud/Cloud.H
@@ -269,7 +269,7 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Write positions to \<cloudName\>_positions.obj file
diff --git a/src/lagrangian/basic/Cloud/CloudIO.C b/src/lagrangian/basic/Cloud/CloudIO.C
index cbe38d4aed3..21e46bbc115 100644
--- a/src/lagrangian/basic/Cloud/CloudIO.C
+++ b/src/lagrangian/basic/Cloud/CloudIO.C
@@ -134,18 +134,18 @@ void Foam::Cloud<ParticleType>::initCloud(const bool checkClass)
 
     IOPosition<Cloud<ParticleType>> ioP(*this, geometryType_);
 
-    const bool valid = ioP.headerOk();
-    Istream& is = ioP.readStream(checkClass ? typeName : "", valid);
-    if (valid)
+    const bool haveFile = ioP.headerOk();
+    Istream& is = ioP.readStream(checkClass ? typeName : word::null, haveFile);
+    if (haveFile)
     {
         ioP.readData(is, *this);
         ioP.close();
     }
 
-    if (!valid && debug)
+    if (!haveFile && debug)
     {
-        Pout<< "Cannot read particle positions file:" << nl
-            << "    " << ioP.objectPath() << nl
+        Pout<< "Not reading particle positions file: "
+            << ioP.objectRelPath() << nl
             << "Assuming the initial cloud contains 0 particles." << endl;
     }
 
@@ -329,13 +329,13 @@ template<class ParticleType>
 bool Foam::Cloud<ParticleType>::writeObject
 (
     IOstreamOption streamOpt,
-    const bool
+    const bool /* writeOnProc */
 ) const
 {
     writeCloudUniformProperties();
 
     writeFields();
-    return cloud::writeObject(streamOpt, this->size());
+    return cloud::writeObject(streamOpt, (this->size() > 0));
 }
 
 
diff --git a/src/lagrangian/basic/IOPosition/IOPosition.C b/src/lagrangian/basic/IOPosition/IOPosition.C
index 27014dab3a0..ad772a278e8 100644
--- a/src/lagrangian/basic/IOPosition/IOPosition.C
+++ b/src/lagrangian/basic/IOPosition/IOPosition.C
@@ -54,9 +54,12 @@ Foam::IOPosition<CloudType>::IOPosition
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class CloudType>
-bool Foam::IOPosition<CloudType>::write(const bool valid) const
+bool Foam::IOPosition<CloudType>::write
+(
+    const bool /* writeOnProc */
+) const
 {
-    return regIOobject::write(cloud_.size());
+    return regIOobject::write(cloud_.size() > 0);
 }
 
 
diff --git a/src/lagrangian/basic/IOPosition/IOPosition.H b/src/lagrangian/basic/IOPosition/IOPosition.H
index 74e62d7876d..0ffd43ea2f0 100644
--- a/src/lagrangian/basic/IOPosition/IOPosition.H
+++ b/src/lagrangian/basic/IOPosition/IOPosition.H
@@ -84,14 +84,14 @@ public:
         );
 
 
-    // Member functions
+    // Member Functions
 
         //- Inherit readData from regIOobject
         using regIOobject::readData;
 
         virtual void readData(Istream&, CloudType&);
 
-        virtual bool write(const bool valid = true) const;
+        virtual bool write(const bool writeOnProc = true) const;
 
         virtual bool writeData(Ostream& os) const;
 };
diff --git a/src/lagrangian/basic/particle/particleTemplates.C b/src/lagrangian/basic/particle/particleTemplates.C
index 7ebc4d42016..9169336118f 100644
--- a/src/lagrangian/basic/particle/particleTemplates.C
+++ b/src/lagrangian/basic/particle/particleTemplates.C
@@ -139,19 +139,19 @@ void Foam::particle::writeProperty
 template<class TrackCloudType>
 void Foam::particle::readFields(TrackCloudType& c)
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     IOobject procIO(c.fieldIOobject("origProcId", IOobject::MUST_READ));
 
     const bool haveFile = procIO.typeHeaderOk<IOField<label>>(true);
 
-    IOField<label> origProcId(procIO, valid && haveFile);
+    IOField<label> origProcId(procIO, readOnProc && haveFile);
     c.checkFieldIOobject(c, origProcId);
 
     IOField<label> origId
     (
         c.fieldIOobject("origId", IOobject::MUST_READ),
-        valid && haveFile
+        readOnProc && haveFile
     );
     c.checkFieldIOobject(c, origId);
 
@@ -170,12 +170,12 @@ template<class TrackCloudType>
 void Foam::particle::writeFields(const TrackCloudType& c)
 {
     const label np = c.size();
-    const bool valid = np;
+    const bool writeOnProc = c.size();
 
     if (writeLagrangianCoordinates)
     {
         IOPosition<TrackCloudType> ioP(c);
-        ioP.write(valid);
+        ioP.write(writeOnProc);
     }
     else if (!writeLagrangianPositions)
     {
@@ -192,7 +192,7 @@ void Foam::particle::writeFields(const TrackCloudType& c)
             c,
             cloud::geometryType::POSITIONS
         );
-        ioP.write(valid);
+        ioP.write(writeOnProc);
     }
 
     IOField<label> origProc
@@ -215,8 +215,8 @@ void Foam::particle::writeFields(const TrackCloudType& c)
         ++i;
     }
 
-    origProc.write(valid);
-    origId.write(valid);
+    origProc.write(writeOnProc);
+    origId.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C
index 9cc2e20489f..1aa32adde2a 100644
--- a/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/CollidingParcel/CollidingParcelIO.C
@@ -97,31 +97,31 @@ template<class ParcelType>
 template<class CloudType>
 void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c)
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
-    IOField<vector> f(c.fieldIOobject("f", IOobject::MUST_READ), valid);
+    IOField<vector> f(c.fieldIOobject("f", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, f);
 
     IOField<vector> angularMomentum
     (
         c.fieldIOobject("angularMomentum", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, angularMomentum);
 
     IOField<vector> torque
     (
         c.fieldIOobject("torque", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, torque);
 
     labelFieldCompactIOField collisionRecordsPairAccessed
     (
         c.fieldIOobject("collisionRecordsPairAccessed", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsPairAccessed);
 
@@ -132,7 +132,7 @@ void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c)
             "collisionRecordsPairOrigProcOfOther",
             IOobject::MUST_READ
         ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsPairOrigProcOfOther);
 
@@ -143,35 +143,35 @@ void Foam::CollidingParcel<ParcelType>::readFields(CloudType& c)
             "collisionRecordsPairOrigIdOfOther",
             IOobject::MUST_READ
         ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsPairOrigProcOfOther);
 
     pairDataFieldCompactIOField collisionRecordsPairData
     (
         c.fieldIOobject("collisionRecordsPairData", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsPairData);
 
     labelFieldCompactIOField collisionRecordsWallAccessed
     (
         c.fieldIOobject("collisionRecordsWallAccessed", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsWallAccessed);
 
     vectorFieldCompactIOField collisionRecordsWallPRel
     (
         c.fieldIOobject("collisionRecordsWallPRel", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsWallPRel);
 
     wallDataFieldCompactIOField collisionRecordsWallData
     (
         c.fieldIOobject("collisionRecordsWallData", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldFieldIOobject(c, collisionRecordsWallData);
 
@@ -206,7 +206,7 @@ void Foam::CollidingParcel<ParcelType>::writeFields(const CloudType& c)
     ParcelType::writeFields(c);
 
     const label np = c.size();
-    const bool valid = np;
+    const bool writeOnProc = c.size();
 
 
     IOField<vector> f(c.fieldIOobject("f", IOobject::NO_READ), np);
@@ -277,17 +277,17 @@ void Foam::CollidingParcel<ParcelType>::writeFields(const CloudType& c)
         ++i;
     }
 
-    f.write(valid);
-    angMom.write(valid);
-    torque.write(valid);
-
-    collisionRecordsPairAccessed.write(valid);
-    collisionRecordsPairOrigProcOfOther.write(valid);
-    collisionRecordsPairOrigIdOfOther.write(valid);
-    collisionRecordsPairData.write(valid);
-    collisionRecordsWallAccessed.write(valid);
-    collisionRecordsWallPRel.write(valid);
-    collisionRecordsWallData.write(valid);
+    f.write(writeOnProc);
+    angMom.write(writeOnProc);
+    torque.write(writeOnProc);
+
+    collisionRecordsPairAccessed.write(writeOnProc);
+    collisionRecordsPairOrigProcOfOther.write(writeOnProc);
+    collisionRecordsPairOrigIdOfOther.write(writeOnProc);
+    collisionRecordsPairData.write(writeOnProc);
+    collisionRecordsWallAccessed.write(writeOnProc);
+    collisionRecordsWallPRel.write(writeOnProc);
+    collisionRecordsWallData.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
index c51ccf6ba77..a488b9e4f7e 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
@@ -120,84 +120,84 @@ template<class ParcelType>
 template<class CloudType>
 void Foam::KinematicParcel<ParcelType>::readFields(CloudType& c)
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
     IOField<label> active
     (
         c.fieldIOobject("active", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, active);
 
     IOField<label> typeId
     (
         c.fieldIOobject("typeId", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, typeId);
 
     IOField<scalar> nParticle
     (
         c.fieldIOobject("nParticle", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, nParticle);
 
     IOField<scalar> d
     (
         c.fieldIOobject("d", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, d);
 
     IOField<scalar> dTarget
     (
         c.fieldIOobject("dTarget", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, dTarget);
 
     IOField<vector> U
     (
         c.fieldIOobject("U", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, U);
 
     IOField<scalar> rho
     (
         c.fieldIOobject("rho", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, rho);
 
     IOField<scalar> age
     (
         c.fieldIOobject("age", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, age);
 
     IOField<scalar> tTurb
     (
         c.fieldIOobject("tTurb", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, tTurb);
 
     IOField<vector> UTurb
     (
         c.fieldIOobject("UTurb", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, UTurb);
 
     IOField<vector> UCorrect
     (
         c.fieldIOobject("UCorrect", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, UCorrect);
 
@@ -229,7 +229,7 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const CloudType& c)
     ParcelType::writeFields(c);
 
     const label np = c.size();
-    const bool valid = np;
+    const bool writeOnProc = c.size();
 
     IOField<label> active(c.fieldIOobject("active", IOobject::NO_READ), np);
     IOField<label> typeId(c.fieldIOobject("typeId", IOobject::NO_READ), np);
@@ -266,17 +266,17 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const CloudType& c)
         ++i;
     }
 
-    active.write(valid);
-    typeId.write(valid);
-    nParticle.write(valid);
-    d.write(valid);
-    dTarget.write(valid);
-    U.write(valid);
-    rho.write(valid);
-    age.write(valid);
-    tTurb.write(valid);
-    UTurb.write(valid);
-    UCorrect.write(valid);
+    active.write(writeOnProc);
+    typeId.write(writeOnProc);
+    nParticle.write(writeOnProc);
+    d.write(writeOnProc);
+    dTarget.write(writeOnProc);
+    U.write(writeOnProc);
+    rho.write(writeOnProc);
+    age.write(writeOnProc);
+    tTurb.write(writeOnProc);
+    UTurb.write(writeOnProc);
+    UCorrect.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C
index 6ae5b2bffa7..581e53e5b2c 100644
--- a/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/MPPICParcel/MPPICParcelIO.C
@@ -88,14 +88,14 @@ template<class ParcelType>
 template<class CloudType>
 void Foam::MPPICParcel<ParcelType>::readFields(CloudType& c)
 {
-    bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
     IOField<vector> UCorrect
     (
         c.fieldIOobject("UCorrect", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, UCorrect);
 
@@ -116,6 +116,7 @@ void Foam::MPPICParcel<ParcelType>::writeFields(const CloudType& c)
     ParcelType::writeFields(c);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
     IOField<vector>
         UCorrect(c.fieldIOobject("UCorrect", IOobject::NO_READ), np);
@@ -129,7 +130,7 @@ void Foam::MPPICParcel<ParcelType>::writeFields(const CloudType& c)
         ++i;
     }
 
-    UCorrect.write(np > 0);
+    UCorrect.write(writeOnProc);
 }
 
 
@@ -164,6 +165,7 @@ void Foam::MPPICParcel<ParcelType>::readObjects
 {
     ParcelType::readObjects(c, obr);
 
+    // const bool readOnProc = c.size();
     if (!c.size()) return;
 
     const auto& UCorrect = cloud::lookupIOField<vector>("UCorrect", obr);
@@ -189,6 +191,7 @@ void Foam::MPPICParcel<ParcelType>::writeObjects
     ParcelType::writeObjects(c, obr);
 
     const label np = c.size();
+    // const bool writeOnProc = c.size();
 
     auto& UCorrect = cloud::createIOField<vector>("UCorrect", np, obr);
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C
index e055b9efc68..a1109002f14 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingHeterogeneousParcel/ReactingHeterogeneousParcelIO.C
@@ -87,14 +87,14 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields
     const CompositionType& compModel
 )
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
     IOField<scalar> mass0
     (
         c.fieldIOobject("mass0", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, mass0);
 
@@ -128,7 +128,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields
                 "F" + name(i),
                 IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label j = 0;
@@ -149,7 +149,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readFields
                 "Y" + solidNames[j],
                 IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label i = 0;
@@ -186,7 +186,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields
     ThermoParcel<KinematicParcel<particle>>::writeFields(c);
 
     const label np = c.size();
-    const bool valid = np;
+    const bool writeOnProc = c.size();
 
     IOField<scalar> mass0(c.fieldIOobject("mass0", IOobject::NO_READ), np);
 
@@ -202,7 +202,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields
         }
         ++i;
     }
-    mass0.write(valid);
+    mass0.write(writeOnProc);
 
     for (label i = 0; i < nF; i++)
     {
@@ -221,7 +221,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields
             F = p0.F()[i];
         }
 
-        F.write(valid);
+        F.write(writeOnProc);
     }
 
     const label idSolid = compModel.idSolid();
@@ -246,7 +246,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeFields
             ++i;
         }
 
-        Y.write(valid);
+        Y.write(writeOnProc);
     }
 }
 
@@ -310,7 +310,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::readObjects
     // Skip Reacting layer
     ThermoParcel<KinematicParcel<particle>>::readObjects(c, obr);
 
-    // const label np = c.size();
+    // const bool readOnProc = c.size();
 
     WarningInFunction
         << "Reading of objects is still a work-in-progress" << nl;
@@ -332,6 +332,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeObjects
     ThermoParcel<KinematicParcel<particle>>::writeObjects(c, obr);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
     // WIP
     label nF = 0;
@@ -341,7 +342,7 @@ void Foam::ReactingHeterogeneousParcel<ParcelType>::writeObjects
         break;
     }
 
-    if (np > 0)
+    if (writeOnProc)
     {
         for (label i = 0; i < nF; i++)
         {
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C
index 6009aa5c278..f309f8db8a2 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelIO.C
@@ -93,7 +93,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields
     const CompositionType& compModel
 )
 {
-    bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c, compModel);
 
@@ -124,7 +124,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields
                 "Y" + gasNames[j] + stateLabels[idGas],
                 IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label i = 0;
@@ -144,7 +144,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields
                 "Y" + liquidNames[j] + stateLabels[idLiquid],
                  IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label i = 0;
@@ -164,7 +164,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readFields
                 "Y" + solidNames[j] + stateLabels[idSolid],
                 IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label i = 0;
@@ -195,7 +195,8 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields
 {
     ParcelType::writeFields(c, compModel);
 
-    label np = c.size();
+    const label np = c.size();
+    const bool writeOnProc = c.size();
 
     // Write the composition fractions
     {
@@ -222,7 +223,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields
                 ++i;
             }
 
-            YGas.write(np > 0);
+            YGas.write(writeOnProc);
         }
 
         const label idLiquid = compModel.idLiquid();
@@ -246,7 +247,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields
                 ++i;
             }
 
-            YLiquid.write(np > 0);
+            YLiquid.write(writeOnProc);
         }
 
         const label idSolid = compModel.idSolid();
@@ -270,7 +271,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeFields
                 ++i;
             }
 
-            YSolid.write(np > 0);
+            YSolid.write(writeOnProc);
         }
     }
 }
@@ -336,9 +337,10 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::readObjects
     ParcelType::readObjects(c, obr);
 
     const label np = c.size();
+    const bool readOnProc = c.size();
 
     // The composition fractions
-    if (np > 0)
+    if (readOnProc)
     {
         const wordList& stateLabels = compModel.stateLabels();
 
@@ -402,9 +404,10 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::writeObjects
     ParcelType::writeObjects(c, obr);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
     // Write the composition fractions
-    if (np > 0)
+    if (writeOnProc)
     {
         const wordList& stateLabels = compModel.stateLabels();
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C
index 2ff7086b261..9c4d324b5c3 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelIO.C
@@ -106,14 +106,14 @@ void Foam::ReactingParcel<ParcelType>::readFields
     const CompositionType& compModel
 )
 {
-    bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
     IOField<scalar> mass0
     (
         c.fieldIOobject("mass0", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, mass0);
 
@@ -151,7 +151,7 @@ void Foam::ReactingParcel<ParcelType>::readFields
                 "Y" + phaseTypes[j] + stateLabels[j],
                  IOobject::MUST_READ
             ),
-            valid
+            readOnProc
         );
 
         label i = 0;
@@ -184,6 +184,7 @@ void Foam::ReactingParcel<ParcelType>::writeFields
     ParcelType::writeFields(c);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
     {
         IOField<scalar> mass0(c.fieldIOobject("mass0", IOobject::NO_READ), np);
@@ -195,7 +196,7 @@ void Foam::ReactingParcel<ParcelType>::writeFields
 
             ++i;
         }
-        mass0.write(np > 0);
+        mass0.write(writeOnProc);
 
         // Write the composition fractions
         const wordList& phaseTypes = compModel.phaseTypes();
@@ -225,7 +226,7 @@ void Foam::ReactingParcel<ParcelType>::writeFields
                 ++i;
             }
 
-            Y.write(np > 0);
+            Y.write(writeOnProc);
         }
     }
 }
@@ -337,8 +338,9 @@ void Foam::ReactingParcel<ParcelType>::writeObjects
     ParcelType::writeObjects(c, obr);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
-    if (np > 0)
+    if (writeOnProc)
     {
         auto& mass0 = cloud::createIOField<scalar>("mass0", np, obr);
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C
index 66c2715b491..410836a8162 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelIO.C
@@ -90,14 +90,14 @@ template<class ParcelType>
 template<class CloudType>
 void Foam::ThermoParcel<ParcelType>::readFields(CloudType& c)
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c);
 
-    IOField<scalar> T(c.fieldIOobject("T", IOobject::MUST_READ), valid);
+    IOField<scalar> T(c.fieldIOobject("T", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, T);
 
-    IOField<scalar> Cp(c.fieldIOobject("Cp", IOobject::MUST_READ), valid);
+    IOField<scalar> Cp(c.fieldIOobject("Cp", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, Cp);
 
 
@@ -119,7 +119,7 @@ void Foam::ThermoParcel<ParcelType>::writeFields(const CloudType& c)
     ParcelType::writeFields(c);
 
     const label np = c.size();
-    const bool valid = np;
+    const bool writeOnProc = c.size();
 
     IOField<scalar> T(c.fieldIOobject("T", IOobject::NO_READ), np);
     IOField<scalar> Cp(c.fieldIOobject("Cp", IOobject::NO_READ), np);
@@ -133,8 +133,8 @@ void Foam::ThermoParcel<ParcelType>::writeFields(const CloudType& c)
         ++i;
     }
 
-    T.write(valid);
-    Cp.write(valid);
+    T.write(writeOnProc);
+    Cp.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C
index 00fdc15b52b..08f575bdce8 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C
+++ b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.C
@@ -138,7 +138,7 @@ bool Foam::AveragingMethod<Type>::writeData(Ostream& os) const
 
 
 template<class Type>
-bool Foam::AveragingMethod<Type>::write(const bool valid) const
+bool Foam::AveragingMethod<Type>::write(const bool writeOnProc) const
 {
     const pointMesh pointMesh_(mesh_);
 
@@ -234,10 +234,10 @@ bool Foam::AveragingMethod<Type>::write(const bool valid) const
     pointGrad.primitiveFieldRef() /= pointVolume;
 
     // write
-    if (!cellValue.write(valid)) return false;
-    if (!cellGrad.write(valid)) return false;
-    if (!pointValue.write(valid)) return false;
-    if (!pointGrad.write(valid)) return false;
+    if (!cellValue.write(writeOnProc)) return false;
+    if (!cellGrad.write(writeOnProc)) return false;
+    if (!pointValue.write(writeOnProc)) return false;
+    if (!pointGrad.write(writeOnProc)) return false;
 
     return true;
 }
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.H b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.H
index b85f98953dc..bf352e0b8aa 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.H
+++ b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/AveragingMethod/AveragingMethod.H
@@ -167,7 +167,7 @@ public:
         virtual bool writeData(Ostream&) const;
 
         //- Write using setting from DB
-        virtual bool write(const bool valid = true) const;
+        virtual bool write(const bool writeOnProc = true) const;
 
         //- Return an internal field of the average
         virtual tmp<Field<Type>> primitiveField() const = 0;
diff --git a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C
index dbf86f3ac4a..e52aa541459 100644
--- a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C
+++ b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeIO.C
@@ -110,40 +110,44 @@ Foam::molecule::molecule
 
 void Foam::molecule::readFields(Cloud<molecule>& mC)
 {
-    const bool valid = mC.size();
+    const bool readOnProc = mC.size();
 
     particle::readFields(mC);
 
-    IOField<tensor> Q(mC.fieldIOobject("Q", IOobject::MUST_READ), valid);
+    IOField<tensor> Q(mC.fieldIOobject("Q", IOobject::MUST_READ), readOnProc);
     mC.checkFieldIOobject(mC, Q);
 
-    IOField<vector> v(mC.fieldIOobject("v", IOobject::MUST_READ), valid);
+    IOField<vector> v(mC.fieldIOobject("v", IOobject::MUST_READ), readOnProc);
     mC.checkFieldIOobject(mC, v);
 
-    IOField<vector> a(mC.fieldIOobject("a", IOobject::MUST_READ), valid);
+    IOField<vector> a(mC.fieldIOobject("a", IOobject::MUST_READ), readOnProc);
     mC.checkFieldIOobject(mC, a);
 
-    IOField<vector> pi(mC.fieldIOobject("pi", IOobject::MUST_READ), valid);
+    IOField<vector> pi(mC.fieldIOobject("pi", IOobject::MUST_READ), readOnProc);
     mC.checkFieldIOobject(mC, pi);
 
-    IOField<vector> tau(mC.fieldIOobject("tau", IOobject::MUST_READ), valid);
+    IOField<vector> tau
+    (
+        mC.fieldIOobject("tau", IOobject::MUST_READ),
+        readOnProc
+    );
     mC.checkFieldIOobject(mC, tau);
 
     IOField<vector> specialPosition
     (
         mC.fieldIOobject("specialPosition", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     mC.checkFieldIOobject(mC, specialPosition);
 
     IOField<label> special
     (
         mC.fieldIOobject("special", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     mC.checkFieldIOobject(mC, special);
 
-    IOField<label> id(mC.fieldIOobject("id", IOobject::MUST_READ), valid);
+    IOField<label> id(mC.fieldIOobject("id", IOobject::MUST_READ), readOnProc);
     mC.checkFieldIOobject(mC, id);
 
     label i = 0;
@@ -168,7 +172,7 @@ void Foam::molecule::writeFields(const Cloud<molecule>& mC)
     particle::writeFields(mC);
 
     const label np = mC.size();
-    const bool valid = np;
+    const bool writeOnProc = mC.size();
 
     IOField<tensor> Q(mC.fieldIOobject("Q", IOobject::NO_READ), np);
     IOField<vector> v(mC.fieldIOobject("v", IOobject::NO_READ), np);
@@ -237,21 +241,21 @@ void Foam::molecule::writeFields(const Cloud<molecule>& mC)
         ++i;
     }
 
-    Q.write(valid);
-    v.write(valid);
-    a.write(valid);
-    pi.write(valid);
-    tau.write(valid);
-    specialPosition.write(valid);
-    special.write(valid);
-    id.write(valid);
-
-    piGlobal.write(valid);
-    tauGlobal.write(valid);
-
-    orientation1.write(valid);
-    orientation2.write(valid);
-    orientation3.write(valid);
+    Q.write(writeOnProc);
+    v.write(writeOnProc);
+    a.write(writeOnProc);
+    pi.write(writeOnProc);
+    tau.write(writeOnProc);
+    specialPosition.write(writeOnProc);
+    special.write(writeOnProc);
+    id.write(writeOnProc);
+
+    piGlobal.write(writeOnProc);
+    tauGlobal.write(writeOnProc);
+
+    orientation1.write(writeOnProc);
+    orientation2.write(writeOnProc);
+    orientation3.write(writeOnProc);
 
     Info<< "writeFields " << mC.name() << endl;
 
diff --git a/src/lagrangian/solidParticle/solidParticleIO.C b/src/lagrangian/solidParticle/solidParticleIO.C
index 1b7bb53d351..eab74deb740 100644
--- a/src/lagrangian/solidParticle/solidParticleIO.C
+++ b/src/lagrangian/solidParticle/solidParticleIO.C
@@ -78,14 +78,14 @@ Foam::solidParticle::solidParticle
 
 void Foam::solidParticle::readFields(Cloud<solidParticle>& c)
 {
-    bool valid = c.size();
+    const bool readOnProc = c.size();
 
     particle::readFields(c);
 
-    IOField<scalar> d(c.fieldIOobject("d", IOobject::MUST_READ), valid);
+    IOField<scalar> d(c.fieldIOobject("d", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, d);
 
-    IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), valid);
+    IOField<vector> U(c.fieldIOobject("U", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, U);
 
     label i = 0;
@@ -103,6 +103,7 @@ void Foam::solidParticle::writeFields(const Cloud<solidParticle>& c)
     particle::writeFields(c);
 
     const label np = c.size();
+    const bool writeOnProc = c.size();
 
     IOField<scalar> d(c.fieldIOobject("d", IOobject::NO_READ), np);
     IOField<vector> U(c.fieldIOobject("U", IOobject::NO_READ), np);
@@ -115,8 +116,8 @@ void Foam::solidParticle::writeFields(const Cloud<solidParticle>& c)
         ++i;
     }
 
-    d.write(np > 0);
-    U.write(np > 0);
+    d.write(writeOnProc);
+    U.write(writeOnProc);
 }
 
 
diff --git a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C
index 46cf5b26ce7..feb807b5ece 100644
--- a/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C
+++ b/src/lagrangian/spray/parcels/Templates/SprayParcel/SprayParcelIO.C
@@ -135,86 +135,90 @@ void Foam::SprayParcel<ParcelType>::readFields
     const CompositionType& compModel
 )
 {
-    const bool valid = c.size();
+    const bool readOnProc = c.size();
 
     ParcelType::readFields(c, compModel);
 
-    IOField<scalar> d0(c.fieldIOobject("d0", IOobject::MUST_READ), valid);
+    IOField<scalar> d0(c.fieldIOobject("d0", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, d0);
 
     IOField<vector> position0
     (
         c.fieldIOobject("position0", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, position0);
 
-    IOField<scalar> sigma(c.fieldIOobject("sigma", IOobject::MUST_READ), valid);
+    IOField<scalar> sigma
+    (
+        c.fieldIOobject("sigma", IOobject::MUST_READ),
+        readOnProc
+    );
     c.checkFieldIOobject(c, sigma);
 
-    IOField<scalar> mu(c.fieldIOobject("mu", IOobject::MUST_READ), valid);
+    IOField<scalar> mu(c.fieldIOobject("mu", IOobject::MUST_READ), readOnProc);
     c.checkFieldIOobject(c, mu);
 
     IOField<scalar> liquidCore
     (
         c.fieldIOobject("liquidCore", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, liquidCore);
 
     IOField<scalar> KHindex
     (
         c.fieldIOobject("KHindex", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, KHindex);
 
     IOField<scalar> y
     (
         c.fieldIOobject("y", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, y);
 
     IOField<scalar> yDot
     (
         c.fieldIOobject("yDot", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, yDot);
 
     IOField<scalar> tc
     (
         c.fieldIOobject("tc", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, tc);
 
     IOField<scalar> ms
     (
         c.fieldIOobject("ms", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, ms);
 
     IOField<scalar> injector
     (
         c.fieldIOobject("injector", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, injector);
 
     IOField<scalar> tMom
     (
         c.fieldIOobject("tMom", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, tMom);
 
     IOField<scalar> user
     (
         c.fieldIOobject("user", IOobject::MUST_READ),
-        valid
+        readOnProc
     );
     c.checkFieldIOobject(c, user);
 
@@ -259,8 +263,7 @@ void Foam::SprayParcel<ParcelType>::writeFields
     ParcelType::writeFields(c, compModel);
 
     const label np = c.size();
-    const bool valid = np;
-
+    const bool writeOnProc = c.size();
 
     IOField<scalar> d0(c.fieldIOobject("d0", IOobject::NO_READ), np);
     IOField<vector> position0
@@ -307,19 +310,19 @@ void Foam::SprayParcel<ParcelType>::writeFields
         ++i;
     }
 
-    d0.write(valid);
-    position0.write(valid);
-    sigma.write(valid);
-    mu.write(valid);
-    liquidCore.write(valid);
-    KHindex.write(valid);
-    y.write(valid);
-    yDot.write(valid);
-    tc.write(valid);
-    ms.write(valid);
-    injector.write(valid);
-    tMom.write(valid);
-    user.write(valid);
+    d0.write(writeOnProc);
+    position0.write(writeOnProc);
+    sigma.write(writeOnProc);
+    mu.write(writeOnProc);
+    liquidCore.write(writeOnProc);
+    KHindex.write(writeOnProc);
+    y.write(writeOnProc);
+    yDot.write(writeOnProc);
+    tc.write(writeOnProc);
+    ms.write(writeOnProc);
+    injector.write(writeOnProc);
+    tMom.write(writeOnProc);
+    user.write(writeOnProc);
 }
 
 
diff --git a/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.C b/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.C
index b4eb59a16b9..dd5b0415900 100644
--- a/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.C
+++ b/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.C
@@ -1265,7 +1265,7 @@ void Foam::triSurfaceMesh::getVolumeType
 bool Foam::triSurfaceMesh::writeObject
 (
     IOstreamOption,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     const Time& runTime = searchableSurface::time();
diff --git a/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.H b/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.H
index e5fe8825ad3..79502a40f6e 100644
--- a/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.H
+++ b/src/meshTools/searchableSurfaces/triSurfaceMesh/triSurfaceMesh.H
@@ -316,7 +316,7 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Is object global
diff --git a/src/meshTools/topoSet/topoSets/cellZoneSet.C b/src/meshTools/topoSet/topoSets/cellZoneSet.C
index bc4ef675a04..b3bc4007dd2 100644
--- a/src/meshTools/topoSet/topoSets/cellZoneSet.C
+++ b/src/meshTools/topoSet/topoSets/cellZoneSet.C
@@ -229,13 +229,13 @@ Foam::label Foam::cellZoneSet::maxSize(const polyMesh& mesh) const
 bool Foam::cellZoneSet::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Write shadow cellSet
     word oldTypeName = typeName;
     const_cast<word&>(type()) = cellSet::typeName;
-    bool ok = cellSet::writeObject(streamOpt, valid);
+    bool ok = cellSet::writeObject(streamOpt, writeOnProc);
     const_cast<word&>(type()) = oldTypeName;
 
     // Modify cellZone
@@ -265,7 +265,7 @@ bool Foam::cellZoneSet::writeObject
     }
     cellZones.clearAddressing();
 
-    return ok && cellZones.write(valid);
+    return ok && cellZones.write(writeOnProc);
 }
 
 
diff --git a/src/meshTools/topoSet/topoSets/cellZoneSet.H b/src/meshTools/topoSet/topoSets/cellZoneSet.H
index e0f9f8fc086..d2e34e416b4 100644
--- a/src/meshTools/topoSet/topoSets/cellZoneSet.H
+++ b/src/meshTools/topoSet/topoSets/cellZoneSet.H
@@ -143,7 +143,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Update any stored data for new labels
diff --git a/src/meshTools/topoSet/topoSets/faceZoneSet.C b/src/meshTools/topoSet/topoSets/faceZoneSet.C
index fde5e3f1c7a..92167a4695f 100644
--- a/src/meshTools/topoSet/topoSets/faceZoneSet.C
+++ b/src/meshTools/topoSet/topoSets/faceZoneSet.C
@@ -445,13 +445,13 @@ Foam::label Foam::faceZoneSet::maxSize(const polyMesh& mesh) const
 bool Foam::faceZoneSet::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Write shadow faceSet
     word oldTypeName = typeName;
     const_cast<word&>(type()) = faceSet::typeName;
-    bool ok = faceSet::writeObject(streamOpt, valid);
+    bool ok = faceSet::writeObject(streamOpt, writeOnProc);
     const_cast<word&>(type()) = oldTypeName;
 
     // Modify faceZone
@@ -482,7 +482,7 @@ bool Foam::faceZoneSet::writeObject
     }
     faceZones.clearAddressing();
 
-    return ok && faceZones.write(valid);
+    return ok && faceZones.write(writeOnProc);
 }
 
 
diff --git a/src/meshTools/topoSet/topoSets/faceZoneSet.H b/src/meshTools/topoSet/topoSets/faceZoneSet.H
index cfdf54e30d5..4a621de44c2 100644
--- a/src/meshTools/topoSet/topoSets/faceZoneSet.H
+++ b/src/meshTools/topoSet/topoSets/faceZoneSet.H
@@ -157,7 +157,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Update any stored data for new labels
diff --git a/src/meshTools/topoSet/topoSets/pointZoneSet.C b/src/meshTools/topoSet/topoSets/pointZoneSet.C
index 5cd923f5988..25b16d4c4c8 100644
--- a/src/meshTools/topoSet/topoSets/pointZoneSet.C
+++ b/src/meshTools/topoSet/topoSets/pointZoneSet.C
@@ -229,13 +229,13 @@ Foam::label Foam::pointZoneSet::maxSize(const polyMesh& mesh) const
 bool Foam::pointZoneSet::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Write shadow pointSet
     word oldTypeName = typeName;
     const_cast<word&>(type()) = pointSet::typeName;
-    bool ok = pointSet::writeObject(streamOpt, valid);
+    bool ok = pointSet::writeObject(streamOpt, writeOnProc);
     const_cast<word&>(type()) = oldTypeName;
 
     // Modify pointZone
@@ -265,7 +265,7 @@ bool Foam::pointZoneSet::writeObject
     }
     pointZones.clearAddressing();
 
-    return ok && pointZones.write(valid);
+    return ok && pointZones.write(writeOnProc);
 }
 
 
diff --git a/src/meshTools/topoSet/topoSets/pointZoneSet.H b/src/meshTools/topoSet/topoSets/pointZoneSet.H
index d8de8a3294a..5ba34edc858 100644
--- a/src/meshTools/topoSet/topoSets/pointZoneSet.H
+++ b/src/meshTools/topoSet/topoSets/pointZoneSet.H
@@ -144,7 +144,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Update any stored data for new labels
diff --git a/src/optimisation/adjointOptimisation/adjoint/solvers/primalSolvers/incompressible/incompressiblePrimalSolver/incompressiblePrimalSolver.H b/src/optimisation/adjointOptimisation/adjoint/solvers/primalSolvers/incompressible/incompressiblePrimalSolver/incompressiblePrimalSolver.H
index 60a64687b15..9506e59fb5b 100644
--- a/src/optimisation/adjointOptimisation/adjoint/solvers/primalSolvers/incompressible/incompressiblePrimalSolver/incompressiblePrimalSolver.H
+++ b/src/optimisation/adjointOptimisation/adjoint/solvers/primalSolvers/incompressible/incompressiblePrimalSolver/incompressiblePrimalSolver.H
@@ -25,7 +25,6 @@ License
     You should have received a copy of the GNU General Public License
     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
 
-
 Class
     Foam::incompressiblePrimalSolver
 
diff --git a/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.C b/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.C
index 777642d85cd..172d974eeef 100644
--- a/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.C
+++ b/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.C
@@ -74,11 +74,12 @@ bool Foam::dynamicOversetFvMesh::update()
 bool Foam::dynamicOversetFvMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
-    bool ok = dynamicMotionSolverListFvMesh::writeObject(streamOpt, valid);
-    ok = oversetFvMeshBase::writeObject(streamOpt, valid) && ok;
+    bool ok =
+        dynamicMotionSolverListFvMesh::writeObject(streamOpt, writeOnProc);
+    ok = oversetFvMeshBase::writeObject(streamOpt, writeOnProc) && ok;
     return ok;
 }
 
diff --git a/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.H b/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.H
index e7ac6336a53..19196b46e42 100644
--- a/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.H
+++ b/src/overset/oversetFvMesh/dynamicOversetFvMesh/dynamicOversetFvMesh.H
@@ -210,7 +210,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 };
 
diff --git a/src/overset/oversetFvMesh/oversetFvMeshBase.C b/src/overset/oversetFvMesh/oversetFvMeshBase.C
index 3832a282ac0..d297cebdc61 100644
--- a/src/overset/oversetFvMesh/oversetFvMeshBase.C
+++ b/src/overset/oversetFvMesh/oversetFvMeshBase.C
@@ -633,7 +633,7 @@ bool Foam::oversetFvMeshBase::interpolateFields()
 bool Foam::oversetFvMeshBase::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // For postprocessing : write cellTypes and zoneID
@@ -664,7 +664,7 @@ bool Foam::oversetFvMeshBase::writeObject
             volTypes[cellI] = cellTypes[cellI];
         }
         volTypes.correctBoundaryConditions();
-        volTypes.writeObject(streamOpt, valid);
+        volTypes.writeObject(streamOpt, writeOnProc);
     }
     {
         volScalarField volZoneID
@@ -691,7 +691,7 @@ bool Foam::oversetFvMeshBase::writeObject
             volZoneID[cellI] = zoneID[cellI];
         }
         volZoneID.correctBoundaryConditions();
-        volZoneID.writeObject(streamOpt, valid);
+        volZoneID.writeObject(streamOpt, writeOnProc);
     }
     if (debug)
     {
@@ -752,7 +752,7 @@ bool Foam::oversetFvMeshBase::writeObject
         (
             volDonorZoneID
         );
-        ok = volDonorZoneID.writeObject(streamOpt, valid);
+        ok = volDonorZoneID.writeObject(streamOpt, writeOnProc);
     }
 
     return ok;
diff --git a/src/overset/oversetFvMesh/oversetFvMeshBase.H b/src/overset/oversetFvMesh/oversetFvMeshBase.H
index 0d410eda040..49513221954 100644
--- a/src/overset/oversetFvMesh/oversetFvMeshBase.H
+++ b/src/overset/oversetFvMesh/oversetFvMeshBase.H
@@ -248,7 +248,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Debug: check halo swap is ok
diff --git a/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.C b/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.C
index 6b84b42d874..f0c2442dd72 100644
--- a/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.C
+++ b/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.C
@@ -72,11 +72,11 @@ bool Foam::staticOversetFvMesh::update()
 bool Foam::staticOversetFvMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
-    bool ok = staticFvMesh::writeObject(streamOpt, valid);
-    ok = oversetFvMeshBase::writeObject(streamOpt, valid) && ok;
+    bool ok = staticFvMesh::writeObject(streamOpt, writeOnProc);
+    ok = oversetFvMeshBase::writeObject(streamOpt, writeOnProc) && ok;
     return ok;
 }
 
diff --git a/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.H b/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.H
index c167f87c20c..054df0f0593 100644
--- a/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.H
+++ b/src/overset/oversetFvMesh/staticOversetFvMesh/staticOversetFvMesh.H
@@ -209,7 +209,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 };
 
diff --git a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C
index e79c31d3304..c338498f015 100644
--- a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C
+++ b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C
@@ -4911,14 +4911,14 @@ void Foam::distributedTriSurfaceMesh::distribute
 bool Foam::distributedTriSurfaceMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     if (debug)
     {
         Pout<< "distributedTriSurfaceMesh::writeObject :"
             << " surface " << searchableSurface::name()
-            << " writing surface valid:" << valid << endl;
+            << " writing surface:" << writeOnProc << endl;
     }
 
     // Make sure dictionary goes to same directory as surface
diff --git a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.H b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.H
index 514d675f3db..3a38ad33f5b 100644
--- a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.H
+++ b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.H
@@ -584,7 +584,7 @@ public:
             virtual bool writeObject
             (
                 IOstreamOption streamOpt,
-                const bool valid
+                const bool writeOnProc
             ) const;
 
             //- Is object global
diff --git a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C
index cc52b3237eb..780844e6e7a 100644
--- a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C
+++ b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.C
@@ -392,7 +392,7 @@ void Foam::rigidBodyMeshMotion::solve()
 bool Foam::rigidBodyMeshMotion::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Force ASCII writing
@@ -413,7 +413,7 @@ bool Foam::rigidBodyMeshMotion::writeObject
     );
 
     model_.state().write(dict);
-    return dict.regIOobject::writeObject(streamOpt, valid);
+    return dict.regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.H b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.H
index 6fcccfe448a..cc2641a9854 100644
--- a/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.H
+++ b/src/rigidBodyMeshMotion/rigidBodyMeshMotion/rigidBodyMeshMotion.H
@@ -177,7 +177,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Read dynamicMeshDict dictionary
diff --git a/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.C b/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.C
index 3544dd27234..e278e4a626b 100644
--- a/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.C
+++ b/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.C
@@ -279,7 +279,7 @@ void Foam::rigidBodyMeshMotionSolver::solve()
 bool Foam::rigidBodyMeshMotionSolver::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     // Force ASCII writing
@@ -300,7 +300,7 @@ bool Foam::rigidBodyMeshMotionSolver::writeObject
     );
 
     model_.state().write(dict);
-    return dict.regIOobject::writeObject(streamOpt, valid);
+    return dict.regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.H b/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.H
index 23297d3b5ab..30cb1a56f6b 100644
--- a/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.H
+++ b/src/rigidBodyMeshMotion/rigidBodyMeshMotionSolver/rigidBodyMeshMotionSolver.H
@@ -157,7 +157,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Read dynamicMeshDict dictionary
diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C
index c1f87b91fc7..267fc196430 100644
--- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C
+++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.C
@@ -298,7 +298,7 @@ void Foam::sixDoFRigidBodyMotionSolver::solve()
 bool Foam::sixDoFRigidBodyMotionSolver::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     IOdictionary dict
@@ -316,7 +316,7 @@ bool Foam::sixDoFRigidBodyMotionSolver::writeObject
     );
 
     motion_.state().write(dict);
-    return dict.regIOobject::write();
+    return dict.regIOobject::writeObject(streamOpt, writeOnProc);
 }
 
 
diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.H
index 9d8ff05f3da..21d82a3a29f 100644
--- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.H
+++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver/sixDoFRigidBodyMotionSolver.H
@@ -145,7 +145,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
         //- Read dynamicMeshDict dictionary
diff --git a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C
index 7425bab57fb..7115ca125c8 100644
--- a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C
+++ b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.C
@@ -103,13 +103,13 @@ void Foam::Detail::MeshedSurfaceIOAllocator::clear()
 bool Foam::Detail::MeshedSurfaceIOAllocator::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return
     (
-        points_.writeObject(streamOpt, valid)
-     && faces_.writeObject(streamOpt, valid)
+        points_.writeObject(streamOpt, writeOnProc)
+     && faces_.writeObject(streamOpt, writeOnProc)
     );
 }
 
diff --git a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H
index 674a7679946..7fd3b4a9b23 100644
--- a/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H
+++ b/src/surfMesh/MeshedSurfaceAllocator/MeshedSurfaceIOAllocator.H
@@ -152,7 +152,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 };
 
diff --git a/src/surfMesh/polySurface/polySurface.H b/src/surfMesh/polySurface/polySurface.H
index 3256c2ec681..faa59e1054a 100644
--- a/src/surfMesh/polySurface/polySurface.H
+++ b/src/surfMesh/polySurface/polySurface.H
@@ -391,7 +391,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/surfMesh/polySurface/polySurfaceIO.C b/src/surfMesh/polySurface/polySurfaceIO.C
index bd6201f117e..51bc6b1acf6 100644
--- a/src/surfMesh/polySurface/polySurfaceIO.C
+++ b/src/surfMesh/polySurface/polySurfaceIO.C
@@ -32,7 +32,7 @@ License
 bool Foam::polySurface::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
     return true; // no-op
diff --git a/src/surfMesh/surfMesh/surfMesh.H b/src/surfMesh/surfMesh/surfMesh.H
index 078126c0981..67a47d1f3e2 100644
--- a/src/surfMesh/surfMesh/surfMesh.H
+++ b/src/surfMesh/surfMesh/surfMesh.H
@@ -341,7 +341,7 @@ public:
         virtual bool writeObject
         (
             IOstreamOption streamOpt,
-            const bool valid
+            const bool writeOnProc
         ) const;
 
 
diff --git a/src/surfMesh/surfMesh/surfMeshIO.C b/src/surfMesh/surfMesh/surfMeshIO.C
index c0116a212bf..15543652370 100644
--- a/src/surfMesh/surfMesh/surfMeshIO.C
+++ b/src/surfMesh/surfMesh/surfMeshIO.C
@@ -194,14 +194,14 @@ Foam::surfMesh::readUpdateState Foam::surfMesh::readUpdate()
 bool Foam::surfMesh::writeObject
 (
     IOstreamOption streamOpt,
-    const bool valid
+    const bool writeOnProc
 ) const
 {
-    bool ok = Allocator::writeObject(streamOpt, valid);
+    bool ok = Allocator::writeObject(streamOpt, writeOnProc);
 
     if (ok)
     {
-        surfZones_.writeObject(streamOpt, valid);
+        surfZones_.writeObject(streamOpt, writeOnProc);
     }
 
     return ok;
-- 
GitLab