Project

General

Profile

Bug #8909

GENIE crash due to looking for splines

Added by Jonathan Insler about 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Category:
Simulation
Target version:
Start date:
05/22/2015
Due date:
% Done:

100%

Estimated time:
Experiment:
LBNE
Co-Assignees:
Duration:

Description

When running GENIE in the 35t, v04_08_01 of larsoft, with

lar -c prodgenie_lbne35t.fcl

it crashes when looking for splines used for cross sections.

1432323629 WARN GEVGDriver : [n] <GEVGDriver.cxx::UseSplines (602)> : * At least a spline (algorithm: genie::LwlynSmithQELCCPXSec/Default, interaction: nu:-14;tgt:1000040090;N:2212;proc:Weak[CC],QES; doesn't exist. Reverting back to not using splines
1432323629 WARN GEVGDriver : [n] <GEVGDriver.cxx::UseSplines (602)> :
At least a spline (algorithm: genie::LwlynSmithQELCCPXSec/Default, interaction: nu:-12;tgt:1000040090;N:2212;proc:Weak[CC],QES; doesn't exist. Reverting back to not using splines
1432323629 WARN GEVGDriver : [n] <GEVGDriver.cxx::UseSplines (602)> :
At least a spline (algorithm: genie::LwlynSmithQELCCPXSec/Default, interaction: nu:12;tgt:1000040090;N:2112;proc:Weak[CC],QES; doesn't exist. Reverting back to not using splines
1432323629 WARN GEVGDriver : [n] <GEVGDriver.cxx::UseSplines (602)> : *
At least a spline (algorithm: genie::LwlynSmithQELCCPXSec/Default, interaction: nu:14;tgt:1000040090;N:2112;proc:Weak[CC],QES; doesn't exist. Reverting back to not using splines
1432323630 FATAL GEVGDriver : [n] <GEVGDriver.cxx::CreateXSecSumSpline (490)> : You haven't loaded any splines!!
lar: GEVGDriver.cxx:492: void genie::GEVGDriver::CreateXSecSumSpline(int, double, double, bool): Assertion `fUseSplines' failed.
Aborted

History

#1 Updated by Robert Hatcher about 4 years ago

Can you give me some more information about the setup conditions.

source /grid/fermiapp/larsoft/products/setups
setup larsoft v04_08_01 -q debug:e7:noifdh

$ echo $GENIE
/grid/fermiapp/larsoft/products/genie/v2_8_6a/Linux64bit+2.6-2.12-e7-debug/GENIE_R286
$ echo $GENIEXSECFILE
/grid/fermiapp/larsoft/products/genie_xsec/v2_8_6/NULL/default/data/gxspl-NuMIsmall.xml

Those look fine, i.e. consistent. Could you document exactly how you setup your code and where to find prodgenie_lbne35t.fcl Are you trying to do anything unusual (such as modified GENIE physics parameters, or a such) or is this just straight using an existing release?

#2 Updated by Jonathan Insler about 4 years ago

prodgenie_lbne35t.fcl is in lbnecode. The setup conditions are:

source /grid/fermiapp/lbne/software/setup_lbne.sh
setup lbnecode v04_08_01 -q debug:e7:noifdh
lar -c prodgenie_lbne35t.fcl

Robert Hatcher wrote:

Can you give me some more information about the setup conditions.

source /grid/fermiapp/larsoft/products/setups
setup larsoft v04_08_01 -q debug:e7:noifdh

$ echo $GENIE
/grid/fermiapp/larsoft/products/genie/v2_8_6a/Linux64bit+2.6-2.12-e7-debug/GENIE_R286
$ echo $GENIEXSECFILE
/grid/fermiapp/larsoft/products/genie_xsec/v2_8_6/NULL/default/data/gxspl-NuMIsmall.xml

Those look fine, i.e. consistent. Could you document exactly how you setup your code and where to find prodgenie_lbne35t.fcl Are you trying to do anything unusual (such as modified GENIE physics parameters, or a such) or is this just straight using an existing release?

#3 Updated by Robert Hatcher about 4 years ago

ssh
source /grid/fermiapp/lbne/software/setup_lbne.sh
setup lbnecode v04_08_01 -q debug:e7

lar -c prodgenie_lbne35t.fcl

%MSG-i GENIEHelper:  GENIEGen:generator@Construction 22-May-2015 16:43:39 CDT  ModuleConstruction
GENIE EventGeneratorList using "Default" 
%MSG
%MSG-i GENIEHelper:  GENIEGen:generator@Construction 22-May-2015 16:43:39 CDT  ModuleConstruction
XSecTable/GSPLOAD full path "/grid/fermiapp/products/larsoft/genie_xsec/v2_8_6/NULL/default/data/gxspl-NuMIsmall.xml" 
%MSG
%MSG-i GENIEHelper:  GENIEGen:generator@Construction 22-May-2015 16:45:19 CDT  ModuleConstruction
Time to read GENIE XSecTable:  Real 99.3634 s, CPU 97.92 s from /grid/fermiapp/products/larsoft/genie_xsec/v2_8_6/NULL/default/data/gxspl-NuMIsmall.xml
%MSG

Again that looks fine ...

Looking more carefully at the spline it complains about:

algorithm: genie::LwlynSmithQELCCPXSec/Default, interaction: nu:-14;tgt:1000040090;N:2212;proc:Weak[CC],QES

Hmmm.

grep "nu:-14;tgt:1000040090;N:2212" $GENIEXSECFILE 

yields no match. That is a target Z=4 A=9 which is Be9 (Beryllium). Ahhh! Until now no experiments had a need for Beryllium to be represented in their detector. Is this a new feature of the geometry? It appears to have been introduced in v3 on 2014-10-20.

New detector geometry loaded from 
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml/lbne35t4apa_v3.gdml
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml/lbne35t4apa_v3_nowires.gdml

Apparently there is a material Copper_Beryllium_alloy25 (w/ ~2% Be) from whence I think individual wires are created. Are you really generating GENIE events in a detector where individual wires are represented? Ugh, volume transversal sounds like it would be very slow.

Nevertheless, the problem is that the geometry has a nucleus isotope for which no cross-section splines were created.

The current list of isotopes for which splines are generate is (symbol : name, Z, [ A1, A2, ...]):

ionlist = {
    'H'  : ['hydrogen',    1, [ 1, 2 ]],  # don't duplicate free proton?
    'He' : ['helium',      2, [ 4 ]],   # skip 3
    'B'  : ['boron',       5, [ 10, 11 ]],
    'C'  : ['carbon',      6, [ 12, 13 ]],
    'N'  : ['nitrogen',    7, [ 14, 15 ]],
    'O'  : ['oxygen',      8, [ 16, 17, 18 ]],
    'F'  : ['fluorine',    9, [ 19 ]],
    'Na' : ['sodium',     11, [ 23 ]],
    'Mg' : ['magnesium',  12, [ 24, 25, 26 ]],
    'Al' : ['aluminum',   13, [ 27 ]],
    'Si' : ['silicon',    14, [ 28, 29, 30 ]],
    'P'  : ['phosphorus', 15, [ 31 ]],
    'S'  : ['sulfur',     16, [ 32, 33, 34 ]],  # skip 36
    'Cl' : ['chlorine',   17, [ 35, 36, 37 ]],
    'Ar' : ['argon',      18, [ 36, 38, 39, 40 ]],
    'K'  : ['potassium',  19, [ 39, 40, 41 ]],
    'Ca' : ['calcium',    20, [ 40, 41, 42, 43, 44 ]], # skip 46, 48
    'Ti' : ['titanium',   22, [ 46, 47, 48, 49, 50 ]],
    'V'  : ['vanadium',   23, [ 50, 51 ]],
    'Cr' : ['chromium',   24, [ 50, 51, 52, 53, 54 ]],
    'Mn' : ['manganese',  25, [ 55 ]],
    'Fe' : ['iron',       26, [ 54, 56, 57, 58 ]],
    'Co' : ['cobalt',     27, [ 59 ]],
    'Ni' : ['nickel',     28, [ 58, 59, 60, 61, 62, 64 ]],
    'Cu' : ['copper',     29, [ 63, 64, 65 ]],
    'Zn' : ['zinc',       30, [ 64, 65, 66, 67, 68, 70 ]],
    'Br' : ['bromine',    35, [ 79, 80, 81 ]],
    'Sn' : ['tin',        50, [ 116, 117,  # skip 112, 114, 115, 122, 124
                                118, 119, 120 ]],
    'Ba' : ['barium',     56, [ 130, 132, 134, 135, 136, 137, 138 ]],
    'Gd' : ['gadolinium', 64, [ 152, 154, 155, 156, 157, 158, 160 ]],
    'Pb' : ['lead',       82, [ 204, 206, 207, 208 ]]
    }

But those only exist in the $GENIEXSECPATH/gxspl-NuMIbig.xml.gz (but would need to be uncompressed for GENIE to read them. The gxspl-NuMIsmall.xml file pointed to by $GENIEXSECFILE only has:
  tgtkeep[1000000010] = 1;  # free-n
  tgtkeep[1000010010] = 1;  # H1
  tgtkeep[1000020040] = 1;  # He4
  tgtkeep[1000060120] = 1;  # C12
  tgtkeep[1000070140] = 1;  # N14
  tgtkeep[1000080160] = 1;  # O16
  tgtkeep[1000110230] = 1;  # Na23
  tgtkeep[1000120240] = 1;  # Mg24
  tgtkeep[1000130270] = 1;  # Al27
  tgtkeep[1000140280] = 1;  # Si28
  tgtkeep[1000150310] = 1;  # P31
  tgtkeep[1000160320] = 1;  # S32
  tgtkeep[1000170350] = 1;  # Cl35
  tgtkeep[1000180400] = 1;  # Ar40
  tgtkeep[1000190390] = 1;  # K39
  tgtkeep[1000200400] = 1;  # Ca40
  tgtkeep[1000220480] = 1;  # Ti48
  tgtkeep[1000230510] = 1;  # V51
  tgtkeep[1000240520] = 1;  # Cr52
  tgtkeep[1000250550] = 1;  # Mn55
  tgtkeep[1000260540] = 1;  # Fe54
  tgtkeep[1000260560] = 1;  # Fe56
  tgtkeep[1000260570] = 1;  # Fe57
  tgtkeep[1000260580] = 1;  # Fe58
  tgtkeep[1000280590] = 1;  # Ni59
  tgtkeep[1000290640] = 1;  # Cu64
  tgtkeep[1000501190] = 1;  # Sn119
  tgtkeep[1000561370] = 1;  # Ba137
  tgtkeep[1000641480] = 1;  # Gd158
  tgtkeep[1000822070] = 1;  # Pb207

Any geometry with elements beyond these will cause such issues. Can I get a survey of all LBNE/Dune/LArSoft geometries to identify isotopes that might appear?
I can generate an updated spline file with necessary additions.


As an aside ...

%MSG-i GENIEHelper:  GENIEGen:generator@Construction 22-May-2015 16:43:38 CDT  ModuleConstruction
ExpandFluxPaths initially: "" 
             final result: "/grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml:/grid/fermiapp/products/lbne/lbnecode/v04_08_01/scripts:/grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml:/grid/fermiapp/products/lbne/lbnecode/v04_08_01/config_data:/grid/fermiapp/products/lbne/dune_pardata/v01_00_00:/grid/fermiapp/products/larsoft/larpandora/v04_04_05/scripts:/grid/fermiapp/products/larsoft/larana/v04_06_03/config_data:/grid/fermiapp/products/larsoft/larsim/v04_07_01/G4:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/pdf/Gaisser:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/PhotonPropagation/LibraryData:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/ParticleIdentification:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/Genfit:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/Argoneut:/grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/uboone:/grid/fermiapp/products/larsoft/larcore/v04_07_01/gdml:/grid/fermiapp/products/larsoft/larcore/v04_07_01/gdml" 
                    using: "DIRECT" method
%MSG
%MSG-i GENIEHelper:  GENIEGen:generator@Construction 22-May-2015 16:43:38 CDT  ModuleConstruction
ExpandFluxFilePatternsDirect initially found 0 files for user patterns:
    flugg_L010z185i_neutrino_mode.root
  using FluxSearchPaths of: 
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml/
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/scripts/
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/gdml/
    /grid/fermiapp/products/lbne/lbnecode/v04_08_01/config_data/
    /grid/fermiapp/products/lbne/dune_pardata/v01_00_00/
    /grid/fermiapp/products/larsoft/larpandora/v04_04_05/scripts/
    /grid/fermiapp/products/larsoft/larana/v04_06_03/config_data/
    /grid/fermiapp/products/larsoft/larsim/v04_07_01/G4/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/pdf/Gaisser/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/PhotonPropagation/LibraryData/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/ParticleIdentification/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/Genfit/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/Argoneut/
    /grid/fermiapp/products/larsoft/larsoft_data/v0_04_00/uboone/
    /grid/fermiapp/products/larsoft/larcore/v04_07_01/gdml/
    /grid/fermiapp/products/larsoft/larcore/v04_07_01/gdml/

  expansion resulted in a null list for flux files
%MSG

It couldn't find any appropriate flux files, which seems problematic ... but apparently something overcomes this later. I'd be interested in understanding what's going on here.

#4 Updated by Lynn Garren about 4 years ago

  • Status changed from New to Assigned
  • Assignee changed from Jonathan Insler to Robert Hatcher

#5 Updated by Robert Hatcher about 4 years ago

  • % Done changed from 0 to 90

Ack. I generated the splines for Beryllium and incorporated them into the XML file back on May 29th, but never got around to packaging the new XML file in to a UPS product and uploading it. They should now be there as:

https://scisoft.fnal.gov/scisoft/packages/genie_xsec/v2_8_6a/genie_xsec-2.8.6a-noarch-default.tar.bz2

Please give install this and give it a try. Let me know if there are other new isotopes in the geometry that similarly aren't represented in the spline file and which cause problems.

#6 Updated by Lynn Garren about 4 years ago

I've installed genie_xsec v2_8_6a on /grid/fermiapp/products/larsoft for testing.

#7 Updated by Robert Hatcher about 4 years ago

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

The following commands seemed to get further than previously:

ssh lbnegpvm01.fnal.gov
source /grid/fermiapp/lbne/software/setup_lbne.sh
setup lbnecode v04_08_01 -q debug:e7
setup genie_xsec v2_8_6a -q default   # override previous setup w/ new version

lar -c prodgenie_lbne35t.fcl

Previously this gave an error with a few minutes, now it has been running for over an hour. I presume it is now spending time in Geant4. I think I'll declare this as "resolved"

#8 Updated by Lynn Garren almost 4 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF