-
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
Making veto readouts work #98
Merged
Merged
Conversation
This file contains 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
…o enhance compatibility with python
for more information, see https://pre-commit.ci
…nto lobis-working-on-veto-readout * origin/lobis-working-on-veto-readout: [pre-commit.ci] auto fixes from pre-commit.com hooks
…to-readout * origin/master: remove unused variable only affect XYZ hits
…to-readout * origin/master: Addressing compilation issue after merge with master Removal of custom typedef any since it is misleading with std::any, replaced by RESTValue
for more information, see https://pre-commit.ci
…nto lobis-working-on-veto-readout * origin/lobis-working-on-veto-readout: [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
DavidDiezIb
approved these changes
Sep 28, 2023
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.
When working on veto readouts I had to make some changes.
The new veto system readout is defined here: https://github.com/iaxo/iaxo-readouts/tree/master/vetos. Additional information can be found in the README.
Previous to this PR, the coordinates are passed to the readout plane/module as simple projections (x,y,z) -> (x,y). This is not general and fails unless the readout is in the appropiate plane. I made modifications to account for the necessary transformation of coordinates. A veto readout has many readout planes (one for each veto) with each plane having a single module and channel.
With the changes in this PR the veto readout works fine. This can be tested using the instructions provided in the link above.
However I think something must have been broken by this changes as the PandaX pipeline is failing. Since this PR required fundamental changes it was hard not to break anything.
Currently the veto reaodut is produced as a separate readout (one for the detector (MM), one for the veto system) but they should be integrated into one. Once we fix the problems introduced by this PR on the detector readout this can be done hopefully without much effort.
In order to distinguish between regular readout channels and veto channels I have added a type "veto" to the veto readout channels. This is carried over to
TRestDetectorSignal
along with another optional field "name" in order to know at a glance which veto volume it corresponds. We could also add a position field which could help in analysis of experimental data.Processing of signals coming from different types of readout channels needs to be different. I modified the
TRestDetectorHitsToSignalProcess
to also compute the light travel delay and attenuation for the vetoes. It automatically looks for the signal type parameter and if "veto" is found, it will not do the regular drift but instead do light attenuation and delay.