OfflineNotesV7

From Mu2eWiki
Jump to navigation Jump to search

v7 series is frozen. Add new documentation to the page for the current version series.

v07_00_00

  • Last tag before breaking changes in v08_00_00. Base of branch MDC2018 since Jan 30, 2020.
  • 12/20/19 PR 74 Updates to the Trigger-related code
  • 12/17/19 PR 73 Bug fix in legacy module
  • 12/17/19 PR 72 Add dedx plots

v7_6_0

  • Until Jan 30, 2020 this was the base of MDC2018 branch; that was a mistake, now fixed.
  • 12/10/19 PR 71 art v3_04_00 and python 3

v7_5_8

  • 12/04/19 PR 70 CORSIKA fcl files and small fixes
  • 12/04/19 PR 69 Turn off verbose info and warnings
  • 11/27/19 PR 63 Improve trigger bit diagnostics
  • 11/27/19 PR 65 Added support for compact CORSIKA binaries (40x smaller files)
  • 11/22/19 PR 64 Improve checking in compression of digi MC truth

v7_5_7

v7_5_6

v7_5_5

v7_5_4

  • Merged in branch GeomMars2018a. This brings in many Geometry changes, mostly related to the Muon beamline.
    • The default behaviour is unchanged.
    • To get the updated geometry use: Mu2eG4/geom/geom_MARS_2019.txt
    • The changes include:
      • More complete modeling of cable runs for the tracker and the calorimeter
      • Added optical fibers to the cable model
      • Added detail in the model of the cable penetrations in the IFB
      • Updated diameter of the window the IFB that allows photons to reach the MSTM
      • First version of the Hayman target; fins are not segmented but are made of a a reduced density material to give the correct mass
  • Merged offline_dev. Create phony targets such as "scons DEPS" which creates a file of subdirectory dependencies in gen/txt/deps.txt or "scons GDML" which creates gen/gdml/mu2e.gdml
  • Merged in klg_g4work - Krzysztof Genser rewrote PrimaryGeneratorAction::addG4Particle using a more general approach when (re-)creating excited ions (addressing a problem report)
  • Merge in the branch GeomMars2018a
    • This has the work done by Michael MacKenzie and Krzysztof Genser to modify the geometry for Vitaly's heat and radiation does study.
    • The only missing part is the model of the Hayman production target being prepared by Bob Bernsteing.

v7_5_3

  • Upgraded to art v3_03_01.
  • This fixes two known bugs:
    • In MT mode, for shared modules, art called begin/end Run/Subrun once per schedule.
    • SampleInput module incorrectly throws an exception when using drop commands.

v7_5_2

  • Merged in klg_g4work - added infrastructure to support separately controlling the step length in the straw gas. Also added new diagnostics related to step length in straw gas.
  • Last tag with art v3_03_00.

v7_5_1

  • Fixed the two modules that were broken in v7_5_0.
  • This is the first working tag on master that uses art v3.

v7_5_0

v7_4_2

  • This tag is on the final commit on master that builds against art v2.
  • TrkPatRec (dnb)
    • Initialized input values for ZFltLen in seed fit: that function uses those as input as well as output. This addresses

the 'uninitialized variable access' problem Pasha found using valgrind. Note that this does not affect the reconstruction output.

  • RecoDataProducts (dnb)
    • initialize the local flight length of a KalSegment to avoid an uninitialized variable read in KalSeedFit. This caused an

occasional warning message but did not affect the reconstruction output.

  • TrackAnaReco (dnb)
    • added mvaout and mvastat leaves to TrkPid and TrkQual branches
    • moved branchReset so that it didn't carry information between tracks when the same last has >1 track
  • TrkAnaReco (edmonds, DocDB-27364)
    • changed dequal leaf branch names (e.g. dequal.TrkQualDeM --> dequal.TrkQual)
    • fixed VD step bug
    • added fcl files for ensemble datasets
  • TrackPID (dnb)
    • use DeltaE (E-p) instead of E/p as a momentum-independent mu-e discriminant. Update the training.
  • TrkQual
    • added TrkQual weights file for positive tracks and set it as default in prolog for relevant TrackQuality modules
  • CompressDigiMCs (edmonds)
    • fixed bug that was causing duplicated tracker StepPointMCs
    • added a check for this to CompressDigiMCsCheck
    • added a patch module that removes duplicated StepPointMCs
    • see DocDB-20398-v17 p.3-5 for more details

v7_4_1

  1. TrkCaloHit PID (dnb)
    • TrkCaloHitPID data product
    • TrackPID module
    • TrkAna TrkPidInfo struct
    • TrkAna MVA training script
  2. Add scripts for Ensemble generation (rbonvent)
  3. TrkAna reorganization (aedmonds)
    1. moved local fit parameters out of "de" branch and into new "deent" branch
    2. now runs on the concept of a "candidate" track collection and any number of "supplement" track collections
    3. added InfoStructHelper and InfoMCStructHelper
    4. added support for RecoQualCollections
    5. fhicl validation
    6. see DocDB-26517 for more details
  4. Event Display updates (ehrlich)
  5. CRV response updates (ehrlich)
  6. TrkCaloHit improvements (gianipez)
  7. G4 updates (genser, pavel)
  8. Support for python-generated fcl (rlc)
    • python build helper
    • scons hook in SConstruct
    • refactor Trigger scripts
  9. Changes to fcl files:
    • Prepare the fcl file to run stage 1 beam jobs on ANL HPC nodes (oksuzian)
    • Prepare the fcl file to process stage 1 CRY jobs in offspill (no background frames mixing) configuration (oksuzian)


v7_4_0

  1. cleanup of code structure (rlc)
    • partial removal of boost_fix
    • move products in TrackCaloMatching to RecoDataProducts
    • move TrackerConditions/inc/Types.hh to DataProducts/inc/TrkTypes.hh
    • rm Legacy, mucapture, CalPatRec/attic
  2. Fixes to TrkCaloHit (brownd, gianipez)
    • don't apply t0 outlier cuts to TrkCaloHit
    • adjust calorimeter time offset to be consistent with track hits
    • add TrkCaloHits for clusters < 50 MeV
    • weed TrkCaloHits based on DOCA and crystal depth
    • use correct disk coordinate system
  3. Finalize reco payload (brownd, edmonds)
    • add RecoCountSummary for dropped products
    • add reduced collections of precursor objects for calorimeter and CRV
    • add reference maps of various types to connect to precursors
    • update MC filtering to use new products
    • preserve particleID when compressing reco SimParticle collection from digis to facilitate index maps
  4. Fix calorimeter cluster energy error NAN (echenard)
  5. Update trigger epilog generation (gianipez)
  6. Update event display to run on reco output (ehrlich)
  7. Finalize reco production scripts (brownd)
    • rename scripts to be less redundant
    • add explicit scripts for each source
    • add specialized script to deal with CRY production
    • adjust output content to be as consistent as possible between sources
  8. re-enabled the usage of Geant4 reference physics lists (genser)
  9. add code for generating and parsing packets and the code that can create artdaq::Fragments for one event directly from digis (kutschke, tomonari)
  10. proditions updates (rlc)
    • add table and prodition for always-read straws
    • follow dead channel list when building G4 detector
  11. Migrate TrkAna to run on reco output (brownd, edmonds)
    • use KalSeed and KalSeedMC as primary inputs
    • add payload for TriggerResult, RecoCount, etc
    • add branches for primary and generated particles

v7_3_6

  1. conditions_db (rlc) add shared locks for efficiency in threaded use (far future..)
  2. tracker_objects (rlc) Updates to Tracker geometry
    • remove Station class
    • Tracker now hold Panels instead of Planes holding them
    • move straw Tubs calculations back to tracker

v7_3_5

  1. Several updates needed for CRY run at ANL in March 2019.
    • Use the new syntax for minRangeCuts
    • Starting position for tracks is at the top of the HallAir volume.

v7_3_4

  1. art_v2_12_01 (rlc) - activate this new art to pick up a fix to the shuffling input module
  2. cosmic_time (rlc)
    • add CRY MT fcl used at Argonne in Dec
    • add GenerateCosmicTimes module which takes a cosmic generated at t=0 and adds an appropriate time (like muonTimeModule)
    • insert this module at appropriate places
    • remove time options from Daya Bay module and generator files so CRY and Daya Bay both need the module
  3. align_db (rlc)
    • work to prepare for database-backed tracker alignment
    • remove StrawDetails
    • remove cd3 numerology
    • all numerology now comes from StrawId
  4. (gandr) don't let buildopts ever modify the base release from a satellite release
  5. (rlc) use UPS postgres paths, not OS paths
  6. (kutschke) Merged in branch ExtMonMuID from Jackson Waters; this introduces new hardware in the ExtMon area to do muon ID.
    • This introduced a bug in Mu2eG4/src/constructExtMonFNAL.cc, which was fixed by a later commit by Lisa Goodenough.
  7. (kutschke) Merged in branch klg_g4work from Krzysztof Genser. Here are his notes.
    • As a byproduct of my work related to g4 solids and a g4 patch, I added more variants of nestExtrudedSolid (and used more of const&) and added getHep2Vector to SimpleConfig.
    • I also added an MT variant of potSim.fcl (and per Ray based it more on #include of potSim.fcl itself).
  8. (brownd) Add support for production reconstruction. Update TrackAnalysisReco to include full set of analysis information.

v7_3_3

  1. 2/18/19 (rlc) Change all TTracker to Tracker. A user is most likely to be disrupted if they use personal geometry files that contain "ttracker" - these can be updated with: sed -i 's/ttracker/tracker/g' *.txt Also the names of geometry volumes change from "TTracker*" to "Tracker*".
  2. 2/11/19 (rlc)
    • clean up and re-organize several things in preparation for database-based alignment.
    • remove Alignment directory.
    • Create GeneralUtilities HepTransform to hold alignments.


v7_3_2

            Release notes for Mu2e Offline software, v7_3_2
 
 1) 2/11/19 rlc
    merge straw_conditions branch.  This creates Db and Proditions
    service, and make them required for straw reco and track fitting.
    The current default settings are still to take conditions
    from fcl, and not the database itself.


