Repository navigation
TPC MC monopoles and extended track references - #15993
Open
tubagundem wants to merge 17 commits into
Open
tubagundem wants to merge 17 commits into
tubagundem wants to merge 17 commits into
Conversation
Previous version was configuring O2MonopolePhysics globally which replaced the chord finder on the run G4FieldManager and also called G4Transportation::EnableMa gneticMoment(true), which are botbh global switched. Since NystromRK4 is incompatible with the monopole physics, the G4ClassicalRK4 was used, which I think is wrong, as I wanted to keep the original stepper the VMC macro asks for. Now the monopoles chord finder is built and not installed. In addition some minor things that were raised by Sandro's review and found while rechecking the code: - Now SetMaxstep(1.e10) is not called for monopoles, as that limit belongs to the dri ft volume rather than the track - TPC and ITS ProcessHits look up the monopole PDG code for neutral tracks only (reduction in calls) - Throw fatal in case Monopole Physics is requested but not installed properly The commit, together with the rest has been validated by running with Schwinger pair monopoles + various gD options.
- Register mplIoni through G4PhysicsListHelper. - Move the TPC Bethe-Bloch computation back into the branch that uses it. - Run the ITS monopole PDG lookup only when G4.monopole is set. - Define the monopole particles only when G4.monopole is set. - Make non-positive monopole magnetic charge or mass fatal. - Make a mismatch between G4.monopoleMass and TDatabasePDG fatal. - Warn when the TPC drift field is zero. - Align the species comment with the code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Monopoles: changes from further review
…kinematics The monopole mass of a simulation (G4.monopoleMass) was only known to the simulation itself. Consumers of the output (digitizer, reconstruction MC labels, QC, analysis) took the compiled-in default of 100 GeV through O2DatabasePDG, so MCTrack::GetMass(), GetEnergy(), GetRapidity() and Get4Momentum() were wrong for monopoles of any other mass. - O2HitMerger: apply the G4.* config key-values (they were not applied in the merger process) and write the mass to the MCEventHeader under o2::sim::MonopoleMassHeaderKey when G4.monopole is set. - MCKinematicsReader: take the mass from the header when headers or tracks are loaded and hand it to O2DatabasePDG; warn if kinematics of different masses are read in the same process. - O2DatabasePDG: setMonopoleMass()/getMonopoleMass(); Mass() returns the set mass for the monopole PDG codes. Unset by default, so the simulation itself keeps using TDatabasePDG. Limitations: entries already registered in a TDatabasePDG keep their mass (ROOT has no setter); G4 parameters given through --configFile are not applied in the merger; files produced before this change have no key. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…reading kinematics" This reverts commit dafdd19.
tubagundem
requested review from
davidrohr,
f3sch,
fprino,
jackal1-66,
jotwinow,
kharlov,
mconcas,
mcoquet642,
noferini,
peressounko,
sawenzel,
shahor02 and
wiechula
as code owners
October 21, 2026 14:39
tubagundem
requested review from
a team,
afurs,
andreasmolander and
sahilupadhyaya92
as code owners
October 21, 2026 14:39
Contributor
Author
|
Hi @sawenzel, Since I was testing the extension of the track references with monopoles, I first merged Marco's PR into my branch and then added the extension of track references. Should I make a clean PR with just track references? |
Collaborator
|
@tubagundem : Yes please. One PR == one feature. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR, merges Marco's PR (#15602) and adds an extension of track references to different detectors.