#include "AliHMPIDPid.h"
#include "AliHMPIDParam.h"
#include "AliHMPIDRecon.h"
#include <AliESDtrack.h>
#include <TRandom.h> //Resolution()
AliHMPIDPid::AliHMPIDPid():TNamed("HMPIDrec","HMPIDPid")
{
}
Double_t AliHMPIDPIDResponse::CosTheta(Float_t mom, Int_t species) {
Double_t mass = AliPID::ParticleMass(species);
TMath::Sqrt(mass*mass+pmod*pmod)/(AliHMPIDParam::Instance()->MeanIdxRad()*pmod);
}
Double_t AliHMPIDPIDResponse::Resolution(Double_t thetaCerTh, AliESDtrack *pTrk)
{
AliHMPIDParam *pParam = AliHMPIDParam::Instance();
AliHMPIDRecon rec;
Float_t xRa,yRa,thRa,phRa;
pTrk->GetHMPIDtrk(xRa,yRa,thRa,phRa);
rec.SetTrack(xRa,yRa,thRa,phRa);
Double_t thetaMax = TMath::ACos(1./pParam->MeanIdxRad());
Int_t nPhots = (Int_t)(21.*TMath::Sin(thetaCerTh)*TMath::Sin(thetaCerTh)/(TMath::Sin(thetaMax)*TMath::Sin(thetaMax))+0.01);
Double_t sigmatot = 0;
Int_t nTrks = 20;
for(Int_t iTrk=0;iTrk<nTrks;iTrk++) {
Double_t invSigma = 0;
Int_t nPhotsAcc = 0;
for(Int_t j=0;j<nPhots;j++){
Double_t phi = gRandom->Rndm()*TMath::TwoPi();
TVector2 pos; pos=rec.TracePhot(thetaCerTh,phi);
if(!pParam->IsInside(pos.X(),pos.Y())) continue;
if(pParam->IsInDead(pos.X(),pos.Y())) continue;
Double_t sigma2 = pParam->Sigma2(thRa,phRa,thetaCerTh,phi);
if(sigma2!=0) {
invSigma += 1./sigma2;
nPhotsAcc++;
}
}
if(invSigma!=0) sigmatot += 1./TMath::Sqrt(invSigma);
}
return sigmatot/nTrks;
}
AliHMPIDPIDResponse.cxx:1 AliHMPIDPIDResponse.cxx:2 AliHMPIDPIDResponse.cxx:3 AliHMPIDPIDResponse.cxx:4 AliHMPIDPIDResponse.cxx:5 AliHMPIDPIDResponse.cxx:6 AliHMPIDPIDResponse.cxx:7 AliHMPIDPIDResponse.cxx:8 AliHMPIDPIDResponse.cxx:9 AliHMPIDPIDResponse.cxx:10 AliHMPIDPIDResponse.cxx:11 AliHMPIDPIDResponse.cxx:12 AliHMPIDPIDResponse.cxx:13 AliHMPIDPIDResponse.cxx:14 AliHMPIDPIDResponse.cxx:15 AliHMPIDPIDResponse.cxx:16 AliHMPIDPIDResponse.cxx:17 AliHMPIDPIDResponse.cxx:18 AliHMPIDPIDResponse.cxx:19 AliHMPIDPIDResponse.cxx:20 AliHMPIDPIDResponse.cxx:21 AliHMPIDPIDResponse.cxx:22 AliHMPIDPIDResponse.cxx:23 AliHMPIDPIDResponse.cxx:24 AliHMPIDPIDResponse.cxx:25 AliHMPIDPIDResponse.cxx:26 AliHMPIDPIDResponse.cxx:27 AliHMPIDPIDResponse.cxx:28 AliHMPIDPIDResponse.cxx:29 AliHMPIDPIDResponse.cxx:30 AliHMPIDPIDResponse.cxx:31 AliHMPIDPIDResponse.cxx:32 AliHMPIDPIDResponse.cxx:33 AliHMPIDPIDResponse.cxx:34 AliHMPIDPIDResponse.cxx:35 AliHMPIDPIDResponse.cxx:36 AliHMPIDPIDResponse.cxx:37 AliHMPIDPIDResponse.cxx:38 AliHMPIDPIDResponse.cxx:39 AliHMPIDPIDResponse.cxx:40 AliHMPIDPIDResponse.cxx:41 AliHMPIDPIDResponse.cxx:42 AliHMPIDPIDResponse.cxx:43 AliHMPIDPIDResponse.cxx:44 AliHMPIDPIDResponse.cxx:45 AliHMPIDPIDResponse.cxx:46 AliHMPIDPIDResponse.cxx:47 AliHMPIDPIDResponse.cxx:48 AliHMPIDPIDResponse.cxx:49 AliHMPIDPIDResponse.cxx:50 AliHMPIDPIDResponse.cxx:51 AliHMPIDPIDResponse.cxx:52 AliHMPIDPIDResponse.cxx:53 AliHMPIDPIDResponse.cxx:54 AliHMPIDPIDResponse.cxx:55 AliHMPIDPIDResponse.cxx:56 AliHMPIDPIDResponse.cxx:57 AliHMPIDPIDResponse.cxx:58 AliHMPIDPIDResponse.cxx:59 AliHMPIDPIDResponse.cxx:60 AliHMPIDPIDResponse.cxx:61 AliHMPIDPIDResponse.cxx:62 AliHMPIDPIDResponse.cxx:63 AliHMPIDPIDResponse.cxx:64 AliHMPIDPIDResponse.cxx:65 AliHMPIDPIDResponse.cxx:66 AliHMPIDPIDResponse.cxx:67 AliHMPIDPIDResponse.cxx:68 AliHMPIDPIDResponse.cxx:69 AliHMPIDPIDResponse.cxx:70 AliHMPIDPIDResponse.cxx:71 AliHMPIDPIDResponse.cxx:72 AliHMPIDPIDResponse.cxx:73