v7_3_1

            Release notes for Mu2e Offline software, v7_3_1
 
 2) Feb 6, 2019 kutscke
    First release of: Filters/src/StepPointFilter_module.cc
    This modules selects events with a minimum number of StepPointMCs
    in the named data product.
 
 1) Feb 5, 2019 kutschke
    STM sensitive detector code
      - The sensitive detector now only looks at the crystals
        rather than the crystals plus support infrastructure
      - The two crystals now have unique G4 copy numbers;
        previously they were both 0.


v7_3_0

            Release notes for Mu2e Offline software, v7_3_0
 
 1) Jan 22, 2019 brownd
     Add functionality intended to support production reconstruction.
     Fix code and scripts for calorimeter cluster time constraint in the Kalman track fit.
     Update configuration and parameters for hit error assignment in TrkPatRec
 2)  Jan 22, 2019 edmonds
     Add module to fill TrkAna trees from KalSeed objects: still in development 
 
 3) Jan 31, 2019 rlc
     move to art v2_12_00, adding shuffling input module
 

v7_2_2

            Release notes for Mu2e Offline software, v7_2_2
 
 6) Jan 22, 2019 kutschke
    Mu2eG4/geom/TransportSolenoid_v04.txt
     - Following advice from Bob Bernstein I modified:
          double pbar.coll1In.rOutRecord = 158.75
       the old value was 200.
     - This was done to avoid a conflict created when the pbar
       absorber in the PS was given a frame;  the VD's that surround
       the absorber used to overlap with the frame.
       This reduces their radius so that fit inside the frame.
 
 5) January 22, 2019, genser
 
    Enabled ShieldingM_MU2ER1, Shielding_MU2ER1, QGSP_BERT_MU2ER1 and
    their _EMZ variants as a replacement for ShieldingM, Shielding,
    QGSP_BERT physics lists plus all the customizations which were done
    in postG4InitializeTasks, to make them compatible with the MT split
    of the work between master and worker threads by inheriting from
    Geant4 reference physics lists and adding Mu2e specific calls
    encapsulated in setMu2eG4ProductionCuts and
    Mu2eG4CustomizationPhysicsConstructor.cc
    Removed obsolete physics lists. Added conditional debug printouts
    while also restructuring how the pset info is passed among functions.
    Fixed setting verbosity of tracking and stepping managers.
    setMuHadLateralDisplacement to true
 
       Mu2eG4/fcl/prolog.fcl
       Mu2eG4/inc/ActionInitialization.hh
       Mu2eG4/inc/Mu2eG4CustomizationPhysicsConstructor.hh
       Mu2eG4/inc/Mu2eG4MasterRunAction.hh
       Mu2eG4/inc/Mu2eG4RunAction.hh
       Mu2eG4/inc/QGSP_BERT_HP_MU2E00.hh
       Mu2eG4/inc/QGSP_BERT_HP_MU2E00.icc
       Mu2eG4/inc/QGSP_BERT_MU2E00.hh
       Mu2eG4/inc/QGSP_BERT_MU2E00.icc
       Mu2eG4/inc/QGSP_BERT_MU2ER1.hh
       Mu2eG4/inc/QGSP_BERT_MU2ER1.icc
       Mu2eG4/inc/Shielding_MU2E00.hh
       Mu2eG4/inc/Shielding_MU2E00.icc
       Mu2eG4/inc/Shielding_MU2E01.hh
       Mu2eG4/inc/Shielding_MU2E01.icc
       Mu2eG4/inc/Shielding_MU2E02.hh
       Mu2eG4/inc/Shielding_MU2E02.icc
       Mu2eG4/inc/Shielding_MU2ER1.hh
       Mu2eG4/inc/Shielding_MU2ER1.icc
       Mu2eG4/inc/postG4InitializeTasks.hh
       Mu2eG4/inc/setMinimumRangeCut.hh
       Mu2eG4/inc/setMu2eG4ProductionCuts.hh
       Mu2eG4/inc/setParticleCut.hh
       Mu2eG4/src/ActionInitialization.cc
       Mu2eG4/src/Mu2eG4CustomizationPhysicsConstructor.cc
       Mu2eG4/src/Mu2eG4MasterRunAction.cc
       Mu2eG4/src/Mu2eG4RunAction.cc
       Mu2eG4/src/Mu2eG4_module.cc
       Mu2eG4/src/Mu2eRecorderProcess.cc
       Mu2eG4/src/TrackingAction.cc
       Mu2eG4/src/checkConfigRelics.cc
       Mu2eG4/src/customizeChargedPionDecay.cc
       Mu2eG4/src/physicsListDecider.cc
       Mu2eG4/src/postG4InitializeTasks.cc
       Mu2eG4/src/setMinimumRangeCut.cc
       Mu2eG4/src/setMu2eG4ProductionCuts.cc
       Mu2eG4/src/setParticleCut.cc
       Mu2eG4/src/toggleProcesses.cc
 
 4) Jan 20, 2019 ehrlich, brownd
    Merged in branch CRVmodel, which contains 
    -reduced size of the CRV lookup tables using the symmetries in 
     all three dimensions
    -new CRV lookup tables were produced with updated material properties 
    -updated CRV SiPM code (changed the probability distribution of 
     photons hitting individual SiPM pixles)
    -higher default value for the SiPM overvoltage
 
 3) Jan 17, 2019 kutschke
    Merged in branch muminus_eplus with additional ring at front of MBS
    to shield the calorimeter from albedo from the MBS.  Many small bug
    fixes from Giani and Pasha.
 
 2) Jan 17, 2019 kutschke
    Mu2eG4/geom/geom_common_newTargPS.txt
     - bug fix on data type of targetPS_nFins was double and needed to be int
 
 1) Jan 15, 2019 kutschke
    Merged in branch pbar_generation.  This picked up
    commits e0397d7c (earliest) through d99f7aa7 (latest).

