We ran across infinite looping in G4CompetitiveFission::FissionCharge, and traced it to the following: lines 342-344 currently are: if (Af >= 134.0) DeltaZ = -0.45; // 134 <= Af else if (A <= (A-134.0)) DeltaZ = 0.45; // Af <= (A-134) else DeltaZ = -0.45*(Af-(A/2.0))/(134.0-(A/2.0)); // (A-134) < Af < 134 but, as one can see from the logic and comment, line 343 should be: else if (Af <= (A-134.0)) DeltaZ = 0.45; // Af <= (A-134) This results in crazy parameters in the test in the lines below this which are trying to generate a gaussian within specific bounds, based on the impossible parameters.
Bug fixed and included in 9.2 release.