34 fEMCALFiducialCut(0), fDCALFiducialCut(0), fPHOSFiducialCut(0), fCTSFiducialCut(0),
35 fCTSFidCutMinEta(0x0), fCTSFidCutMinPhi(0x0), fCTSFidCutMaxEta(0x0), fCTSFidCutMaxPhi(0x0),
36 fEMCALFidCutMinEta(0x0),fEMCALFidCutMinPhi(0x0),fEMCALFidCutMaxEta(0x0), fEMCALFidCutMaxPhi(0x0),
37 fPHOSFidCutMinEta(0x0), fPHOSFidCutMinPhi(0x0), fPHOSFidCutMaxEta(0x0), fPHOSFidCutMaxPhi(0x0),
38 fDCALFidCutMinEta(0x0), fDCALFidCutMinPhi(0x0), fDCALFidCutMaxEta(0x0), fDCALFidCutMaxPhi(0x0)
110 AliFatal(Form(
"Detector < %d > not known!", det));
126 const TArrayF*
phimin,
const TArrayF* phimax,
130 if(phi < 0) phi+=TMath::TwoPi() ;
131 phi*=TMath::RadToDeg();
135 Int_t netaregions = etamax->GetSize();
136 Int_t nphiregions = phimax->GetSize();
138 if ( netaregions != etamin->GetSize() || nphiregions != phimin->GetSize() )
139 AliWarning(Form(
"Wrong number of fiducial cut regions: netamax %d != netamin %d; nphimax %d != nphimin %d\n",
140 netaregions, etamin->GetSize(), nphiregions, phimin->GetSize()));
148 if(netaregions == nphiregions)
150 for(
Int_t iRegion = 0; iRegion < netaregions; iRegion++)
157 if ( eta > etamin->GetAt(iRegion) && eta < etamax->GetAt(iRegion) &&
158 phi > phimin->GetAt(iRegion) && phi < phimax->GetAt(iRegion) )
171 Bool_t bInEtaFidCut = kFALSE;
172 for(
Int_t ieta = 0; ieta < netaregions; ieta++)
174 if(eta > etamin->GetAt(ieta) && eta < etamax->GetAt(ieta)) bInEtaFidCut = kTRUE;
182 Bool_t bInPhiFidCut = kFALSE;
183 for(
Int_t iphi = 0; iphi < nphiregions; iphi++)
185 if ( phi > phimin->GetAt(iphi) && phi < phimax->GetAt(iphi) ) bInPhiFidCut = kTRUE ;
279 printf(
"***** Print: %s %s ******\n", GetName(), GetTitle() ) ;
285 printf(
">> CTS Fiducial regions : phi %d eta %d\n", netaregions, nphiregions) ;
286 for(
Int_t ieta = 0; ieta < netaregions; ieta++)
288 for(
Int_t iphi = 0; iphi < nphiregions; iphi++)
291 else printf(
">>No fiducial cuts in CTS\n");
297 printf(
">>EMCAL Fiducial regions : phi %d eta %d\n", netaregions, nphiregions) ;
298 for(
Int_t ieta = 0; ieta < netaregions; ieta++)
300 for(
Int_t iphi = 0; iphi < nphiregions; iphi++)
303 else printf(
">>No fiducial cuts in EMCAL\n");
309 printf(
">>PHOS Fiducial regions : phi %d eta %d\n", netaregions, nphiregions) ;
310 for(
Int_t ieta = 0; ieta < netaregions; ieta++)
312 for(
Int_t iphi = 0; iphi < nphiregions; iphi++)
315 else printf(
">>No fiducial cuts in PHOS\n");
321 printf(
">>DCAL Fiducial regions : phi %d eta %d\n", netaregions, nphiregions) ;
322 for(
Int_t ieta = 0; ieta < netaregions; ieta++)
324 for(
Int_t iphi = 0; iphi < nphiregions; iphi++)
327 else printf(
">>No fiducial cuts in DCAL\n");
TArrayF * fEMCALFidCutMinPhi
Take particles in EMCAL with phi > fEMCALFidCutMinPhi.
void SetSimpleCTSFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
TArrayF * fEMCALFidCutMaxPhi
Take particles in EMCAL with phi > fEMCALFidCutMaxPhi.
void InitParameters()
Initialize the parameters.
void SetSimpleEMCALFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
Bool_t fCTSFiducialCut
Apply fiducial cuts to CTS tracks.
Bool_t fEMCALFiducialCut
Apply fiducial cuts to EMCAL clusters.
TArrayF * fPHOSFidCutMaxEta
Take particles in PHOS with eta < fPHOSFidCutMaxEta.
void SetSimplePHOSFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
Bool_t fPHOSFiducialCut
Apply fiducial cuts to PHOS clusters.
TArrayF * fDCALFidCutMinEta
Take particles in DCAL with eta > fDCALFidCutMinEta.
TArrayF * fDCALFidCutMaxPhi
Take particles in DCAL with phi > fDCALFidCutMaxPhi.
TArrayF * fCTSFidCutMinPhi
Take particles in CTS with phi > fCTSFidCutMinPhi.
virtual ~AliFiducialCut()
Destructor.
TArrayF * fPHOSFidCutMinPhi
Take particles in PHOS with phi > fPHOSFidCutMinPhi.
void Print(const Option_t *opt) const
Print some relevant parameters set.
Bool_t IsInFiducialCut(Float_t eta, Float_t phi, Int_t det) const
Bool_t CheckFiducialRegion(Float_t eta, Float_t phi, const TArrayF *minphi, const TArrayF *maxphi, const TArrayF *mineta, const TArrayF *maxeta) const
TArrayF * fCTSFidCutMaxPhi
Take particles in CTS with phi > fCTSFidCutMaxPhi.
TArrayF * fCTSFidCutMaxEta
Take particles in CTS with eta < fCTSFidCutMaxEta.
TArrayF * fPHOSFidCutMinEta
Take particles in PHOS with eta > fPHOSFidCutMinEta.
TArrayF * fPHOSFidCutMaxPhi
Take particles in PHOS with phi > fPHOSFidCutMaxPhi.
void SetDCALFiducialCut(Float_t etaminFull, Float_t etamaxFull, Float_t phiminFull, Float_t phimaxFull, Float_t etaminThird, Float_t etamaxThird, Float_t phiminThird, Float_t phimaxThird)
TArrayF * fEMCALFidCutMinEta
Take particles in EMCAL with eta > fEMCALFidCutMinEta.
TArrayF * fCTSFidCutMinEta
Take particles in CTS with eta > fCTSFidCutMinEta.
void SetSimpleDCALFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
TArrayF * fDCALFidCutMaxEta
Take particles in DCAL with eta < fDCALFidCutMaxEta.
Bool_t fDCALFiducialCut
Apply fiducial cuts to DCAL clusters.
TArrayF * fDCALFidCutMinPhi
Take particles in DCAL with phi > fDCALFidCutMinPhi.
Store the acceptance cuts for clusters and tracks or particle objects.
TArrayF * fEMCALFidCutMaxEta
Take particles in EMCAL with eta < fEMCALFidCutMaxEta.