latest newsbuy art
listen; there's a hell of a good universe next door: let's go.e.e. cummingsgo theremore quotes
very clickable
thermodynamics + art
Together with Max Cooper, we try to answer the question "What does infinity sound like?"
Telling a story about infinity is tricky. Especially a short one. Watch the video and see how we did it.

It's Snowing in my CPU — a Snowflake catalogue

She was all stars and arrows, squares and triangles of ice and light, like a church window; she was like a flower with many shining petals; she was like lace and she was like a diamond. But best of all, she was herself and unlike any of her kind.
— Paul Gallico, Snowflake

Go ahead, meet some snowflakes.

renardo
midba
donpy
treman
refin
tosey
vielel

Somewhere in the world, it's snowing. But you don't need to go far—it's always snowing on this page. Explore light flurries, snowflake families and individual flakes. There are many unusual snowflakes and snowflake family 12 and family 46 are very interesting.

But don't settle for only pixel snowflakes—make an STL file and 3D print your own flakes!

Ad blockers may interfere with some flake images—the names of flakes can trigger ad filters.

And if after reading about my flakes you want more, get your frozen fix with Kenneth Libbrecht's excellent work and Paul Gallico's Snowflake.

The snowflakes shown here are generated using the method described in Modeling Snow Crystal Growth II by Gravner and Griffeath (J. Gravner and D. Griffeath, Physica D 237, 385 (2008)). The authors provide a C/X11 implementation of the snowflake simulation.

Scientific American Visual blog article

The work here has been described in In Silico Flurries: Computing a world of snowflakes, a Scientific Americans SA Visual blog article, co-written with Jake Lever.

I'd like to extend my gratitude to Jake for tirelessly lending his machine learning expertise and thank Lisa Shiozaki and Rodrigo Goya for helpful discussions.

command-line Gravner-Griffeath snowflake simulation

I have modified the authors' code to remove dependency on X11 and to make simulating a large number of flakes easier.

# simulate a flake with specific parameters
snowflake [-a ...] [-b ...] [-k ...] [...] > snowflake.txt

# simulate a flake with some parameter values set and others default
snowflake [-a ...] [-b ...] > snowflake.txt

Download snowflake.c.

Using the mass values in the output (negative is vapor, positive is ice), it is up to you to generate the image of the flake. The blue in the images here was mapped onto mass `m=0..255` using `L=10..100`, `C=60` and `H=-80` in LCH space.


© 1999–2022 Martin Krzywinski | contact | Canada's Michael Smith Genome Sciences CentreBC Cancer Research CenterBC CancerPHSA