Elektrine
EN
Log in Register
Paige Chat Timeline Communities Gallery Videos Email DNS VPN Uptime Kairo
Back to Timeline
Remote

Matt Zucker

@matt_zucker@mastodon.social
mastodon 4.7.0-beta.1
  • Open on mastodon.social

Why do it by hand if you can code it in just quadruple the time?
he/him

0 Followers
0 Following
27 Posts
Joined October 13, 2024
Coding blog:
https://mzucker.github.io/
Shadertoy:
https://www.shadertoy.com/user/mattz
Location:
Philadelphia, PA

Posts

Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Jul 24, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
@unnick@booping.synth.download some quick experimentation in python reveals that for the polynomial for interpolating between 3 points it is sufficient just to use the c200, c020, and c002 coefficients (don't need the xy/xz/yz terms). checking now to see how it lines up against slerp
0
0
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Jul 24, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
@unnick@booping.synth.download my vague recollection is that approach (1) will give the area property you want but does not reduce to slerp on the edges and (2) does reduce to slerp on the edges but doesn't have the area property but don't take my word for it without trying it out. Both approaches will handle the case of a triangle defined over (1, 0, 0), (0, 1, 0), (0, 0, 1). Let me know if it would be helpful to post a Python/numpy/matplotlib script demoing these approaches
1
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Jul 24, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @unnick@booping.synth.download
@unnick@booping.synth.download here are two things you could try: 1) spherical area coordinates are one way of generalizing barycentric coordinates to the sphere, check out https://brsr.github.io/2023/11/04/spherical-areal.html 2) you could fit a homogeneous polynomial of the form c200*x^2 + c020*y^2 + c002*x^2 + c110*x*y + c101*x*z + c011*y*z and sample it. this framework is described in Alfeld et al. 1996 "Bernstein-Bézier polynomials on spheres and sphere-like surfaces." https://www.researchgate.net/profile/Mike-Neamtu/publication/2509001_Bernstein-B'ezier_Polynomials_on_Spheres_and_Sphere-Like_Surfaces/links/540daaef0cf2d8daaacc78c4/Bernstein-Bezier-Polynomials-on-Spheres-and-Sphere-Like-Surfaces.pdf I have played with both approaches and...
2
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · May 02, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @Gmatom@mastodon.social
@Gmatom instantly recognizable!
0
0
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @kbob@chaos.social
@kbob@chaos.social more like the latter
1
0
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @bazzargh@hachyderm.io
@bazzargh@hachyderm.io neat!
0
0
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @kbob@chaos.social
@kbob@chaos.social For PBC on a square grid you can use an extra layer of grid squares outside the tile, but they are not fixed – they copy values from the opposite side of the domain. See e.g. page 3 of https://www.josstam.com/_files/ugd/cf1fd6_9989229efbd34a26ba5ccd913721a2ac.pdf But I'm not using square grids - that would be the finite difference method. Instead I use triangle meshes with the finite element method. Much better for shapes like pentagons with no right angles.
1
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @jannem@fosstodon.org
@jannem@fosstodon.org Yep!
1
0
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
@jannem@fosstodon.org Flips? Not sure how to deal with them with my folded-in-half (symmetric) edges, so I would have trouble answering this without thinking a lot harder.
0
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @jannem@fosstodon.org
@jannem@fosstodon.org not quite torus geometry. A torus is a manifold (https://en.wikipedia.org/wiki/Manifold) and my folded-square-thing is most definitely not. Torus would be the same as the "Pac-Man" periodic boundary conditions I alluded to earlier. That gives two distinct edges that loosely correspond to the "equator" and "prime meridian" of the torus. Yes for multiple patterns you need to have multiple sheets sharing the same edge. (cont'd...)
0
4
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
If you liked this thread, check out my very infrequently-updated coding blog at https://mzucker.github.io/ for other #MathArt projects and miscellaneous tinkering. And feel free to reply with questions – I'll do my best to answer them here.
6
2
2
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
The wooden tiles were exhibited previously at the 2026 JMM art exhibition, and I just learned that the spherical tilings and red squares were accepted for the art exhibition at Bridges Galway 2026 from August 5-8: https://www.bridgesmathart.org/b2026/ Come check them out if you're in the neighborhood!
5
11
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
And after a few extra hacks to mitigate some unpleasant visual artifacts, it all Just Works™. Of course I wrote an academic paper with all of the gory details – look for it in the upcoming Bridges 2026 conference proceedings. Here's a figure that gives a taste of what the software does.
4
12
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
I had to write a homemade finite element method (FEM, https://en.wikipedia.org/wiki/Finite_element_method) solver to simulate the Gray-Scott model on this weirdo domain. FEM solvers tend to throw up their hands and quit when you point them at non-manifold geometry like the folded and glued square, but I hollered at mine until it started behaving.
2
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
You can definitely play with symmetry when laying out the tiles. Here's those same red plastic tiles from before, and again after re-arranging to make a composition with 90° rotational symmetry. How many unique tile designs do you see here? (Hint, it's the same in both images.)
0
14
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Want more than one tile design? NP, just glue together multiple sheets along their shared edge. If you look closely at the wooden tiles you'll see there are three distinct tile designs. And here are two different icosahedron tilings, one with a single tile design, and one with every tile unique.
15
2
5
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Now all four corners of the square are mathematically considered to be the same point, as are any set of points along a boundary edge that are all the same distance away from the corner. BTW when solving the PDEs, we don't consider the effects of the folds, just the "glue".
1
17
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Here's what it looks like, starting with a square sheet (a). First, fold it into quarters (b), then fold diagonally to put all of the boundary edges on top of each other (c). Finally, glue all of the edges together (d).
1
18
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
But until I started this project, I don't think anyone was daft enough to make reaction-diffusion Truchet tiles that match up no matter how you reorient them. The central trick is to solve the Gray-Scott PDEs on an unusual topological domain that collapses all of the edges into a single segment.
2
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
More interesting RD tilings are possible. Recently, Vladimir Bulatov has been making some really cool patterns with his SymSim software – check it out at https://symmhub.github.io/SymmHub/apps/symsim/gray_scott/index.html
3
20
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Making RD patterns that tile like wallpaper is easy – apply periodic boundary conditions (PBCs, https://en.wikipedia.org/wiki/Periodic_boundary_conditions) when solving the PDEs. PBCs are like the old-school Pac-Man arcade game: crossing the left side of the "screen" warps you to the right side, and ditto for top/bottom.
0
1
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Making reaction-diffusion patterns amounts to solving a system of partial differential equations (PDEs) – the Gray-Scott model – that describe the simulated chemical reaction. The formula might look like Greek, but it's not too exotic from a math/coding standpoint.
0
22
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
OK, so what's "reaction-diffusion" then? In brief, it's a mathematical model of a chemical reaction that produces patterns similar to many found in nature. For more info, see https://www.karlsims.com/rd.html and/or https://mrob.com/pub/comp/xmorphia/index.html
3
25
2
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
RE: https://mastodon.social/@matt_zucker/114389429207956266 (BTW if these orbs look familiar, maybe you saw the thread I posted about a year ago about similar work I did.)
2
26
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
"Truchet tiling" means that that each tile can be rotated in place or swapped with another of the same shape without breaking up the pattern. To get this you need the tiles' edges to all be identical and mirror-symmetric. This is not obvious at first glance when looking at the overall tiling, IMO.
4
1
1
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social
Replying to @matt_zucker@mastodon.social
Oh, and here are some planar variants I made, too. The left one is CNC-machined walnut and maple, because it seemed like a really cool idea before I realized exactly how much hand-sanding would be involved (too much, it was too much sanding). The right one is 3D-printed nylon.
3
28
0
0
Open post
matt_zucker
Matt Zucker @matt_zucker@mastodon.social · Apr 16, 2026
Matt Zucker
@matt_zucker@mastodon.social

Why do it by hand if you can code it in just quadruple the time? he/him

mastodon.social

New #MathArt sculptures: reaction-diffusion Truchet tilings of the sphere! These are made from 3D-printed nylon and each individual tile can be removed/replaced.

If you think these look cool or interesting, stick around to learn a little bit about how they were made and the math behind them... 🧵

33
31
21
1

Remote instance

mastodon.social
Open on original server

Media

313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

Platform

  • Email
  • Chat
  • Timeline
  • Communities
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ

Legal

  • Terms of Service
  • Privacy Policy
  • Warrant Canary
  • Lite (no JS)
  • VPN Policy
  • Source code

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 00:27:27 UTC