v7_2_1

            Release notes for Mu2e Offline software, v7_2_1
 3) brownd, song, pavel December 19, 2018
   Updates to physics process generators and production scripts
 2) namtran Dec 11, 2018
   Updates to CRY generator
 1) gianipez Nov 27, 2018
   Updates to trigger filters and CalPatRec
 

v7_2_0

            Release notes for Mu2e Offline software, v7_2_0
 
 5) rlc Nov 21, 2018
 
    art v2_11_05
    mu2e_artdaq_core  v1_02_10
 
 4) rlc Nov 8, 2018
 
    art v2_11_04
    geant v4_10_4_p02a
    mu2e_artdaq_core  v1_02_09
 
 3) Sept 21, 2018 Rob Kutsckhe
    - Changes made by Tomo, comments by Rob
    - Updates in DAQ package for use with
      the updated trigger prototype, which requires
      are art v2_11_01
       - DAQ/src/CaloPacketProducer_module.cc
       - DAQ/src/CrvPacketProducer_module.cc
       - DAQ/src/Mu2eProducer_module.cc
       - DAQ/src/SConscript
       - DAQ/src/TrkPacketProducer_module.cc
       - DAQ/test/PacketProducerTest_RootInput.fcl
 
 2) Sept 21, 2018 Rob Kutsckhe
    GeneralUtilities/inc/csv.h
    GeneralUtilities/inc/csv_original.h
    MCDataProducts/inc/PhysicalVolumeInfo.hh
    RecoDataProducts/src/TrkExtTraj.cc
    TrackerGeom/inc/Panel.hh
      - The new comipiler is pickier about issuing warnings
        about implicit type conversions that might be lossy.
      - Inspect that it is safe to do so and make the type
        conversions explicit
      - For csv.h we had to use a pragma to disable
        the test within a third party header
 
 1) Sept 21, 2018 Rob Kutsckhe
    scripts/build/python/sconstruct_helper.py
    setup.sh
      - Update to use art v2_11_01 and gcc 7
      - Switch from  --std=c++14 to --std=c++17

v7_1_6

            Release notes for Mu2e Offline software, v7_1_6
 	   
 2) rlc Nov 21, 2018
     tag marking last commit before v7_2_0
 
 1) namtran Nov 21 2018
    fix the chatty printout, it is now controllable using cosmicCRY.verbose
 

v7_1_5

            Release notes for Mu2e Offline software, v7_1_5
 	   still under development
 
 8) brownd Nov 15, 2018
    Extend CaloShowerSimFilter functionality.  update scripts to produce Calorimeter cosmics
 7) brownd Nov 12, 2018
    Merge in the muminus_eplus branch into master
 6) kutschke Oct 24, 2018
    Merge in Ralf's changes from branch CRV_tmp.
    These changes remove the MC awareness of the top level reco data product.
 
 5) kutschke Oct 24, 2018
    Removed unnecessary header that was creating a compile-time loop.
       BTrkData/src/TrkCaloHit.cc
       BTrkData/src/TrkStrawHit.cc
 
 4) kutschke Oct 24, 2018
    To break a compile time loop moved
        Doublet.hh and Doublet.cc from RecoDataProducts to BTrkData
 
    Modified the code base to find header file in its new location.
 
 3) kutschke Oct 24, 2018
     a) Moved TwoLinePCA_XYZ and TwoLinePCA from GeneralUtilities to Mu2eUtilties
         - to break compile time loops
     b) Moved XYZVec.hh and Geom.cc from RecoDataProducts to DataProducts
         - I view this class a lowest level object
 
    Modified the code base to find header files in their new locations.
 
 2) youzy Oct 8, 2018 ---based on v7_1_1
     - add position and momentum cuts in /Analyses/src/StepPointMCDumperCompact_module.cc
 1) youzy, wangy Oct 8, 2018 ---based on v7_1_1
     - add AntiProtonGun_module.cc in EventGenerator/src/ based on our work to generate antiproton angular distribution.
 

v7_1_4

            Release notes for Mu2e Offline software, v7_1_4
 
 3) edmonds 5 October 2018
   - add a module that separates out the "calorimeter" and "calorimeterRO" CaloShowerSteps (representing crystal and SiPM steps) out of the compression, which had combined them (Filters/src/SeparatesCaloShowerSteps_module.cc)
   - add a module that checks this separation by plotting histograms of the z-position of the steps (Filters/src/SeparatesCaloShowerStepsCheck_module.cc)
   - this is for DS-cosmic-mixing, which doesn't run the primary generation inline and so runs on the DS-cosmic primary dataset itself
   - the separated collections are not kept so that all datasets have the same output, if you run into a problem that needs the CaloShowerSteps separating, then use the new modules
 2) ehrlich 4 October 2018
   - move loading CRV phtoton tables to constructor to avoid double-loading in multi-run jobs
 1) brownd 2 Octover 2018
   - add scripts for DS-cosmic-mix

