I've been working with Reaction-Difusion systems recently and built a library to facilitate simulation of such systems. The library is aimed at 3-dimensional Reaction-Diffusion, multi-threaded and released under the BSD License. An example is included which you can also run out of the box.
I just want to point you to a library I've been developing during the last few months, mostly to use for my projects, but I consider that is useful enough for general use. It's currently in it's fourth release.
Features:
Based on Verlet integration.
Fast Relaxation solver for points. Offers two modes with tradeoff between speed and accuracy.
A solver for groups of 'charged' particles, i.e. particles that are attracted/repelled from each other based on their 'charge' property.
A solver for twin groups of charged particles, i.e. each particle of one group will affect each one of the other, but none of the same.
A simple constant force modifier.
Unyielding points with drag multiplier for each axis (X,Y,Z), in order to constrain to different degrees depending on the axis (i.e. points constrained only on X axis etc.).
Extensible base solver class that supports multi-threading. New solver or modifier classes can be developed on top of that without the need to mess with threads etc. (will soon post a tutorial on how to do that).
Future development:
Proper weight support for individual points.
More solvers like projection to surface, collision with planes etc.
While this library has been around for some time I am pretty confident that bugs can be found and documentation is far from perfect. However I am actively engaged in developing it further. And of course it's open source, released under the New BSD License.