Bug #14881

Could not run atmospheric neutrino simulation

Added by Tingjun Yang about 3 years ago. Updated over 2 years ago.

Start date:
Due date:
% Done:


Estimated time:


Since genie v02_12_00, we cannot run genie atmospheric neutrino simulation in larsoft/dunetpc:
lar -c prodgenie_atmnu_max_dune10kt_1x2x6.fcl

The job will hang.

fmax10_0401z.sou_num (28.2 KB) fmax10_0401z.sou_num Tingjun Yang, 03/31/2017 03:19 PM


#1 Updated by Tingjun Yang about 3 years ago

  • Assignee set to Jeremy Hewes

Assign to Jeremy Hewes.

#2 Updated by Jeremy Hewes about 3 years ago

  • % Done changed from 0 to 60

Identified two separate issues:

- Event generator hang with Bartol fluxes is reproducible in standalone GENIE, and so may be an issue in GENIE itself. I have reached out to GENIE experts to notify them.

- Event generator hang with Honda fluxes is due to Honda flux driver not being implemented in LArSoft's GENIEHelper. After reintroducing it, the event generator now runs. Next step is to commit this addition to nutools.

#3 Updated by Tingjun Yang about 3 years ago

  • Status changed from New to Assigned

#4 Updated by Tingjun Yang almost 3 years ago

Here is an attempt to reproduce the problem with Bartol flux using standalone genie:

gevgen_atmo -f BGLRS:/dune/data/users/tjyang/Bartol/fmax10_0401z.sou_num[14] -g 1000180400 -n 1 --cross-sections $GENIEXSECFILE -E 0.5,100

on dunegpvm or
gevgen_atmo -f BGLRS:/uboone/data/users/tjyang/Bartol/fmax10_0401z.sou_num[14] -g 1000180400 -n 1 --cross-sections $GENIEXSECFILE -E 0.5,100

on uboonegpvm.

The flux file is attached or can be found at /uboone/data/users/tjyang/Bartol/ or /dune/data/users/tjyang/Bartol/.

It is hanging after the following messages:
1490993189 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::PopulateEventGenDriverPool (643)> : All necessary GEVGDriver object were pushed into GEVGPool

1490993189 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::BootstrapXSecSplineSummation (679)> : Summing-up splines to get total cross section for each init state
1490993189 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::BootstrapXSecSplineSummation (687)> : ** Summing xsec splines for init-state = nu-pdg:14;tgt-pdg:1000180400;
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::BootstrapXSecSplineSummation (706)> : Finished summing all interaction xsec splines per initial state
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::GetMaxPathLengthList (591)> : Querying the geometry driver to compute the max path-length list
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::GetMaxPathLengthList (596)> : Maximum path length list:
[-] |---o code: 1000180400 [ Ar40] -----> path-length = 1
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::ComputeProbScales (723)> : Computing the max. interaction probability (probability scale)
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::ComputeProbScales (831)> : *** Probability scale = 5.73005e-18
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::Configure (491)> : Finished configuring GMCJDriver

1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::ForceSingleProbScale (226)> : GMCJDriver will generate un-weighted events. Note: That does not force unweighted event kinematics!
1490993190 NOTICE Ntp : [n] <NtpWriter.cxx::NtpWriter (57)> : Run number: 100000000
1490993190 NOTICE Ntp : [n] <NtpWriter.cxx::NtpWriter (58)> : Requested G/ROOT tree format: [NtpMCEventRecord]
1490993190 NOTICE Ntp : [n] <NtpMCJobConfig.cxx::Load (53)> : Converting configuration registries to TFolders
1490993190 NOTICE Ntp : [n] <NtpMCJobEnv.cxx::TakeSnapshot (52)> : Taking environment snapshot and saving it in a TFolder
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::GenerateEvent (845)> : Generating next event...
1490993190 NOTICE GMCJDriver : [n] <GMCJDriver.cxx::GenerateFluxNeutrino (1045)> : Generating a flux neutrino

I confirm it is working in genie v2_10_10a.


#5 Updated by Tingjun Yang almost 3 years ago

More details about the atmospheric neutrino generator can be found in section 6.5.3 of the genie manual:

The source code for this application is in ‘$GENIE/src/support/atmo/EvGen/gAtmoEvGen.cxx’

#6 Updated by Tingjun Yang over 2 years ago

The problem is actually fixed in the HEAD of genie code 4 month ago:

#7 Updated by Tingjun Yang over 2 years ago

Actually, the above bug fix was for Fluka flux drive. The Bartol flux driver still has the same problem and needs to be fixed:

123      fMaxEv = fEnergyBins[fNumEnergyBins];
125      fNumPhiBins      = 1;
126      fNumCosThetaBins = kBGLRS3DNumCosThetaBins;
127      fNumEnergyBins   = kBGLRS3DNumLogEvBinsLow + kBGLRS3DNumLogEvBinsHigh; 

Line 123 should be moved after 127.

#8 Updated by Tingjun Yang over 2 years ago

  • % Done changed from 60 to 90

larsoft v06_54_00 depends on genie v2_12_8, which has the bug fix for Bartol flux driver.

We are validating the atmospheric neutrino simulation.

#9 Updated by Tingjun Yang over 2 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 90 to 100

dunetpc v06_55_00 has the proper fcl settings to use the fixed Bartol flux driver. This issue is resolved.

#10 Updated by Tingjun Yang over 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF