-
Notifications
You must be signed in to change notification settings - Fork 4
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
Proposal for Waveform and Raw HGCROC Hit #89
Comments
ToA is already part of the edm4hep::RawCalorimeterHit. ToT we could add in our own extension in edm4eic:: namespace, or even submit that upstream. A different question is how to store waveforms between the simulation-type algorithms. |
Is it? I'm seeing an amplitude field, but not a ToA field...
Either way, I'd also be okay with adding the ToT (and ToA if needed) to our extension or upstream! |
Yeah... I was also wondering about that 😕 The |
The data type looks okay, the only thing is that we will have N samples, when N is settable number. The additional shaper would change a bit the initial SiPM shape for the ADC. The TOA would only fire when it passes the threshold from lower to higher values and the TOT would fire if it passes the threshold from higher to lower values. |
In case it's useful to look at the CMS HGCAL reconstruction, which of course uses the HGCROC, let me post some links here. The code that transforms the RAW digitized data ("digis") into uncalibrated reconstructed hits is here: In particular you can see that The uncalibrated hits are calibrated here: The relevant data formats are here: Unfortunately, I don't yet have much useful information about how digis themselves are obtained. What we can see is that for the moment the digis are "faked" from the corresponding sim data format: Some information about the HGCAL digi format can be gleaned here: I have seen that there is dedicated code used for HGCAL test beams so presumably there is more useful information there, but I haven't had the chance to dig in there yet. |
Awesome! Thanks, guys! This is extremely useful feedback! So for the samples, @novitzky, I assume you're referring to the waveform? One way we could handle setting n samples for that is that the algorithm which produces the waveforms will have N_{samples} as a parameter, so that each waveform coming out of the algorithm has N_{samples} entries sitting in the vector of ADC values. Users could then retrieve the number of samples with Also thanks for sharing these links, @mandrenguyen! These will be really valuable reference points while we're putting together the relevant algorithms! I can definitely see how adding some flags for whether or not a channel was saturated would be useful... For my own understanding, are the OOT variables used only for an out-of-time event? |
One of the items discussed during the July 2024 ePIC Collaboration Meeting was the steps needed to better simulate the HGCROC. One thing identified was the need to make sure we have the data types necessary to capture both the waveform produced by a SiPM as well as the output of the HGCROC.
Describe the solution you'd like
For the waveform, we could make use of
edm4hep::RawTimeSeries
(from here).:But for the HGCROC output, we would need to extend what's already in
edm4hep::RawCalorimeterHit
. For example:Describe alternatives you've considered
One alternate approach could be to save only one of the values from the HGCROC (e.g. amplitude) in
edm4hep::RawCalorimeterHit
The text was updated successfully, but these errors were encountered: