# FLIM Simulations

## Monte Carlo Model of Fluorescence Lifetime Measurements with TCSPC.

Photon
Counting Applet |
Whole
Transient Applet |

With a computer we can simulate a collection of molecules that are able to be excited by an external light pulse and also, when excited, to spontaneously emit light and return to their ground state. We let the excited state of these molecules have an effective lifetime ( τ ).

**Stage
1: Excitation**

The
molecules are illuminated by a light pulse during which
there will be some probability that each molecule will
become excited, we provide this number, P_{ex} , which is
>0 and <1.

We can tell the computer to simulate this as demonstrated in the following pseudo code:

for each molecule, i

generate
a random number, R_{1} , between 0 and 1.

if
R_{1} <P_{ex} then molecule i is excited.

**Stage
2: Single photon emission**

For
any excited molecule there is a fixed probability, P_{em},
that the molecule will spontaneously emit light during
the next time period, T, to return to its ground state.

P_{em} = T / τ

We can simulate this by:

for each excited molecule, j

for each time period, t

generate
a random number, R_{2} , between 0 and 1.

if
R_{2} <P_{em} then molecule j has emitted at time t.

**Stage
3: Repeated excitation **

If we assume that every emission is detected, then a TCSPC system will only detect the FIRST emission after each excitation pulse. In the above code we must keep track of all the times that every molecule emits. Then at the end of all the above code loops, choose to detect the earliest emitted photon.

This one emission event is taken and used to increment one of the bars in the graph, the bar corresponding to time t.

As we run these stages over and over again we will build up a transient signal which may (or may not) look like an exponential decay with the lifetime τ.

This simulation can be seen live with the TCSPC Java applet.

With this basic simulation run many times we can start to model effects such as photon build-up.

Explore this with the TCSPC2 Java applet.