v7_1_3

            Release notes for Mu2e Offline software, v7_1_3
 
 5) brownd 1 October 2018
   - add scripts for CeplusEndpoint-mix 
 4) genser  1 October 2018
 
     updated pset level used when Birk's constants are changed
        Mu2eG4/src/Mu2eG4_module.cc
        Mu2eG4/src/setBirksConstant.cc
     added steppingVerbosityLevel
        Mu2eG4/fcl/prolog.fcl
        Mu2eG4/src/Mu2eG4_module.cc
     added modifyEMOption0 to enable changing standard EM MSC Models
     transition energy in geant4 10.4
        Mu2eG4/fcl/prolog.fcl
        Mu2eG4/inc/Mu2eEmStandardPhysics.hh
        Mu2eG4/src/Mu2eEmStandardPhysics.cc
        Mu2eG4/src/physicsListDecider.cc
 3) hsong, edmonds TrkAna updates
    - TrackAnalysis module analyzes both negative and positive tracks as the default
    - TrkParticle can be changed in TrkDiag/fcl/prolog.fcl
    - TrackAnalysis now decides KalmanHitCollections for reconstruction and TrackCaloMatching using desired TrkParticle (previously electrons were hardcoded)
    - TrkAnaDigis ntuple output has 2 directories with a trkana TTree each. (Analysis scripts will have to be updated)
    - trkana TTree branch names were changed to generalize charge
    - TrackCaloMatching is now done for both electrons and positrons
    - TrkDiag/fcl/TrkAnaDigis.fcl and TrkDiag/fcl/TrkAnaDigisCRV.fcl were cleaned up and various renamings were moved to prologs
    - branch names changed to make it charge blind
    - added separate evtwts branch
    - also added PBIWeight module to convert ProtonBunchIntensity to an EventWeight
 2) brownd 9/27/18
    - Fixed minor bug in StrawDigi creation
    - Added config for flat protons and calo-filtered flat gammas
    - Added mc filter for calo clusters
 1) branch muminus_eplus : P.Murat
   1.1 bug fix in RMC/RPC internal conversion generation
       Bob's fix to RMC event weight
   1.2 all spectra parameterized as arrays of (x,y) pairs have x's corresponding to the bin centers
   1.3 fix shape of the RPC photon energy spectrum - wrong plot has been digitized and fit
   1.4 fix use of uninitialized memory in CalPatRec/src/DeltaFinder_module.cc
   1.5 initialize TrkStrawHit::hitRms with a small number to avoid assert's when printing
   1.6 add configs for proton reco to TrackCaloMatching and CalPatRec prolog files

v7_1_2a

            Release notes for Mu2e Offline software, v7_1_2a
 
 4) Sept 21, 2018 Rob Kutschke
    - Tagged as v7_1_2a
    - A tag on art_v2_11_01_branch
    - This tags the version that will be used to run
      a round of cosmic production for Yuri
 
 3) Sept 21, 2018 Rob Kutsckhe
    - Changes made by Tomo, comments by Rob
    - Updates in DAQ package for use with
      the updated trigger prototype, which requires
      are art v2_11_01
       - DAQ/src/CaloPacketProducer_module.cc
       - DAQ/src/CrvPacketProducer_module.cc
       - DAQ/src/Mu2eProducer_module.cc
       - DAQ/src/SConscript
       - DAQ/src/TrkPacketProducer_module.cc
       - DAQ/test/PacketProducerTest_RootInput.fcl
 
 2) Sept 21, 2018 Rob Kutsckhe
    GeneralUtilities/inc/csv.h
    GeneralUtilities/inc/csv_original.h
    MCDataProducts/inc/PhysicalVolumeInfo.hh
    RecoDataProducts/src/TrkExtTraj.cc
    TrackerGeom/inc/Panel.hh
      - The new comipiler is pickier about issuing warnings
        about implicit type conversions that might be lossy.
      - Inspect that it is safe to do so and make the type
        conversions explicit
      - For csv.h we had to use a pragma to disable
        the test within a third party header
 
 1) Sept 21, 2018 Rob Kutsckhe
    scripts/build/python/sconstruct_helper.py
    setup.sh
      - Update to use art v2_11_01 and gcc 7
      - Switch from  --std=c++14 to --std=c++17

v7_1_2

            Release notes for Mu2e Offline software, v7_1_2
 
 4) genser 20 September 2018
 
     Moved "last step" related code from stepping to tracking action
     Removed _preLastStepKE and _nSteps from 
       Mu2eG4/inc/UserTrackInformation.hh
     and the accessors from:
       Mu2eG4/src/UserTrackInformation.cc
     Updated 
       Mu2eG4/src/Mu2eG4UserHelpers.cc
     accordingly. Other files changed:
       Mu2eG4/src/Mu2eG4SteppingAction.cc
       Mu2eG4/src/TrackingAction.cc
 
 3) brownd 19 September 2018
     added database index accessor functions to StrawId
     fixed mixing fraction for Crv neutrons
     added input map for muon lifetime generation
 
 2) edmonds 19 September 2018
    Digi compression
    - fixed bug (see DocDB-20380)
    - added module to check compression consistency (Filters/src/CompressDigiMCsCheck_module.cc)
    - also fixed key <---> SimParticle::_id consistency
    - also keeping all GenParticles for future internal generators
 
 1) genser 12 September 2018
 
    added optional timing printout
       Mu2eG4/src/checkForOverlaps.cc
    enabled selective CRV overalp check
       Mu2eG4/src/constructCRV.cc
       Mu2eG4/test/geom_SurfaceCheck_Select.txt
    enabled use of g4mt buildopts flag:
       Mu2eG4/src/SConscript
       SConstruct
 

