lagrangian: Always set switchProcessor flag
The TrackData::switchProcessor flag was not being set for some of the tracking steps made by the more complicated parcels. In the case that a parcel starts the step already on a processor boundary, this sometimes lead to the particle being transferred back and forth indefinitely. The flag is now explicitly set in all cases.
This commit is contained in:
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -81,6 +81,7 @@ bool Foam::CollidingParcel<ParcelType>::move
|
|||||||
p.angularMomentum() += 0.5*trackTime*p.torque();
|
p.angularMomentum() += 0.5*trackTime*p.torque();
|
||||||
|
|
||||||
td.keepParticle = true;
|
td.keepParticle = true;
|
||||||
|
td.switchProcessor = false;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -77,6 +77,7 @@ bool Foam::MPPICParcel<ParcelType>::move
|
|||||||
td.cloud().dampingModel().velocityCorrection(p, trackTime);
|
td.cloud().dampingModel().velocityCorrection(p, trackTime);
|
||||||
|
|
||||||
td.keepParticle = true;
|
td.keepParticle = true;
|
||||||
|
td.switchProcessor = false;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -86,6 +87,7 @@ bool Foam::MPPICParcel<ParcelType>::move
|
|||||||
td.cloud().packingModel().velocityCorrection(p, trackTime);
|
td.cloud().packingModel().velocityCorrection(p, trackTime);
|
||||||
|
|
||||||
td.keepParticle = true;
|
td.keepParticle = true;
|
||||||
|
td.switchProcessor = false;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user