From 5325af46265b4fe3bf33f991402a114506697a49 Mon Sep 17 00:00:00 2001 From: sergio <sergio> Date: Mon, 21 Nov 2016 11:54:31 -0800 Subject: [PATCH] BUG: Following issue 284 for particle switching processors flag --- src/lagrangian/basic/Cloud/Cloud.C | 7 ++++++- .../parcels/Templates/KinematicParcel/KinematicParcel.C | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/lagrangian/basic/Cloud/Cloud.C b/src/lagrangian/basic/Cloud/Cloud.C index 0ea3551bb1a..a0ebd790487 100644 --- a/src/lagrangian/basic/Cloud/Cloud.C +++ b/src/lagrangian/basic/Cloud/Cloud.C @@ -261,7 +261,12 @@ void Foam::Cloud<ParticleType>::move(TrackData& td, const scalar trackTime) { // If we are running in parallel and the particle is on a // boundary face - if (Pstream::parRun() && p.face() >= pMesh().nInternalFaces()) + if + ( + Pstream::parRun() + && td.switchProcessor + && p.face() >= pMesh().nInternalFaces() + ) { label patchI = pbm.whichPatch(p.face()); diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C index 62f5d501624..7fdf8115423 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C @@ -345,6 +345,8 @@ bool Foam::KinematicParcel<ParcelType>::move p.calc(td, dt, cellI); } + p.age() += dt; + if (p.onBoundary() && td.keepParticle) { if (isA<processorPolyPatch>(pbMesh[p.patch(p.face())])) @@ -353,8 +355,6 @@ bool Foam::KinematicParcel<ParcelType>::move } } - p.age() += dt; - td.cloud().functions().postMove(p, cellI, dt, start, td.keepParticle); } -- GitLab