Belousov–Zhabotinsky reaction

Following a question on old grasshopper forum, I gave a try to the Belousov–Zhabotinsky reaction. Thanks to @Dani_Abalde. I first replicated Daniel Abalde work then applied it to a mesh. It is quite straightforward as it is a mix between reaction diffusion work and Belousov–Zhabotinsky equations (see the links).

Same mesh model but 2 numbers of itteration (1600 and 600)

Wikipedia article

Daniel González Abalde work

Equations I used

Reaction diffusion links


Still some fun with this reaction.

With some filtering to reduce the noise


If you were to post this code for any reason, I promise that I would steal it and use it to make glass sculpture.

@Bathsheba The code is so simple, you will not understand why you didn’t did it yourself :yum:

Here the script, steal it, not sure it will stay for months
Size of the pattern is dependend on the size of the mesh faces
Iteration is the number of iterations, low number is often not very nice, the reaction has not the time to go everywhere
I output the coefficient for each chemical (values between 0 and 1)
But you can also use the colors.
I am sure you will do awesome things.


I know, I am just so lazy. And making sculpture takes a lot of time, it’s easier to follow your footsteps!
Thank you, and if you like an art I will send you one to France.

1 Like

oh you fancy! I wish I had this when I was working on my model a few months ago.

Impressive and nice work, well done.

I do not know grasshopper.

Does this work with any linework/pattern? onto any surface?

It is a chemical reaction, patterns are not really controlled but this could be applied to any surface meshed with nice triangles. Reaction diffusion is more controlled. Some coefficient control the results.

Here you go


…A mi tambien ! ja
Give me one pls ha

1 Like

Some new experiments using my stepped dual mesh


I am amazed at your work, but I still find it difficult to obtain the same results!
(I always try to be able to study what you present here …
But every time I try your good examples
something goes wrong on my screen, ha …)

  • ““Reaction Diffussion over a Mesh””, I found it complicated, and
    then try Alea.dll even more.
    And I was honestly interested in trying those examples.
    But hey, one day … it will come out
    Thanks for posting here, a way to learn from it
    … … …

I don’t try to make things complicated but as I don’t make plugins I also not try to make things very simple. I also don’t do tutorial on YouTube and I don’t give lessons. And I keep some scripts just for myself and also some code.
If you have some difficulties, you could post your question or problems