-
Notifications
You must be signed in to change notification settings - Fork 256
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
ATO-525,ATO-496 - addig qptTgl correction to slove dEdx splitting at pt<0.5 GeV #1319
base: master
Are you sure you want to change the base?
Conversation
cf55008: approval required: 1 of @ktf (Giulio Eulisse), @shahor02 (Ruben Shahoyan), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @davidrohr (David Rohr) Comment with |
I made code modification. Testing results step by step now. |
cde7ecf: approval required: 1 of @shahor02 (Ruben Shahoyan), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @davidrohr (David Rohr), @miranov25 (Marian Ivanov); 1 of @ktf (Giulio Eulisse), @shahor02 (Ruben Shahoyan), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @davidrohr (David Rohr) Comment with |
2507d0e: approval required: 1 of @shahor02 (Ruben Shahoyan), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @davidrohr (David Rohr), @miranov25 (Marian Ivanov); 1 of @ktf (Giulio Eulisse), @shahor02 (Ruben Shahoyan), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @davidrohr (David Rohr) Comment with |
Hello @miranov25 , @wiechula This is still not merged. Do we need it for the new corrections? Is this relevant only for 15o, so not urgent? Do you plan to do more testing? Chiara |
Hello @wiechula Did you have time to check the code, or should I commissioned application and reading part?
Marian |
0732116: approval required: 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov); 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @qgp (Jochen Klein), @pzhristov (Peter Hristov), @sawenzel (Sandro Christian Wenzel) Comment with |
+test |
0732116: testing approved: will not be automatically merged; starting testing. If testing succeeds, merging will require further approval from 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov); 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @qgp (Jochen Klein), @pzhristov (Peter Hristov), @sawenzel (Sandro Christian Wenzel) |
0732116: tests OK, approval required for merging: 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov); 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @qgp (Jochen Klein), @pzhristov (Peter Hristov), @sawenzel (Sandro Christian Wenzel) Comment with |
Error while checking build/AliRoot/release for 0732116 at 2021-04-11 16:40:
Full log here. |
69e501e: approval required: 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov); 1 of @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @qgp (Jochen Klein), @pzhristov (Peter Hristov), @sawenzel (Sandro Christian Wenzel) Comment with |
…pt<0.5 GeV First version
in case above upper bound -statistic get lost
in case above upper bound -statistic get lost
aa2f9ec: approval required: 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
2640966: approval required: 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
+test |
2640966: testing approved: will not be automatically merged; starting testing. If testing succeeds, merging will require further approval from 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) |
2640966: tests OK, approval required for merging: 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
233e219: approval required: 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
8858b3e: approval required: 1 of @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @shahor02 (Ruben Shahoyan); 1 of @qgp (Jochen Klein), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @davidrohr (David Rohr), @chiarazampolli (Chiara Zampolli), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- There is one problem I see.
- Also, this does not apply the correction, yet as far as I can see, only allows retrieving it.
- Also changes in
AliPIDResponse
will be needed to reflect the changes in the interface here and to be able to switch usage of the qpt correction.
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
Bool_t usePileupCorrection = kFALSE, | ||
Bool_t ratio = kFALSE) const; | ||
Bool_t ratio = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Above you have a different order, first Bool_t useQPtTglCorrection
, then Bool_t ratio
.
5e263cd: approval required: 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan); 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
49e34a1: approval required: 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan); 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
Hello @wiechula I fixed some problems, now I am including modification for the high dEdx correction. Please, do not approve yet. Regards |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only very minor comments.
Still, the modifications in AliPIDResponse need to be done.
@@ -765,7 +773,7 @@ Float_t AliTPCPIDResponse::GetSignalDelta(const AliVTrack* track, | |||
ETPCdEdxSource dedxSource, | |||
Bool_t correctEta, | |||
Bool_t correctMultiplicity, | |||
Bool_t usePileupCorrection /*= kFALSE*/, | |||
Bool_t usePileupCorrection /*= kFALSE*/, Bool_t useQPtTglCorrection, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection /*= kFALSE*/, Bool_t useQPtTglCorrection, | |
Bool_t usePileupCorrection /*= kFALSE*/, | |
Bool_t useQPtTglCorrection, |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
@@ -173,27 +173,27 @@ class AliTPCPIDResponse: public TNamed { | |||
ETPCdEdxSource dedxSource = kdEdxDefault, | |||
Bool_t correctEta = kFALSE, | |||
Bool_t correctMultiplicity = kFALSE, | |||
Bool_t usePileupCorrection = kFALSE) const; | |||
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; | |
Bool_t usePileupCorrection = kFALSE, | |
Bool_t useQPtTglCorrection = kFALSE) const; |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
Double_t GetExpectedSigma( const AliVTrack* track, | ||
AliPID::EParticleType species, | ||
ETPCdEdxSource dedxSource = kdEdxDefault, | ||
Bool_t correctEta = kFALSE, | ||
Bool_t correctMultiplicity = kFALSE, | ||
Bool_t usePileupCorrection = kFALSE) const; | ||
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; | |
Bool_t usePileupCorrection = kFALSE, | |
Bool_t useQPtTglCorrection = kFALSE) const; |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
Float_t GetNumberOfSigmas( const AliVTrack* track, | ||
AliPID::EParticleType species, | ||
ETPCdEdxSource dedxSource = kdEdxDefault, | ||
Bool_t correctEta = kFALSE, | ||
Bool_t correctMultiplicity = kFALSE, | ||
Bool_t usePileupCorrection = kFALSE) const; | ||
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection = kFALSE, Bool_t useQPtTglCorrection = kFALSE) const; | |
Bool_t usePileupCorrection = kFALSE, | |
Bool_t useQPtTglCorrection = kFALSE) const; |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
|
||
Float_t GetSignalDelta( const AliVTrack* track, | ||
AliPID::EParticleType species, | ||
ETPCdEdxSource dedxSource = kdEdxDefault, | ||
Bool_t correctEta = kFALSE, | ||
Bool_t correctMultiplicity = kFALSE, | ||
Bool_t usePileupCorrection = kFALSE, | ||
Bool_t ratio = kFALSE) const; | ||
Bool_t useQPtTglCorrection = kFALSE, Bool_t ratio = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t useQPtTglCorrection = kFALSE, Bool_t ratio = kFALSE) const; | |
Bool_t useQPtTglCorrection = kFALSE, | |
Bool_t ratio = kFALSE) const; |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
@@ -318,7 +323,7 @@ class AliTPCPIDResponse: public TNamed { | |||
const TSpline3* responseFunction, | |||
Bool_t correctEta, | |||
Bool_t correctMultiplicity, | |||
Bool_t usePileupCorrection) const; | |||
Bool_t usePileupCorrection, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection, Bool_t useQPtTglCorrection = kFALSE) const; | |
Bool_t usePileupCorrection, | |
Bool_t useQPtTglCorrection = kFALSE) const; |
STEER/STEERBase/AliTPCPIDResponse.h
Outdated
@@ -328,7 +333,7 @@ class AliTPCPIDResponse: public TNamed { | |||
const TSpline3* responseFunction, | |||
Bool_t correctEta, | |||
Bool_t correctMultiplicity, | |||
Bool_t usePileupCorrection) const; | |||
Bool_t usePileupCorrection, Bool_t useQPtTglCorrection = kFALSE) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bool_t usePileupCorrection, Bool_t useQPtTglCorrection = kFALSE) const; | |
Bool_t usePileupCorrection, | |
Bool_t useQPtTglCorrection = kFALSE) const; |
033a34f: approval required: 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan); 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
Hello @wiechula I changed the formatting in header filed and i added static functions to correct momenta and dEdx for energy loss within TPC
|
e140dc5: approval required: 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan); 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
Hello @wiechula I added energy loss correction added. Please do not merge yet. I have to check full chain. |
…loating exception stress test at GSI needed ...
…loating exception code crashed if the BG<0.005 - at very low momenta ... for Mesut code crashed because not check of the momentum range stress/crash test at GSI to RUN
c8238b3: approval required: 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein), @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan); 1 of @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @ktf (Giulio Eulisse), @pzhristov (Peter Hristov), @qgp (Jochen Klein), @chiarazampolli (Chiara Zampolli), @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan) Comment with |
Fixing problem seen in Mesut jobs
|
double AliTPCPIDResponse::GetPtOutHelix(Float_t ptIn, Double_t tgl, Float_t mass, Double_t rIn, Double_t rOut, Int_t type, Float_t bz,Float_t fraction){ | ||
const Float_t kB2C=-0.299792458e-3; | ||
const Float_t kMaxSnp=0.95; | ||
Float_t pin=ptIn*TMath::Sqrt(1+tgl*tgl); | ||
Float_t qPt=1/ptIn; | ||
Float_t bg = pin/mass; | ||
Float_t elossNe = 0.001*0.00156; // page 3 https://www.slac.stanford.edu/pubs/icfa/summer98/paper3/paper3.pdf | ||
Float_t elossAr = 0.001*0.00244; // page 3 https://www.slac.stanford.edu/pubs/icfa/summer98/paper3/paper3.pdf | ||
Float_t dEdx= AliExternalTrackParam::BetheBlochAleph(bg)*fraction; | ||
Double_t e0=TMath::Sqrt(pin*pin+mass*mass); | ||
Float_t eloss=(type==0) ? elossAr:elossNe; | ||
Float_t lengthNorm=TMath::Abs(rOut-rIn)*TMath::Sqrt(1+tgl*tgl); | ||
Float_t C = kB2C*bz*qPt; | ||
if (TMath::Abs(0.5*rIn*C)>1) rIn=2.*kMaxSnp/C; | ||
if (TMath::Abs(0.5*rOut*C)>1) rOut=2.*kMaxSnp/C; | ||
Float_t lIn = 2.*TMath::ASin(0.5*rIn*C)/C; | ||
Float_t lOut = 2.*TMath::ASin((0.5*rOut*C))/C; | ||
lengthNorm=(TMath::Abs(lOut)-TMath::Abs(lIn))*TMath::Sqrt(1+tgl*tgl); | ||
// | ||
Double_t e1=e0-dEdx*eloss*lengthNorm; | ||
if (e1<mass) return 0; | ||
return TMath::Sqrt(e1*e1-mass*mass)/TMath::Sqrt(1+tgl*tgl); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Why mix float and double precision?
- Is double needed? If not I propose to make all float otherwise all double.
- nearly all values can be const.
- Why is lengthNorm overwritten? The first value is not used.
/// \param bz - magnetic field (kGaus) | ||
/// \param nStep - number of steps for Euler integration | ||
/// \return | ||
double AliTPCPIDResponse::dEdxRationR0R1Helix(Float_t ptIn, Float_t tgl, Float_t mass, Double_t rIn0,Float_t rOut0, Double_t rIn1,Float_t rOut1, Int_t type, Float_t bz, Int_t nStep){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also in this function, why mit float and double. Make all variables const which don't change.
/// \param nStep - Euler integration approximation with n steps | ||
/// \param useInnerPt - default kFLASE - used for debugging purposes | ||
/// \return | ||
double AliTPCPIDResponse::dEdxMeanToInHelix(Float_t ptIn, Float_t tgl, Float_t mass, Double_t rIn,Float_t rOut, Int_t type, Float_t bz, Int_t nStep, Float_t scale, Bool_t useInnerPt){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also in this function, why mit float and double. Make all variables const which don't change.
|
2f249b4: approval required: 1 of @miranov25 (Marian Ivanov), @shahor02 (Ruben Shahoyan), @davidrohr (David Rohr), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @qgp (Jochen Klein); 1 of @sawenzel (Sandro Christian Wenzel), @shahor02 (Ruben Shahoyan), @ktf (Giulio Eulisse), @davidrohr (David Rohr), @qgp (Jochen Klein), @jgrosseo (Jan Fiete Grosse-Oetringhaus), @chiarazampolli (Chiara Zampolli), @pzhristov (Peter Hristov) Comment with |
Commit above - check in tree loading (check type of the key using dynamic cast) 2f249b4 |
60d9f46
to
99dc685
Compare
This is first version of the dEdx qPt, tgl correction: