RANDOM_WALK_2D_AVOID_SIMULATION is a MATLAB program which simulates a self-avoiding random walk in a 2D region.
A random self-avoiding walk of length STEP_NUM in 2D can be generated by generating a random walk in 2D and "hoping" it doesn't intersect itself. If the next step would cause an intersection, then the generation is terminated prematurely; to ensure that the self-avoiding random walks are selected uniformly, we have to just keep trying random walks this way and "hoping".
The program RANDOM_WALK_2D_AVOID_PLOT plots the trajectories of one or more self-avoiding random walks. The user gives a desired length STEP_NUM, and the program generates a random walk that either reaches STEP_NUM without self-intersection, or is terminated early to avoid intersection.
The program RANDOM_WALK_2D_AVOID_SIMULATION plots averaged data for any number of self-avoiding random walks that each try to achieve the same number of steps. The data plotted includes the number of steps each walk reached before termination, and a least squares fit to the distance versus number of steps.
random_walk_2d_avoid_plot ( step_num )where
random_walk_2d_avoid_simulation ( step_num, walk_num )where
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
RANDOM_WALK_2D_AVOID_SIMULATION is available in a MATLAB version.
BROWNIAN_MOTION_SIMULATION, a MATLAB program which simulates Brownian motion in an M-dimensional region.
COIN_SIMULATION, a MATLAB library which looks at ways of simulating or visualizing the results of many tosses of a fair or biased coin.
DICE_SIMULATION, a MATLAB program which simulates N tosses of M dice, making a histogram of the results.
DUEL_SIMULATION, a MATLAB program which simulates N repetitions of a duel between two players, each of whom has a known firing accuracy.
GAMBLERS_RUIN_SIMULATION, a MATLAB program which simulates the game of gambler's ruin.
HIGH_CARD_SIMULATION, a MATLAB 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.
ISING_2D_SIMULATION, a MATLAB 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", by Simon Green.
LORENZ_SIMULATION, a MATLAB program which solves the Lorenz equations and displays the solution, for various starting conditions.
MD1, a FORTRAN90 program which carries out a simple molecular dynamics simulation;
MD2, a FORTRAN90 program which carries out a simple molecular dynamics simulation;
MD3, a FORTRAN90 program which carries out a simple molecular dynamics simulation;
MD3GLUE, a FORTRAN90 program which carries out a simple molecular dynamics simulation;
POISSON_SIMULATION, a MATLAB library which simulates a Poisson process in which events randomly occur with an average waiting time of Lambda.
RANDOM_WALK_1D_SIMULATION, a MATLAB program which simulates a random walk in a 1-dimensional region.
RANDOM_WALK_2D_SIMULATION, a MATLAB program which simulates a random walk in a 2-dimensional region.
RANDOM_WALK_3D_SIMULATION, a MATLAB program which simulates a random walk in a 3-dimensional region.
REACTOR_SIMULATION, a MATLAB 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."
ROULETTE_SIMULATION, a MATLAB program which simulates the spinning of a roulette wheel and the evaluation of certain common roulette bets.
SIR_SIMULATION, a MATLAB program which simulates the spread of a disease through a hospital room of M by N beds, using the SIR (Susceptible/Infected/Recovered) model.
THREE_BODY_SIMULATION, a MATLAB 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.
TRAFFIC_SIMULATION, a MATLAB program which simulates the cars waiting to get through a traffic light.
TRUEL_SIMULATION, a MATLAB program which simulates N repetitions of a duel between three players, each of whom has a known firing accuracy.
XISING, a C program which models the variations in ferromagnetism in a material, displaying the results using X Windows.
XWAVES, a C program which simulates the behavior of solutions of certain forms of the wave equation, displaying the results using X Windows.
You can go up one level to the MATLAB source codes.