A Java framework that can simulate a variety of particle systems. It uses space partitioning and parallelization to achieve a significant speedup.
It can be configured to use the rules of Particle Life, a particle system showing life-like behaviour.
Check out this app to see this framework in action.
See the documentation.