v7_1_1

            Release notes for Mu2e Offline software, v7_1_1
 1) brownd 24 Aug. 2018
   - Fix StrawHitFlag validation.  Add production sripts
 2) gianipez 31 Aug. 2018
   - improved RobustHelixFit hit selection criterion and added class Chi2HelixFit for adding the possibility to use chi2 fit in the RobustHelixFinder module

v7_1_0

            Release notes for Mu2e Offline software, v7_1_0
 3) bonventre Aug 22, 2018
   - improve data structures for time jitter in sttraw digi simulation
 2) song (brownd) Aug 21, 2018
   - add scripts for producing pion stops
 1) kutschke Aug 21, 2018
     --ff-only merge the MDC2018 branch at tag v7_0_8.

v7_0_8

            Release notes for Mu2e Offline software, v7_0_8
            This new series includes breaking changes for MDC2018
 
 1) kutschke Aug 21, 2018
     - Merge in recent commits from master
        - valgrid supression file
        - release notes for last commits of the v6_5_7 release notes

v7_0_7

            Release notes for Mu2e Offline software, v7_0_7
            This new series includes breaking changes for MDC2018
 
 1) brownd Aug 20, 2018
   - Fix memory 'leak' in straw digi making, also fixes indexing bug in event window jitter simulation
   - Fix DS-cosmic configuration to include CRV digi making

v7_0_6

            Release notes for Mu2e Offline software, v7_0_6
            This new series includes breaking changes for MDC2018
 
 
 3) brownd Aug 18, 2018
   - Production fcl consolidation and new modes.  Add G4Status filter to primary production
 2) ehrlich Aug 17, 2018
   - Add cosmic ray box around DS
 1) edmonds 
   - Fixes to Digi compression

v7_0_5

            Release notes for Mu2e Offline software, v7_0_5
            This new series includes breaking changes for MDC2018
 11) Jul 2, 2018  Lisa Goodenough 
    - merge branch g4v10-2-p03MT, geant multi-threaded code
 10) Aug 10, 2018 brownd
    - Further consolidation and simplification of primary and mixing fcl
 9) Aug 9, 2018 edmonds
    Completed digi compression
    - StepPOintMCCollections are no longer consolidated into one and are kept separate on the output
    - SimParticleCollections, GenParticleCollections and CaloShowerStepCollections are consolidated into one output collection
      -- compressSimParticleCollection was modified to deal with this
      	-- The old behaviour is still default
 	--  To turn on the new behaviour pass in a SimParticleRemapping*
      -- SimParticles are no longer keyed to their internal ID in SimParticleCollection
    - calorimeterRO CaloShowerSteps are dropped from the event because of the Ptr bug (see DocDB-19477)
    - had to add a few modifier functions to CrvDigiMC, CaloShowerSim and CaloShowerStepRO so that I could remap their Ptrs
 
 8) Aug 2, 2018 kutschke
    Mu2eG4/src/Mu2eWorld.cc
      - After a calo geometry change from Bertrand the simulation stopped
        registering StepPointMCs in the calorimeter.
      - The reason was that the crystals in the front and back disks
        were different logical volumes with the same name.
      - Accessing the logical volumes by:
          G4LogicalVolumeStore::GetVolume(G4String const&)
        always returns the first of the two volumes with the same name.
      - So the sensitive detector handler was never registered with the
        crystals in the second disk.
      - Fixed by using an explicit loop over all logical volumes and
        checking the name to find both G4LogicalVolumes.
   The same inappropriate use of
      G4LogicalVolumeStore::GetVolume(G4String const&)
   was in place for every sensitive detector but it did not hurt us in
   other places because we did not have multiple logical volumes with the
   same name.  I fixed all of these instances.
 
 7) Aug 2, 2018 kutschke
    --ff-only merged branch trackerPatRec from Giani into MDC2018.
    For details see:
     https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=19348
     https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=19390
 
 6) July 31, 2018 genser
    Corrected _visManager in Mu2eG4/src/Mu2eG4_module.cc which changed during MT merge
 
 5) July 20, 2018 brownd
     Consolidate and cleanup fcl in prepreation for primary particle and mixing production
     Rename HitMakers to CommonMC as that is now its purpose
 4) July 19, 2018 kutschke
    EventGenerator/fcl/prolog.fcl
      Commented out the definition of PrimaryProtonGunN
      in the table EventGenerator.producers that defines the full set of
      generators.  The corresponding library is not present in this commit so it
      generates an error at job startup when running EventGenerator/fcl/prolog.fcl.
 
 3) July 18, 2018 kutschke
    Mu2eG4/fcl/g4test_03.fcl
      - Remove the individual configuration of proton time map and muon time map.
        Instead use the definitions in the prolog CommonDigiSim.  This now
        brings in the EventWindowMarker module; it's absence was the cause of the
        original error.
 
 2) July 18, 2018 brownd, bonventre
     Update straw digitization.  This includes:
     - refinements to deal with boundary conditions near the microbunch wrapping
     - introduction of the event window marker and its use in digitization
     - clock distribution jitter
     - random threshold variation within hardware expectations
     - resolution of most of the FIXMEs
 1) July 15, 2018 edmonds, brown
     Filtering and compression for beam flash hits in TrkCal and CRV

