# brownian_motion_simulation

brownian_motion_simulation, a C++ code 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.

### Languages:

brownian_motion_simulation is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

### Related Data and Programs:

CORRELATION, a C++ code which contains examples of statistical correlation functions.

DUEL_SIMULATION, a C++ code which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.

FAIR_DICE_SIMULATION, a C++ code which simulates N tosses of 2 dice, making a histogram of the results.

gnuplot_test, C++ codes 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++ code 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++ code 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++ code which approximates solutions of the Ornstein-Uhlenbeck stochastic differential equation (SDE) using the Euler method and the Euler-Maruyama method.

POISSON_SIMULATION, a C++ code which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.

REACTOR_SIMULATION, a C++ code 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++ code 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.

### Source Code:

Last revised on 11 February 2020.