Process selection logic
The best logic to select the next process, and to determine the next propagation length. Ideally we have to consider two type of discrete processes: the ones acting on grammage (interaction), and the ones acting on distance/time (decay). The cascade logic should handle both separately, and only in a second step select between those two types. This means, the next process is obtained from two flat random numbers: p_i = Lambda_i / Lambda_tot and p_decay = Lambda_decay / (Lambda_decay+Lambda_tot), or in principle the latter may be included in the former already, saving one random number... Only after process selection the exponential random number for the next step length is determined.
This is equivalent to the logic we had in mind earlier, but should be more performant. I have to think a bit more over this, and we can continue to discuss tomorrow.