8000 1776 implementation of the bic attenuated hits by mhkim-anl · Pull Request #1783 · eic/EICrecon · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

1776 implementation of the bic attenuated hits #1783

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 84 commits into
base: main
Choose a base branch
from

Conversation

mhkim-anl
Copy link
Contributor
@mhkim-anl mhkim-anl commented Apr 5, 2025

Briefly, what does this PR introduce?

This PR adds new factory, output, plugin, algorithm for

  1. Regroup the SimCalorimeterHit by primary MC particle.
  2. Merge the SimCalorimeterHit with respect to a common quantity, e.g., same z-segmentation.
  3. Attenuate the energy of the SimCalorimeterHit.
  4. Store the processed SimCalorimeterHit and corresponding CaloHitContribution in the output.

For detectors that don't need 2. or 3., is_merge and is_attenuation can be used to include or omit them. Because the algorithm has multiple functions for SimCalorimeterHit, we named it SimCalorimeterHitProcessor.

The Barrel Imaging Calorimeter (BIC) will use all the above three functions. Therefore, the followings have been added or updated accordingly.

  • src/factories/calorimetry/SimCalorimeterHitProcessor_factory.h

  • src/services/io/podio/JEventProcessorPODIO.cc
    EcalBarrelScFiPAttenuatedHits (for readout at p-going side), EcalBarrelScFiNAttenuatedHits (for readout at e-going side), EcalBarrelScFiPAttenuatedHitContributions, and EcalBarrelScFiNAttenuatedHitContributions were added.

  • src/detectors/BEMC/BEMC.cc
    Constants and plugins for EcalBarrelScFiPAttenuatedHits, EcalBarrelScFiNAttenuatedHits, EcalBarrelScFiPAttenuatedHitContributions, and EcalBarrelScFiNAttenuatedHitContributions were added.

  • src/algorithms/calorimetry/SimCalorimeterHitProcessorConfig.h

  • src/algorithms/calorimetry/SimCalorimeterHitProcessor.h

  • src/algorithms/calorimetry/SimCalorimeterHitProcessor.cc

Two types of the energy distributions below were compared to cross-check the new algorithm and they showed the same distributions.

  1. Analyze an edm4hep file directly using a standalone code.
  2. Analyze the eicrecon file that was generated from the edm4hep through EICrecon that includes this PR.

What kind of change does this PR introduce?

Please check if this PR fulfills the following:

  • Tests for the changes have been added
  • Documentation has been added / updated
  • Changes have been communicated to collaborators

Does this PR introduce breaking changes? What changes might users need to make to their code?

No

Does this PR change default behavior?

No

"EcalBarrelScFiPAttenuatedHits" (readout at p-going side) and "EcalBarrelScFiNAttenuatedHits" (readout at e-going side) were added.
Constants and plugins for "EcalBarrelScFiPAttenuatedHits" and "EcalBarrelScFiNAttenuatedHits" were added.
1. Regroup the "SimCalorimeterHit"s by primary "MCParticle".
2. Add up the "SimCalorimeterHit"s if they have the same z-segmentation.
3. Attenuate the energy of the "SimCalorimeterHit"s.
@github-actions github-actions bot added topic: calorimetry relates to calorimetry topic: barrel labels Apr 5, 2025
@wdconinc
Copy link
Contributor
wdconinc commented Apr 5, 2025

Can you remove the duplicate files at the project top level please?

Copy link
Contributor
github-actions bot commented Apr 5, 2025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implementation of the BIC attenuated hits
6 participants
0