Any idea on how Laplacian Growth works?

While working on Diffusion Limited Aggregation, and then showing it off on discord, someone did point to me on Laplacian Growth method of generating it. It’s supposedly much faster than the traditional move random point, and then stick if the surrounding pixel matches criteria for sticking. A bit of code would help a lot in understanding what’s going on.

Here’s the PDF for it - https://pitp.phas.ubc.ca/archives/theory/2004talks/wiegmann.pdf
And another one - https://gamma.cs.unc.edu/FRAC/supplement.pdf

Looks like “laplacian growth” describes a different mechanism, but I probably read it wrong. I don’t see algorithms there, only a description of a process. Are you certain there’s a more efficient algorithm to generate that? Your DLA one seems very fast to me already…

That’s why I wanted to see if any one has a sample code or direction or pointers to me to make a code to base from. Yes, I think it is a faster way of generating DLA without the obvious indication of pre-defined structure which my current DLA implementation has. As far as I know with regards to the Laplacian Growth algorithm, there’s no way to thicken it in-place though like the DLA.

Hmm OK, I’ll remain sceptical until I see an example though! Hard to see how it can be faster than yours, it’s perceptively almost instant on my machine here.

You can test with different parameter on a blank image. For starters:

$ 1024,1024 rep_diffusion_limited_aggregation 1000,1

It’s not instant in that case. Acceptable performance though.

It start becoming a pain with image larger than 4096x4096 though.

It does become slow with certain settings (btw think your help on the default mode might be wrong). Still, I’ll be surprised if an alternative algorithm is both faster and as configurable.

Actually, I do wonder if there’s a faster way by making use of distance plus some other stuff. I might have a think about it.

gmic 400,400,1,1 gaussian {w} noise. 20% b. 1% add gt 60% distance 0 laplacian lt 0

Update: needs more thought, but this does some pretty decent effects

norm +b 5% sub sign distance -1 laplacian lt 0

eagle

3 Likes

Thanks, I pushed a fix to it.

As for your image, yeah, there does seem to be some real potential there. Might actually end up better than DLA though less configurable.