The scripts in this repository perform the numerical calculations shown in Fig3c, Fig.4, and Fig.S2 of the paper A polyhedral structure controls programmable self-assembly.
To run the scripts, simply start Julia and first run the code in assembly_design.jl.
This will instatiate an environment, download all necessary packages and define all needed functions.
After this, running the scripts three_rings.jl will reproduce the numerical results on the three ring system shown in Fig.4, and the script reconfigurable_squares.jl will reproduce the results on the reconfigurable square system of Fig.3c and Fig.S2.
@article{polyss.2026,
year = {2026},
title = {{A polyhedral structure controls programmable self-assembly}},
author = {Hübl, Maximilian C. and Videbæk, Thomas E. and Hayakawa, Daichi and Rogers, W. Benjamin and Goodrich, Carl P.},
journal = {Nature Physics},
issn = {1745-2473},
doi = {10.1038/s41567-025-03120-3},
eprint = {2501.16107},
pages = {294--301},
number = {2},
volume = {22},
}