Wolfram Computation Meets Knowledge

Wolfram Summer School

Alumni

Ziggy Pleunis

Summer School

Class of 2014

Bio

Just before the summer school, Ziggy obtained a bachelor’s degree in physics and astronomy at the University of Amsterdam. This autumn he will continue his studies by starting a master’s in astronomy and astrophysics at the same university. Recently he became intrigued by complex systems. For his bachelor’s thesis he worked on blood flow modeling, and in the future he would like to work on modeling astrophysical phenomena. Ziggy wants to get a better understanding of the world around him; besides physics, he therefore likes reading books on other topics. He also enjoys teaching and music.

Project: Dense Packing of Circles in 2D

In this project, packings of circles of different sizes have been studied, in the hope of eventually finding a procedure for efficiently packing different-sized circles. As described in NKS pages 349–351 and 985–987, it is proven mathematically that a hexagonal packing of equal circles gives the densest packing, while finding the most efficient way of packing different-sized circles is still an unsolved problem. We generated “chains” of N randomly sized tangential circles (with S different sizes). Circles are subsequently placed tangential to the other already-placed circles, as near to the center of the system as possible (this method is based on this one described for hard spheres). We studied the behavior of the generated circle packings by calculating the packing fractions and looking at the structure of the circle packings. Furthermore, we suggest two other methods of studying circle packings:

  1. connecting circles with springs and minimizing energy of the system, and
  2. representing circles on a discrete hexagonal lattice.

Algorithm for adding circles

  1. find all the places where we can add a circle with radius r tangential to two other circles.
  2. pick the place nearest to the center of the first circle.

This procedure looks like this:

Images

The Manipulate function to generate packings of circles.

A packing of 505 circles, the packing fraction as a function of # of circles, and the triangles formed by connecting the centers of the circles.

Favorite Outer Totalistic r=1, k=2 2D Cellular Automaton

Rule 155827