Cleaned up ParticleIterator