BROWNIAN_MOTION_SIMULATION is a C++ library which simulates Brownian motion in an M-dimensional region, creating graphics files for processing by gnuplot.
Brownian motion is a physical phenomenon which can be observed, for instance, when a small particle is immersed in a liquid. The particle will move as though under the influence of random forces of varying direction and magnitude.
There is a mathematical idealization of this motion, and from there a computational discretization that allows us to simulate the successive positions of a particle undergoing Brownian motion.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
BROWNIAN_MOTION_SIMULATON is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.
CORRELATION, a C++ library which contains examples of statistical correlation functions.
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 how a program can write data and command files so that gnuplot can create plots of the program results.
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.
ORNSTEIN_UHLENBECK, a C++ library which approximates solutions of the Ornstein-Uhlenbeck stochastic differential equation (SDE) using the Euler method and the Euler-Maruyama method.
POISSON_SIMULATION, a C++ library which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.
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.
Some data files and plots are made by the test program.
You can go up one level to the C++ source codes.