Minutes for LArSoft coordination meeting on May 21, 2019

Present | Lynn Garren, Krzysztof Genser,Robert Hatcher, Alex Himmel, Kyle Knoepfel, Saba Sehrish, Erica Snider, Hans Wenzel|

Remote | Katherine Lato |

Release and Project status report [Erica Snider]

  • 08_20_00 updates to pandora, bug fixes, improvement to OpDet
  • this week, ifdhc update
    • recob::Vertex fix is already in develop
  • migration to Python 3
    • means dropping slf6
    • We need to know if it is supported by experiments, and in what timeframe?
    • LArIAT has alot of Python scripts, who is going to update those. Its experiments’ responsibility.
    • Infrastructure things are already in Python 3, FIFE is pushing for end of summer migration
    • project.py in LArbatch
  • nutools refactoring
    • version tightly coupled with specific versions of Geant4, Genie,
    • re-factor into separate components
    • plan is to have a proposal in the next LCM
    • dedicated discussion on Thursday


  • Need to know from experiments about migration to Python 3
    • end of life for Python 2 in January so we should try no later than end of summer deadline

Survey of module and service usage across LArSoft [Kyle Knoepfel]

  • Survey was sent April 29
  • The main goal is to remove the code no one is using
  • 18 people from multiple experiments responded, comment may not have enough coverage
  • The slide shown had a service with votes: “use” or “remmove”. green color is use it, blue is remove it
  • Questions asked in the survey were: What services do you use, and which ones should be removed?
    • same for filters and analysers
  • AtomicNumberService, ShowerCalibrationGaloreFromPIDService, ShowerCalibrationGaloreScaleService are in larexamples
    • ask why it was marked for removal
  • larreco/Deprecated directory should be removed
  • Anything that has the name cheater in it is used
  • Overall there is an agreement on the 2-step proposal presented, there will be follow-up during the upcoming coordination meetings
  • email will be sent out with the list of services and modules to remove

  • A side announcement: ICARUS will be using some experiments’ (may be DUNE’s) disambiguation code

New features and interface changes [Gianluca Petrillo]

  • In Geant4 wire plane is a box and has thickness, it has wires that are cylinders
    • 2 or 3 wire planes are adjacent to the others
  • if you ask for the position of wires, LArG4 voxel readout was returning the center
    • geo::TPCGeo::PlaneLocation() reports the center of the box
    • where wires are not in the center, in case of Argoneut the wires were on the side
  • consider geo::TPCGeo::PlaneLocation() deprecated; there are better options:
    • geo::PlaneGeo::GetCenter(): less fragile
    • geo::TPCGeo::DistanceToReferencePlane(), geo::PlaneGeo::DriftPoint(),
    • geo::PlaneGeo::DistanceFromPlane(): drift-direction aware
  • Request to officially deprecate it
    • does it make sense right now? provide feature branches with deprecation
  • discussion to clear out the different concepts in readout, simulation etc
  • comment on if utilities are not widely used across all the experiments, then they should not be added to LArSoft

  • Comment by Krzysztof Genser on naming conventions that LArSoft should have one.
  • Geant4 has the naming convention to use G4, so other projects should not use classes named that way. G4Helper e.g. in nutools