POISSON_SIMULATION is a C++ program which simulates a Poisson process in which events occur uniformly at random, with an average waiting time of Lambda, creating output for graphics by gnuplot.
Note that the Poisson distribution therefore also describes the distribution of distances from one point to the next, assuming the points are distributed uniformly at random along a line, with average density Lambda per unit length.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
POISSON_SIMULATION is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version.
BROWNIAN_MOTION_SIMULATION, a C++ library which simulates Brownian motion in an M-dimensional region.
DUEL_SIMULATION, a C++ program which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
FAIR_DICE_SIMULATION, a C++ program which simulates N tosses of 2 dice, making a histogram of the results.
GNUPLOT, C++ programs which illustrate the use of the gnuplot graphics program.
HIGH_CARD_SIMULATION, a C++ program which simulates a situation in which you see the cards in a deck one by one, and must select the one you think is the highest and stop; the program uses GNUPLOT for graphics.
ISING_2D_SIMULATION, a C++ program which carries out a Monte Carlo simulation of an Ising model, a 2D array of positive and negative charges, each of which is likely to "flip" to be in agreement with neighbors.
LIFE_OPENGL, a C++ program which uses OpenGL to display the evolution of John Conway's "Game of Life".
REACTOR_SIMULATION, a C++ program which a simple Monte Carlo simulation of the shielding effect of a slab of a certain thickness in front of a neutron source. This program was provided as an example with the book "Numerical Methods and Software."
THREE_BODY_SIMULATION, a C++ program which simulates the behavior of three planets, constrained to lie in a plane, and moving under the influence of gravity, by Walter Gander and Jiri Hrebicek.
The calling program creates data and command files which can be used by GNUPLOT to create images.
You can go up one level to the C++ source codes.