Don't modify wgt_last in russian_roulette

This commit is contained in:
Paul Romano 2022-01-13 18:32:17 -06:00
parent 36d5c94f9e
commit 03fe9d3200

View file

@ -12,12 +12,10 @@ namespace openmc {
void russian_roulette(Particle& p)
{
if (p.wgt() < settings::weight_cutoff) {
if (prn(p.current_seed()) < p.wgt() / settings::weight_survive) {
if (settings::weight_survive * prn(p.current_seed()) < p.wgt()) {
p.wgt() = settings::weight_survive;
p.wgt_last() = p.wgt();
} else {
p.wgt() = 0.;
p.wgt_last() = 0.;
p.alive() = false;
}
}