This simulation demonstrates the process of diffusion. The environment chosen to demonstrate this is the base of a bipolar pnp transistor, but the behavior of the particles would be the same if it were a gas in a container subject to the similar boundary conditions.
The simulation lets you chose the initial distribution of carriers in the base:
• Linear, uniform, a sheet, or no carriers.
The base is divided up into columns with the carrier density represented by the number of balls in the column. Each simulation cycle or step is meant to last just long enough so that the particles can move the distance of one column – either right or left with an equal probability (50%) of moving in either direction.
Thus all particles in a column will move to another column during the time step. That same column will receive new carriers from the left column and right columns, again each with a 50% probability of occurrence.

The columns near the edges need a little more consideration due to the boundary conditions:

1. Zero particles (reverse bias, i.e., exp(qV/kT) where V is negative.

a. at room temperature this is exp(V/26mV))

2. A fixed number of particles (forward bias, i.e., exp(qV/kT) where V is positive

3. Floating. This means the boundary neither injects nor collects any particles

If the boundary condition requires the particle count to be zero, then 50% (on average) of the particles in the column next to the boundary will disappear into the boundary and be counted as a current. If the boundary condition requires a particle count to be maintained, then the boundary will supply the number of carriers needed to maintain that value as the carriers diffuse away to the neighboring column. If the boundary condition is floating, then the boundary will neither inject nor collect any particles. The boundary particles will have a choice of either staying still (50% on average) or moving to the neighboring column (50% on average).

The current at the boundary is proportional to the slope at the boundary. Notice how the slope of the particle density is zero when the junctions are floating. Initially, the currents at the collector and emitter junctions may not be equal. When this occurs, particle count build up is occurring. This happens when the boundary condition calls for a certain value, but that value hasn’t been achieved yet. We hope these simulations will give you a better intuition for the process of diffusion.

The other options control the initial distribution:

**Uniform:** means all columns start with the initial number of carriers as the
emitter density.

**Linear:** that the carriers have a linear distribution from the emitter density to 0 at the collector

**Sheet:** start with the carriers stacked in two columns and no carriers any where else.

**No Carriers:** we start with no carriers at all in the base.

So that we can show the distribution of the carriers we have each visible ball represent 100 carriers. This allows for us to demonstrate the distributions better. Here is a zoomed in view

by the Coding Zebra and Tom Mozdzen

The columns near the edges need a little more consideration due to the boundary conditions:

1. Zero particles (reverse bias, i.e., exp(qV/kT) where V is negative.

a. at room temperature this is exp(V/26mV))

2. A fixed number of particles (forward bias, i.e., exp(qV/kT) where V is positive

3. Floating. This means the boundary neither injects nor collects any particles

If the boundary condition requires the particle count to be zero, then 50% (on average) of the particles in the column next to the boundary will disappear into the boundary and be counted as a current. If the boundary condition requires a particle count to be maintained, then the boundary will supply the number of carriers needed to maintain that value as the carriers diffuse away to the neighboring column. If the boundary condition is floating, then the boundary will neither inject nor collect any particles. The boundary particles will have a choice of either staying still (50% on average) or moving to the neighboring column (50% on average).

The current at the boundary is proportional to the slope at the boundary. Notice how the slope of the particle density is zero when the junctions are floating. Initially, the currents at the collector and emitter junctions may not be equal. When this occurs, particle count build up is occurring. This happens when the boundary condition calls for a certain value, but that value hasn’t been achieved yet. We hope these simulations will give you a better intuition for the process of diffusion.

The other options control the initial distribution:

So that we can show the distribution of the carriers we have each visible ball represent 100 carriers. This allows for us to demonstrate the distributions better. Here is a zoomed in view

by the Coding Zebra and Tom Mozdzen