OfflineNotesV7: Difference between revisions
Jump to navigation
Jump to search
(→head) |
No edit summary |
||
(25 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
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 [https://github.com/Mu2e/Offline/pull/74 PR 74] Updates to the Trigger-related code | |||
* 12/17/19 [https://github.com/Mu2e/Offline/pull/73 PR 73] Bug fix in legacy module | |||
* 12/17/19 [https://github.com/Mu2e/Offline/pull/72 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 [https://github.com/Mu2e/Offline/pull/71 PR 71] art v3_04_00 and python 3 | |||
==v7_5_8== | |||
* 12/04/19 [https://github.com/Mu2e/Offline/pull/70 PR 70] CORSIKA fcl files and small fixes | |||
* 12/04/19 [https://github.com/Mu2e/Offline/pull/69 PR 69] Turn off verbose info and warnings | |||
* 11/27/19 [https://github.com/Mu2e/Offline/pull/63 PR 63] Improve trigger bit diagnostics | |||
* 11/27/19 [https://github.com/Mu2e/Offline/pull/65 PR 65] Added support for compact CORSIKA binaries (40x smaller files) | |||
* 11/22/19 [https://github.com/Mu2e/Offline/pull/64 PR 64] Improve checking in compression of digi MC truth | |||
==v7_5_7== | |||
* Merge pull requests: | |||
** https://github.com/Mu2e/Offline/pull/51 : Improvements to CORSIKA support | |||
** https://github.com/Mu2e/Offline/pull/57 : Filter code and fcl files for resamply CRY stage 1 output | |||
** https://github.com/Mu2e/Offline/pull/58 : Update an old python script to work with both py2 and py3 | |||
** https://github.com/Mu2e/Offline/pull/52 : Upgraded trigger support | |||
** https://github.com/Mu2e/Offline/pull/54 : Ensemble scripts now work with both py2 and py3 | |||
** https://github.com/Mu2e/Offline/pull/46 : Adding momentum cut in filter to select interesting events in cosmic resampling jobs | |||
** https://github.com/Mu2e/Offline/pull/50 : Improvements to sequential mixing | |||
* Notes on pull requests that appear to be missing | |||
** 49: Pull request put in twice so the second did not make a merge commit because there was no work to do. | |||
** 29, 30: Closed by requestor because more work was needed | |||
** 53, 56: These numbers are issues, not pull requests | |||
** 42, 48: still open at this time | |||
==v7_5_6== | |||
* https://github.com/Mu2e/Offline/pull/35 : Upgrade compiler to gcc v8_2_0 (e19). Several minor changes to fix new warnings reported by this compiler. | |||
==v7_5_5== | |||
* Merge pull requests: | |||
** https://github.com/Mu2e/Offline/pull/35 : Improved CORSIKA support plus some CRY improvements | |||
** https://github.com/Mu2e/Offline/pull/45 : | |||
** https://github.com/Mu2e/Offline/pull/41 : | |||
** https://github.com/Mu2e/Offline/pull/44 : | |||
** https://github.com/Mu2e/Offline/pull/40 : | |||
** https://github.com/Mu2e/Offline/pull/43 : | |||
** https://github.com/Mu2e/Offline/pull/39 : | |||
** https://github.com/Mu2e/Offline/pull/16 : | |||
** https://github.com/Mu2e/Offline/pull/36 : | |||
** https://github.com/Mu2e/Offline/pull/38 : | |||
** https://github.com/Mu2e/Offline/pull/15 : | |||
** https://github.com/Mu2e/Offline/pull/37 : | |||
** https://github.com/Mu2e/Offline/pull/34 : | |||
** https://github.com/Mu2e/Offline/pull/31 : | |||
** https://github.com/Mu2e/Offline/pull/32 : | |||
** https://github.com/Mu2e/Offline/pull/33 : | |||
** https://github.com/Mu2e/Offline/pull/28 : | |||
** https://github.com/Mu2e/Offline/pull/27 : | |||
** https://github.com/Mu2e/Offline/pull/25 : | |||
** https://github.com/Mu2e/Offline/pull/26 : | |||
** https://github.com/Mu2e/Offline/pull/24 : | |||
** https://github.com/Mu2e/Offline/pull/20 : | |||
** https://github.com/Mu2e/Offline/pull/23 : | |||
** https://github.com/Mu2e/Offline/pull/22 : | |||
** https://github.com/Mu2e/Offline/pull/21 : | |||
** https://github.com/Mu2e/Offline/pull/47 : | |||
** https://github.com/Mu2e/Offline/pull/10 : | |||
** https://github.com/Mu2e/Offline/pull/19 : | |||
** https://github.com/Mu2e/Offline/pull/18 : | |||
** https://github.com/Mu2e/Offline/pull/17 : | |||
** https://github.com/Mu2e/Offline/pull/14 : | |||
** https://github.com/Mu2e/Offline/pull/7 : | |||
** https://github.com/Mu2e/Offline/pull/13 : | |||
** https://github.com/Mu2e/Offline/pull/12 : | |||
** https://github.com/Mu2e/Offline/pull/11 : | |||
** https://github.com/Mu2e/Offline/pull/9 : | |||
** https://github.com/Mu2e/Offline/pull/8 : | |||
** https://github.com/Mu2e/Offline/pull/4 : | |||
** https://github.com/Mu2e/Offline/pull/6 : | |||
** https://github.com/Mu2e/Offline/pull/5 : | |||
** https://github.com/Mu2e/Offline/pull/2 : | |||
** https://github.com/Mu2e/Offline/pull/3 : | |||
** https://github.com/Mu2e/Offline/pull/1 : | |||
==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 <code>gen/txt/deps.txt or</code> "scons GDML" which creates <code>gen/gdml/mu2e.gdml</code> | |||
* 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== | |||
* Merged master into the branch art_v3; fixed a trivial conflict; merged back into master (kutschke) | |||
** This captures work, mostly by Lisa Goodenough, to upgrade to art v3. | |||
** There are backwards breaking changes; see | |||
*** https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=25842 | |||
*** https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=26268 | |||
** Remember to do a clean rebuild after you pull to bring in this tag. | |||
** After the merge, I did not test properly and two modules failed the CI build. My best guess is that these two modules were new in master since the previous merge of master into art_v3 branch. | |||
==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== | |||
<ol> | <ol> | ||
<li> TrkCaloHit PID (dnb) </li> | <li> TrkCaloHit PID (dnb) </li> | ||
Line 11: | Line 158: | ||
<li> Add scripts for Ensemble generation (rbonvent) </li> | <li> Add scripts for Ensemble generation (rbonvent) </li> | ||
<li> TrkAna reorganization (aedmonds) </li> | <li> TrkAna reorganization (aedmonds) </li> | ||
<ol> | |||
<li>moved local fit parameters out of "de" branch and into new "deent" branch</li> | |||
<li>now runs on the concept of a "candidate" track collection and any number of "supplement" track collections</li> | |||
<li>added InfoStructHelper and InfoMCStructHelper</li> | |||
<li>added support for RecoQualCollections</li> | |||
<li>fhicl validation</li> | |||
<li>see DocDB-26517 for more details</li> | |||
</ol> | |||
<li> Event Display updates (ehrlich) </li> | <li> Event Display updates (ehrlich) </li> | ||
<li> CRV response updates (ehrlich) </li> | <li> CRV response updates (ehrlich) </li> | ||
Line 21: | Line 176: | ||
<li>refactor Trigger scripts </li> | <li>refactor Trigger scripts </li> | ||
</ul> | </ul> | ||
<li> Changes to fcl files: | |||
<ul> | |||
<li>Prepare the fcl file to run stage 1 beam jobs on ANL HPC nodes (oksuzian) </li> | |||
<li>Prepare the fcl file to process stage 1 CRY jobs in offspill (no background frames mixing) configuration (oksuzian)</li> | |||
</ul> | |||
</li> | |||
</ol> | </ol> | ||
==v7_4_0== | ==v7_4_0== | ||
Line 579: | Line 743: | ||
--ff-only merged branch trackerPatRec from Giani into MDC2018. | --ff-only merged branch trackerPatRec from Giani into MDC2018. | ||
For details see: | For details see: | ||
https://mu2e-docdb.fnal.gov/cgi-bin/ | https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=19348 | ||
https://mu2e-docdb.fnal.gov/cgi-bin/ | https://mu2e-docdb.fnal.gov/cgi-bin/sso/ShowDocument?docid=19390 | ||
6) July 31, 2018 genser | 6) July 31, 2018 genser |
Latest revision as of 16:45, 22 September 2022
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
- Merge pull requests:
- https://github.com/Mu2e/Offline/pull/51 : Improvements to CORSIKA support
- https://github.com/Mu2e/Offline/pull/57 : Filter code and fcl files for resamply CRY stage 1 output
- https://github.com/Mu2e/Offline/pull/58 : Update an old python script to work with both py2 and py3
- https://github.com/Mu2e/Offline/pull/52 : Upgraded trigger support
- https://github.com/Mu2e/Offline/pull/54 : Ensemble scripts now work with both py2 and py3
- https://github.com/Mu2e/Offline/pull/46 : Adding momentum cut in filter to select interesting events in cosmic resampling jobs
- https://github.com/Mu2e/Offline/pull/50 : Improvements to sequential mixing
- Notes on pull requests that appear to be missing
- 49: Pull request put in twice so the second did not make a merge commit because there was no work to do.
- 29, 30: Closed by requestor because more work was needed
- 53, 56: These numbers are issues, not pull requests
- 42, 48: still open at this time
v7_5_6
- https://github.com/Mu2e/Offline/pull/35 : Upgrade compiler to gcc v8_2_0 (e19). Several minor changes to fix new warnings reported by this compiler.
v7_5_5
- Merge pull requests:
- https://github.com/Mu2e/Offline/pull/35 : Improved CORSIKA support plus some CRY improvements
- https://github.com/Mu2e/Offline/pull/45 :
- https://github.com/Mu2e/Offline/pull/41 :
- https://github.com/Mu2e/Offline/pull/44 :
- https://github.com/Mu2e/Offline/pull/40 :
- https://github.com/Mu2e/Offline/pull/43 :
- https://github.com/Mu2e/Offline/pull/39 :
- https://github.com/Mu2e/Offline/pull/16 :
- https://github.com/Mu2e/Offline/pull/36 :
- https://github.com/Mu2e/Offline/pull/38 :
- https://github.com/Mu2e/Offline/pull/15 :
- https://github.com/Mu2e/Offline/pull/37 :
- https://github.com/Mu2e/Offline/pull/34 :
- https://github.com/Mu2e/Offline/pull/31 :
- https://github.com/Mu2e/Offline/pull/32 :
- https://github.com/Mu2e/Offline/pull/33 :
- https://github.com/Mu2e/Offline/pull/28 :
- https://github.com/Mu2e/Offline/pull/27 :
- https://github.com/Mu2e/Offline/pull/25 :
- https://github.com/Mu2e/Offline/pull/26 :
- https://github.com/Mu2e/Offline/pull/24 :
- https://github.com/Mu2e/Offline/pull/20 :
- https://github.com/Mu2e/Offline/pull/23 :
- https://github.com/Mu2e/Offline/pull/22 :
- https://github.com/Mu2e/Offline/pull/21 :
- https://github.com/Mu2e/Offline/pull/47 :
- https://github.com/Mu2e/Offline/pull/10 :
- https://github.com/Mu2e/Offline/pull/19 :
- https://github.com/Mu2e/Offline/pull/18 :
- https://github.com/Mu2e/Offline/pull/17 :
- https://github.com/Mu2e/Offline/pull/14 :
- https://github.com/Mu2e/Offline/pull/7 :
- https://github.com/Mu2e/Offline/pull/13 :
- https://github.com/Mu2e/Offline/pull/12 :
- https://github.com/Mu2e/Offline/pull/11 :
- https://github.com/Mu2e/Offline/pull/9 :
- https://github.com/Mu2e/Offline/pull/8 :
- https://github.com/Mu2e/Offline/pull/4 :
- https://github.com/Mu2e/Offline/pull/6 :
- https://github.com/Mu2e/Offline/pull/5 :
- https://github.com/Mu2e/Offline/pull/2 :
- https://github.com/Mu2e/Offline/pull/3 :
- https://github.com/Mu2e/Offline/pull/1 :
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 createsgen/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
- Merged master into the branch art_v3; fixed a trivial conflict; merged back into master (kutschke)
- This captures work, mostly by Lisa Goodenough, to upgrade to art v3.
- There are backwards breaking changes; see
- Remember to do a clean rebuild after you pull to bring in this tag.
- After the merge, I did not test properly and two modules failed the CI build. My best guess is that these two modules were new in master since the previous merge of master into art_v3 branch.
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
- TrkCaloHit PID (dnb)
- TrkCaloHitPID data product
- TrackPID module
- TrkAna TrkPidInfo struct
- TrkAna MVA training script
- Add scripts for Ensemble generation (rbonvent)
- TrkAna reorganization (aedmonds)
- moved local fit parameters out of "de" branch and into new "deent" branch
- now runs on the concept of a "candidate" track collection and any number of "supplement" track collections
- added InfoStructHelper and InfoMCStructHelper
- added support for RecoQualCollections
- fhicl validation
- see DocDB-26517 for more details
- Event Display updates (ehrlich)
- CRV response updates (ehrlich)
- TrkCaloHit improvements (gianipez)
- G4 updates (genser, pavel)
- Support for python-generated fcl (rlc)
- python build helper
- scons hook in SConstruct
- refactor Trigger scripts
- 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
- 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
- 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
- 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
- Fix calorimeter cluster energy error NAN (echenard)
- Update trigger epilog generation (gianipez)
- Update event display to run on reco output (ehrlich)
- 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
- re-enabled the usage of Geant4 reference physics lists (genser)
- add code for generating and parsing packets and the code that can create artdaq::Fragments for one event directly from digis (kutschke, tomonari)
- proditions updates (rlc)
- add table and prodition for always-read straws
- follow dead channel list when building G4 detector
- 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
- conditions_db (rlc) add shared locks for efficiency in threaded use (far future..)
- 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
- 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
- art_v2_12_01 (rlc) - activate this new art to pick up a fix to the shuffling input module
- 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
- align_db (rlc)
- work to prepare for database-backed tracker alignment
- remove StrawDetails
- remove cd3 numerology
- all numerology now comes from StrawId
- (gandr) don't let buildopts ever modify the base release from a satellite release
- (rlc) use UPS postgres paths, not OS paths
- (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.
- (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).
- (brownd) Add support for production reconstruction. Update TrackAnalysisReco to include full set of analysis information.
v7_3_3
- 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/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>