Art

I am interested in the visual and creative aspects of physics and mathematics. Using visualizations helps not only myself better and more deeply understand the problem I am working on, but it also allows for beautiful discoveries of symmetries and structure that would otherwise be missed.

The following samples include 1- and 2-dimensional cellular automata (CA), as well as some geometrical convolutions of functions. The latter has been directly inspired by my work.


1D Cellular Automata

Here are a collection of one-dimensional cellular automata, inspired by various individuals: Wolfram’s book “A New Kind of Science“, Daniel Shiffman‘s “The Nature of Code” and his YouTube channel, and Softology’s YouTube channel & blog, amongst other more brilliant minds and creatives.

1D Wolfram CA, with non-trivial neighbourhood
4-state 1D totalitarian CA
3-state 1D totalitarian CA
1D Wolfram CA, with non-trivial neighbourhood
3-state 1D Wolfram CA
3-state 1D totalitarian CA
4-state 1D totalitarian CA

2D Cellular Automata

Two-state 2D cellular automaton, with a Moore neighbourhood (minus two diagonally opposite corners). Cells that are OFF (white) may only turn on once they have an odd number of ON neighbours.

This two-state, two-dimensional cellular automaton (CA) was inspired by the Numberphile video “Terrific Toothpicks Patterns” – a highly recommended video on an excellent YouTube channel.

In the CA, cells may take only two states – ON (black) or OFF (white). Red cells are newly ON cells, and will turn black for subsequent steps in the evolution. A cell’s neighbourhood is defined as Moore’s neighbourhood (all cells diagonally and orthogonally adjacent by one step), minus the top left and bottom right cells.

The rules of this CA work as follows. Every cell is OFF. Turn the centre cell ON. At each step in the evolution, an OFF cell with an even number of ON neighbours will remain OFF. Note, zero counts as even in this case. Otherwise, the cell will turn/be ON.

This CA gives rise to an enchanting visual pattern, but it also has some deeper and more interesting properties. The sequence of integers produced by counting the number of ON cells at a given step, as well as the sequence of the integers produced by counting the number of new ON cells at a given step have been recently added to the Online Encyclopaedia of Integer Sequences (OEIS). They can be found here and here respectively.


Overlap Functions

Here is a collection of movies that show the effects of convolving two sets of two-dimensional Gaussians in pre-configured polygonal shapes. In essence, any given frame of the movie shows the overlap function between these sets of Gaussians. In order down the page, the polygons used are the equilateral triangle, a square, and a regular pentagon. The Gaussians are centred around the corners of these polygons. Time in the movie is showing how the overlap function changes with respect to the angular offset between the two shapes.

Plot of the overlap function of three Gaussians overlapping with three other Gaussians. The two sets of Gaussians are configured in an equilateral triangle, and time in the animation corresponds to changing the angular difference between the two triangles

Contour plot of the overlap function described in the left plot

Similar to the other overlap function plots, just with a pentagon shape for each set of 5 Gaussians

Contour plot of the overlap function described in the left plot

Plot of the overlap function of four Gaussians overlapping with four other Gaussians. The two sets of Gaussians are configured in a square, and time in the animation corresponds to changing the angular difference between the two squares

Contour plot of the overlap function described in the left plot