turing-surface

⚠ Work in progress: the geometry is drawn, not solved on. The Laplace–Beltrami operator in the models is still the round sphere's — the term that would carry the shape is a placeholder that is identically zero. So on anything but the sphere, what you see is the sphere's pattern painted onto that surface, not the pattern that surface would actually grow. The spot size does not follow the curvature, and it will not until that placeholder is filled in. Everything else — the embedding, the mesh, the unrolled implicit solve the correction plugs into — is real and in place.

Reaction-diffusion on closed surfaces, solved live with spherical harmonics: implicit spectral diffusion + explicit reaction (IMEX Euler), transforms on WebGPU via shtns-webgpu. The surface is an embedding of the sphere given by spherical-harmonic coefficients for x, y and z. Both the solver and the shape are the MATLAB below — numbl parses and lowers them in your browser, and each line becomes a WebGPU compute kernel. Edit either and watch it change. Drag to rotate.


        
The same run on the desktop, through the same .m and the same kernels