[cig-commits] r5812 - in long/3D/Gale/trunk/src/StGermain: .
Discretisation/Swarm/src
walter at geodynamics.org
walter at geodynamics.org
Wed Jan 17 16:09:42 PST 2007
Author: walter
Date: 2007-01-17 16:09:41 -0800 (Wed, 17 Jan 2007)
New Revision: 5812
Modified:
long/3D/Gale/trunk/src/StGermain/
long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ParticleCommHandler.c
Log:
r3303 at earth (orig r3971): LukeHodkinson | 2007-01-15 23:41:49 -0800
Forgot to remove old particle indices from their
respective cell lists.
Property changes on: long/3D/Gale/trunk/src/StGermain
___________________________________________________________________
Name: svk:merge
- 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3970
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899
+ 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3971
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899
Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ParticleCommHandler.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ParticleCommHandler.c 2007-01-18 00:09:37 UTC (rev 5811)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ParticleCommHandler.c 2007-01-18 00:09:41 UTC (rev 5812)
@@ -317,10 +317,17 @@
unsigned r_i;
for( r_i = 0; r_i < nRems; r_i++ ) {
+ /* Must remove particle from owning cell. */
+ owningCell = Swarm_ParticleAt( self->swarm, rems[r_i] )->owningCell;
+ particleInd = Swarm_GetParticleIndexWithinCell( self->swarm, owningCell, rems[r_i] );
+ Swarm_RemoveParticleFromCell( swarm, owningCell, particleInd );
+
+ /* Next in line... */
remainInd = nRemaining - r_i - 1;
if( remaining[remainInd] < rems[r_i] )
break;
+ /* Fill a hole. */
Swarm_CopyParticleWithinSwarm( swarm, rems[r_i], remaining[remainInd] );
owningCell = Swarm_ParticleAt( self->swarm, rems[r_i] )->owningCell;
particleInd = Swarm_GetParticleIndexWithinCell( self->swarm, owningCell, remaining[remainInd] );
More information about the cig-commits
mailing list