v7_0_4

            Release notes for Mu2e Offline software, v7_0_4
            This new series includes breaking changes for MDC2018
 
 3) July 12, 2018 brownd, edmonds, gapon
    Many changes releated to signal generation, mixing, and compression
 
 2) June 22, 2018 knoepfel
 
    Implemented many changes in preparation for upgrading to art 3:
    - updated header dependencies
    - removed as many uses of 'getEngine' as possible
    - removed undesirable/incorrect function-local static objects
    - implemented many 'consumes' statements
    - removed various unnecessary overrides that did nothing
    - removed extraneous whitespace and replaced some tabs with
      whitespaces
 
 
 1) June 20, 2018 edmonds
    - added lossless digi compression for StrawDigiMCs and CrvDigiMCs and tested the TrkAna runs on the result
      - this module creates new StepPointMCCollection, SimParticleCollections and GenParticleCollections for all
      - the new StrawDigiMCs, CrvDigiMCs, SimParticleTimeMaps and PrimaryPtrs are rePtrd to the new collections
      - NB the PtrStepPointMCVectorCollection that is produced by StrawDigisFromStepPointMCs is ignored
    - Filters/src/CompressDigiMCs_module.cc
    - JobConfig/beam/digimix_compress.fcl
    - TrkDiag/fcl/TrkAna_Compressed.fcl

v7_0_3

            Release notes for Mu2e Offline software, v7_0_3
 	   This new series includes breaking changes for MDC2018
 	   This release is intended for background pre-mixing
 	   This release is NOT ready for digi making
 
 3) June 19, 2018 brownd
     - updated production scripts for CRV-concatenation, digi-mixing and simple primary generation
     - cleanup and consoidation of conversion electron generators
     - Limit the proton intensity fluctuations
     - Add a filter on TrkDigiMC
 
 2) June 19, 2018 kutschke
    - Cleaned up things that do not belong in RecoDataProducts
        - files, unnecessary link list items, commented out includes
          that generate false positives on scans for illegal includes
 
 1) June 13, 2018 genser
 
    - added SimParticleAnalyzer_module
 	Analyses/fcl/simParticleAnalyzer.fcl
 	Analyses/src/SimParticleAnalyzer_module.cc

v7_0_2

            Release notes for Mu2e Offline software, v7_0_2
 	   This new series includes breaking changes for MDC2018
 4) June 6, 2018 gandr
    -  Add JobConfig/beam/DS-flash.fcl and supporting code.
 
 
 3) June 6, 2018 gandr
 
    - Per the discussion in today's meeting, added stageOffset()
      information to SimParticle, so that stage info necessary for
      physical volume lookups can be preserved during event mixing.
 
 2) June 6, 2018 genser
 
    - added more control over stepers and their precision parameters
    - added isTrackKilledByFieldPropagator plus related changes
    - changed some Geant4 verbosity controls
         modified:   MCDataProducts/inc/ProcessCode.hh
         modified:   MCDataProducts/inc/StatusG4.hh
         modified:   MCDataProducts/src/StatusG4.cc
         modified:   Mu2eG4/fcl/prolog.fcl
         modified:   Mu2eG4/inc/Mu2eG4UserHelpers.hh
         modified:   Mu2eG4/inc/Mu2eWorld.hh
         modified:   Mu2eG4/inc/TrackingAction.hh
         modified:   Mu2eG4/src/Mu2eG4UserHelpers.cc
         modified:   Mu2eG4/src/Mu2eG4_module.cc
         modified:   Mu2eG4/src/Mu2eWorld.cc
         modified:   Mu2eG4/src/PhysicsProcessInfo.cc
         modified:   Mu2eG4/src/TrackingAction.cc
 
 1) Jun 2, 2018 brownd
     - Make IHEP intensity fluctuation model default.  Commit scripts and data used to fit the model
  

v7_0_1

            Release notes for Mu2e Offline software, v7_0_1
 	   This new series includes breaking changes for MDC2018
 
 5) May 21-25, 2018 brownd
    - updated scripts for stage4 production
 
 4) May 25, 2018 gandr
 
    - Remove obsolete data members from SimParticle.
 
 3) May 18-20, 2018 gandr
 
    - Updates to calorimeter digitization code.  In particular,
      CaloShowerStepROFromShowerStep must support multiple compressed
      shower collections in order to run on mixed events.
 
 2) May 18, 2018 gandr
 
    - GenId cleanup: replace several GenId values for DIO with a single
      dioTail, to be used for signal-like high momentum tracks.
 
      Most of the "bulk hit" processes that are mixed into the "emtpy
      event" background frames, including the bulk DIO spectrum, use
      the StoppedParticleReactionGun generator ID.
 
 1) May 30, 2018 kutschke
     - Removed StrawIndex
     - Lots of follow-on changes
     - See ./removeStrawIndex.txt for details
 
 
 

