In the second scan over the system a list of the slow events is accumulated in queue
last = 0;
for(is=0; is < size*size; is++)
if (site[is].id > 0)
{
if(!difEq[site[is].env])
for (i=0; i < NBRNUM; i++)
if (site[is].nbr[i]->id == 0)
{
queue[last].action = i;
queue[last].target = &site[is];
queue[last].rate = difRate[site[is].env];
last++;
}
for (i=0; i < NBRNUM/2; i++)
if (site[is].nbr[i]->id != 0)
{
queue[last].action = i+NBRNUM;
queue[last].target = &site[is];
queue[last].rate = desRate[site[is].env];
last++;
}
}