-
Notifications
You must be signed in to change notification settings - Fork 54
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
Added scripts for processing PACES data #1008
base: main
Are you sure you want to change the base?
Conversation
a basic version and a more compelx version for gamma-electron angular correlations. Both include functions for energy non-linearity corrections in PACES. GRIFFIN_PACES_Angle_Calc can be used to generate GRIFFIN-PACES angle groups. Theta and Phi measurements for PACES were also updated to the current values in the GetPosition function.
I see a number of issues in this code:
There might be more issues, but those are the more important ones I've noticed. |
Hi Vinzenz |
Static variables do not get destroyed by scope as well. I’m not sure there is a need to move it to the header.
|
@r3dunlop is right, you can just make the corrections a static variable (inside CreateHistograms) or declare them globally (e.g. just above CreateHistograms) and fill them in CreateHistograms. Right now the corrections you have are the same (zero) irregardless of the energy. So it doesn't make any sense to apply the directions the way they are right now. If you meant this to be just an idea for how the corrections could be applied, I would suggest you use GValues to read them from a .val-file. That way anyone using this can make their own .val file with custom non-linearities and run the standard selector with it. It doesn't make sense for us to write a standard selector for PACES if everyone using it has to first change it. Check the GValue class and how it can be used. I think I used them at one point for DESCANT, so you could look at older GRSISort versions and look at the Descant::CorrectedTimeStamp function to see how that can be done. |
Static, not global. Global is bad. Global gives us headaches.
|
This was indeed intended to be a template for applying non-linearity corrections. These corrections are likely to be different for each PACES experiment, so I thought I would just set them to zero for now. It is worth noting that most (if not all) of the experiments using PACES so far have been slightly different (thresholds, change to the MSC table, swapping out detectors etc.). For example, I had to modify the angular correlation script to include only three detectors due to poorer resolution in 2/5 of them, but that may not be the case in the future. So anyway there is something to be said for a separate PACES selector. I can look into using GValues and including the output in Create Histograms. |
Non-linearity is already build into a general detector https://github.com/GRIFFINCollaboration/GRSISort/blob/master/libraries/TGRSIAnalysis/TGRSIDetector/TGRSIDetectorHit.cxx
Just treat it like you would GRIFFIN and it will just work.
|
Added to GRSIProof/ : a basic script ("BasicPACES") and a more complex version ("PACESAngularCorrelation") for gamma-electron angular correlations. Both include functions for energy non-linearity corrections in PACES. "GRIFFIN_PACES_Angle_Calc" can be used to generate GRIFFIN-PACES angle groups for insertion into the PACESAngularCorrelation header file. Theta and Phi measurements for PACES were also updated to the current values in the GetPosition() function of TPaces.