v7_0_0

            Release notes for Mu2e Offline software, v7_0_0
 	   This new series includes breaking changes for MDC2018
 
 1) brownd May 18, 2018
   Initial tag, containing all the geometry, index, etc. changes for MDC2018.

removeStrawIndex

 This note discusses the removal of StrawIndex and it's replacement
 by StrawId everywhere.
 
 As of May 30, 2018 there is one known outstanding issue.
 I have not tested to see if the DeadStrawList correctly parses
 the lists of dead planes and dead panels.
 
 The remove of StrawIndex triggered the following additional changes:
  1) I reordered the dense array of all straws, held inside the
     TTracker object; none of our code was every supposed to
     depend on this order.  I did not find any that did.
       - old order: within a panel the straws were ordered by
                    one layer and then the other.
       - new order: straws are ordered in increasing radius
                    at their midpoint - ie alternating layers.
                    This is consistent with numbering the scheme
                    used by the tracker hardware project.
 
  2) Removed TrackerCalibrations everywhere. It is replaced
     by the many classes in TrackerConditions.
 
  3) Removed support for all variants of the tracker except
     the most recent.  I did not clean out old tracker
     geometry files - that will be another project.
     ( which will take some care because the new files are
       built as deltas to the old ones ... )
 
 In addition I cleaned up some targets of opportunity:
  4) Removed cvs history comments
  5) Removed large bodies of commented out obsolete code.
  6) Removed unnecessary includes
  7) Rewrote some loops using ranged-for syntax.
  8) Moved some files to Legacy. These make use of StrawIndex
     and I did not have the energy to convert them.
     They will be useful for people who want to ressurect their
     functionality using StrawId.  In many cases these files
     need other maintenance to keep up with other evolutions
     in our code.
 
 Thanks to Pasha for doing the work to remove StrawIndex
 and TrackerCalibrations from the CalPatRec package.
 
 Background:
 
 In the old days there were two identifiers of straws:
   DataProducts/inc/StrawIndex.hh
   DataProducts/inc/StrawId.hh
 
 StrawIndex - a dense identifier 0...(N-1)
              The order was arbitrary and no code should
              depend on the order
 
 StrawId (old style) a tuple-of-ints identifier
    originally: plane, sector( aka panel), layer, straw
    later:      plane, panel, straw
 
 StrawId (new style) a bit mapped uint16_t encoding:
         plane, panel, straw
         This is not a dense identifier but it is
         structured in a way that it convenient
         for writing FPGA code.
 
 With this change, StrawIndex is gone entirely and
 all access to straw information is via the new style
 StrawId.
 
 The key changes are:
 
  1) DataProducts/inc/StrawIndex.hh
     DataProducts/src/classes.h
     DataProducts/src/classes_def.xml
       - removed the .hh file and removed refernences to StrawIndex in the
         two genreflex files.
 
  2) GeometryService/src/TTrackerMaker.cc
      - change the order in which straws are inserted into the big array
      - Remove all use of StrawIndex
      - Lots of cleanup to remove support for obsolete trackers designs.
 
  3) TrackerGeom/inc/Straw.hh
     TrackerGeom/inc/Tracker.hh
     TrackerGeom/src/SConscript
     TrackerGeom/src/Straw.cc
     TTrackerGeom/inc/TTracker.hh
        - Remove all use of StrawIndex, which was only used as a key
          for accessors
        - Each accessor has been replaced by a matched accessor using
          a StrawId ( much of this was in place already ).
 
  4) DataProducts/src/StrawId.cc
     Reading a StrawId from a string now recognizes PlaneIds and PanelIds.
     If a, b, c are integers the formats are:
        StrawId: a_b_c
        PanelId: a_b
        PlaneId: a
     By convention a PanelId is equivalent to the StrawID for straw 0
     in that panel.  Similarly for a PlaneId - it is equivalent to the
     StrawId for straw 0 in panel 0 of that plane.
 
  5) Mu2eG4/src/StrawSD.cc
     From the G4 volume copy numbers, construct a StrawId and
     add this to the StepPointMC as it's volumeId.  Previously
     the code constructed a StrawIndex.
 
   6) Analyses/src/ConvElecHistory_module.cc
      Analyses/src/DIOElecHistory_module.cc
      Mu2eUtilities/inc/BkgElecUtilities.hh
      Mu2eUtilities/inc/ConvElecUtilities.hh
      Mu2eUtilities/src/BkgElecUtilities.cc
      Mu2eUtilities/src/ConvElecUtilities.cc
          - moved to Legacy
 
   7) Mu2eG4/inc/ConstructTTrackerTDR.hh
      Mu2eG4/inc/constructDummyTracker.hh
      Mu2eG4/src/ConstructTTrackerTDR.cc
      Mu2eG4/src/constructDummyTracker.cc
      Mu2eG4/src/constructTTrackerv3.cc
      Mu2eG4/src/constructTTrackerv3Detailed.cc
       - Removed support for obsolete tracker geometries.
 
   8) In many other files, find use of StrawIndex and
      change it to StrawId.  In most cases this was:
       a) diagnostic printout
       b) comparison to see if two objects refer to the same straw
       c) std::map<StrawIndex,T> changed to std::map<StrawId,T>