Hadron Reweight Tool have an array length problem with me1M
daughter package used to notice the bug: CCQENu1DME
location of ntuples used: (with new muon systematics (2 universes)) -> /pnfs/minerva/persistent/users/drut1186/HopefullyFinalMateusTuples/
(with old muon systematics (100 universes)) -> /pnfs/minerva/persistent/users/drut1186/ME_CCQELike_ImprovedMichel_Data_Merged/minervame1Av1/
version of CCQENuUtils.cxx: 1.61
version of FluxReweighter: 1.33
Hadron Reweight Tool triggers the following error when running over playlist minervame1M (~30% of total ME POT) triggers the following error:
Array length = 4096 MnvHadronReweight::getWeights:FATAL: Go inside MnvHadronReweight and increase the size of the const variable AL
This error is triggered by the test:
end if (b->truth_hadronReweightNPoints > AL). It stopped the process of histograms by
We have seen this error in the past. Back them the solution was to increase the value of the variable
AL. I attempted test runs with values up to
AL = 50000. and the errors persist (with the
Array length updated). I believe there was a different bug fix related to the first time we fixed the problem. Will investigate.
#2 Updated by Mateus Carneiro da silva over 1 year ago
After several tests I was able to run with no errors by changing the
AL variable to a value
> 196880 since it was the value that the check
b->truth_hadronReweightNPoint would return for the minervame1M playlist. The same check seem to return
0 to every other playlist, including me1M if running with the "old Muon systematic" ntuples. In both cases the test gives the exact same value for every event.
When checking with ROOT the actual size of the variable it would disagree with the values the Hadron Reweight Tool get. It seems like a memory issue. Dan tracked back that in the new version of
CCQENuEvent.h (automatically generated) we forgot to remove the Hadron Reweight variables, this gets both the CCQENu and the HadronReweight Tool to allocate locations with the same names. Commenting them out means we rely on The HadronReweight Tool's instantiation of the variables.
$CCQENUROOT/ana_common/include/CCQENuEvent.h > 1.14 and < 1.17 will have this problem. Commenting out the HadronReweight variables in CCQENuEvent seem to fix it, the check
b->truth_hadronReweightNPoint gives reasonable and different values per event. It was committed with version 1.17 (together with some needed addition of variables unrelated to this bug).