A DLA model, now coded in C++ / Openframeworks. The DLA model is a paradigm model for far-from-equilibrium pattern formation. ‘[P]articles are added, one at a time, to a growing cluster or aggregate of particles via random walk paths starting outside the region occupied by the cluster.’ (Paul Meakin 1998) The cluster has a fractal structure with scaling properties.
The Ulam spiral (named after its discoverer, the mathematician Stanislaw Ulam) is a rectangalur grid of numbers spiraling out from the center, in which the prime numbers are highlighted. An interesting feature reveals itself when many numbers are plotted (replacing the numbers with colored dots): a pattern emerges, dominated by diagonal lines. (Coded in Processing).
A simulation of a reaction-diffusion system. Go here and play around with keys 1 – 4, to see different types of pattern evolve. Press Enter to reset growth when the field turns completely black. (Click in the screen first if there’s no immediate response to the keys.) It simulates the interaction between two chemicals, and the way they generate patterns. Reaction-diffusion models are expected to explain the spots and stripes of leopards and zebras, but are more important as a model towards explaining more complex forms of embryogenesis. It is an implementation of ideas introduced in Alan Turing’s landmark paper ‘The Chemical Basis of Morphogenesis’ (1952). This model however is based on the Gray-Scott model, see: Pearson, ‘Complex Patterns in a Simple System’ (1993).
The model is coded in Processing as an agent-based Cellular Automaton model. Gray-Scott equations are partial differential equations which are numerically integrated using the Euler method. Diffusion gradients are computed for the Von Neumann neighbourhood of each cell. The system size is only 128×128 cells to speed up the computation.
A classic in mathematical visualization, the Mandelbrot set, coded in C++ / Openframeworks. See ‘quasi self-similarity’ of the main shape after magnifying 10 and 100 times.
A classic in chaos mathematics coded and visualized with Processing. The Lorenz attractor: strange but also very elegant. See how it evolves here. The Lorenz attractor emerges in a dynamical system of 3 linked differential equations with certain values for the system parameters, but independent of the initial conditions.
The Lotka-Volterra model is a simple example of a dynamical system consisting of 2 coupled differential equations. They can represent the interdependent populations of predator and prey in an ecosystem. The red line represents the predator population (e.g. wolves), and the black line the prey (e.g. hares) as functions of time. We can visualize the same model in so-called phase space, where the two populations together are represented as one single trajectory (called a phase portrait).
An implementation of Graig Reynolds ‘boids’ in Processing to simulate flocking behavior of birds or a school of fish, providing a basic example of ‘swarm intelligence’. As there is no central leader, global form and coordinated motion of the flock emerge from the local interactions of the agents. Click here and chase the flock with mouseclicks.