f90_simulation, a Fortran90 code which uses simulation to study card games, contests, and other processes which have a random element. Usually, the purpose is to try to predict the average behavior of the system over many trials.
The information on this web page is distributed under the MIT license.
f90_simulation is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.
brownian_motion_simulation, a Fortran90 code which simulates Brownian motion in an M-dimensional region.
duel_simulation, a Fortran90 code which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
fair_dice_simulation, a Fortran90 code which simulates N tosses of 2 dice, making a histogram of the results.
fire_simulation, a Fortran90 code which simulates a forest fire over a rectangular array of trees, starting at a single random location.
high_card_simulation, a Fortran90 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.
ising_2d_simulation, a Fortran90 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.
ising_3d_simulation, a Fortran90 code which carries out a Monte Carlo simulation of an Ising model, a 3D array of positive and negative charges, each of which is likely to "flip" to be in agreement with neighbors.
poisson_simulation, a Fortran90 code which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.
reactor_simulation, a Fortran90 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 code was provided as an example with the book "Numerical Methods and Software."