# duel_simulation

duel_simulation, a FORTRAN90 code which simulates N instances of a duel between two players.

Player A fires at player B, and hits with a probability of A_ACCURACY. If Player A misses, then Player B fires at Player A, hitting with a probability of B_ACCURACY.

The duel continues with alternating shots until only one player survives.

The simulation is intended to estimate the probabilities that a player will survive.

The exact probability that player 1 will survive is

P(1) / ( P(1) + P(2) - P(1) * P(2) )
while player 2's chance is
P(2) * ( 1 - P(1) ) / ( P(1) + P(2) - P(1) * P(2) ).

### Languages:

duel_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.

### Related Data and codes:

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.

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; the code uses GNUPLOT for graphics.

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."

### Reference:

1. Paul Nahin,
Duelling Idiots and Other Probability Puzzlers,
Princeton University Press, 2000,
ISBN13: 978-0691009797,
LC: QA273.N29.
2. Martin Shubik,
"Does the Fittest Necessarily Survive?",
in Readings in Game Theory and Political Behavior,
edited by Martin Shubik,
Doubleday, 1954,
LC: H61.S53.

### Source Code:

Last revised on 18 June 2020