LIFE_SERIAL
John Conway's Game of Life


LIFE_SERIAL is a C++ program which computes a few steps of the evolution of John Conway's Game of Life, intended as a starting point for implementing a parallel version.

Licensing:

The computer code and data files made available on this web page are distributed under the GNU LGPL license.

Languages:

LIFE_SERIAL is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

CIRCLE_GRID_DISPLAY, a MATLAB program which reads a matrix of integers, and draws a corresponding grid of circles filled with color.

FFT_SERIAL, a C++ program which demonstrates the computation of a Fast Fourier Transform (FFT), and is intended as a starting point for implementing a parallel version.

FIRE_SERIAL, a C++ program which simulates a forest fire over a rectangular array of trees, starting at a single random location. It is intended as a starting point for the development of a parallel version.

LIFE_OPENGL, a C++ program which uses OpenGL to display the evolution of John Conway's Game of Life, by Simon Green.

MXM_SERIAL, a C++ program which sets up a matrix multiplication problem A=B*C, intended as a starting point for implementing a parallel version.

POISSON_SERIAL, a C++ program which computes an approximate solution to the Poisson equation in a rectangle, intended as the starting point for the creation of a parallel version.

PRIME_SERIAL, a C++ program which counts the number of primes between 1 and N, intended as a starting point for the creation of a parallel version.

QUAD_SERIAL, a C++ program which approximates an integral using a quadrature rule, and is intended as a starting point for parallelization exercises.

QUAD2D_SERIAL, a C++ program which approximates an integral over a 2D region using a product quadrature rule, and is intended as a starting point for parallelization exercises.

SEARCH_SERIAL, a C++ program which searches integers between A and B for a value J such that F(J) = C, intended as a starting point for the creation of a parallel version.

SUBSET_SUM_SERIAL, a C++ program which seeks solutions of the subset sum problem, in which it is desired to find a subset of a set of integers which has a given sum; this version of the program is intended as a starting point for a parallel approach.

Reference:

  1. Martin Gardner,
    Mathematical Games: The Fantastic Combinations of John Conway's new solitaire game "Life",
    Scientific American,
    Volume 223, Number 4, October 1970, pages 120-123.

Source Code:

Examples and Tests:

Executing the program produces a series of text files containing 0's and 1's, to indicate the current state of the game:

List of Routines:

You can go up one level to the C++ source codes.


Last revised on 08 September 2013.