5 vector subPosition = position + offset;
6 label partCellId = particleCloud_.locateM().findSingleCell(subPosition,cellID);
10 if(partCellId!=cellID)
23 scalar partCellVol = particleCloud_.mesh().V()[partCellId];
24 scalar particleVolume = volume/
static_cast<scalar
>(nPoints);
25 scalar newAlpha = voidfractionNext_[partCellId]- particleVolume / partCellVol;
27 if(newAlpha > alphaMin_) voidfractionNext_[partCellId] = newAlpha;
30 voidfractionNext_[partCellId] = alphaMin_;
31 tooMuch_ += (alphaMin_-newAlpha) * partCellVol;
38 bool createNew =
true;
40 for(
int i=0; i < cellsPerParticle_[index][0] ; i++)
42 if(partCellId == particleCloud_.cellIDs()[index][i])
52 cellsPerParticle_[index][0] ++;
53 storeInIndex = cellsPerParticle_[index][0]-1;
54 particleCloud_.cellIDs()[index][storeInIndex] = partCellId;
58 particleWeights[index][storeInIndex] += 1/
static_cast<scalar
>(nPoints);
59 particleVolumes[index][storeInIndex] += particleVolume;
60 particleV[index][0] += particleVolume;