#include "AliPHOSAnalyze.h"
#include "AliPHOSDigit.h"
#include "AliPHOSSDigitizer.h"
#include "AliPHOSAnalyze.h"
#include "AliPHOSDigit.h"
#include "AliPHOSSDigitizer.h"
#include "AliPHOSLoader.h"
ClassImp(AliPHOSAnalyze)
//____________________________________________________________________________
#include "AliPHOSLoader.h"
ClassImp(AliPHOSAnalyze)
//____________________________________________________________________________
//Draws pimary particles and reconstructed
//digits, RecPoints, RecPartices etc
//for event Nevent in the module Nmod.
//Draws pimary particles and reconstructed
//digits, RecPoints, RecPartices etc
//for event Nevent in the module Nmod.
- Error("DrawRecon", "There is no event %d only %d events available", Nevent, fRunLoader->GetNumberOfEvents() ) ;
+ AliError(Form("There is no event %d only %d events available", Nevent, fRunLoader->GetNumberOfEvents() )) ;
fRunLoader->GetEvent(Nevent);
Int_t nx = phosgeom->GetNPhi() ;
Int_t nz = phosgeom->GetNZ() ;
fRunLoader->GetEvent(Nevent);
Int_t nx = phosgeom->GetNPhi() ;
Int_t nz = phosgeom->GetNZ() ;
recPhot->Delete() ;
recPhot = new TH2F("recPhot","RecParticles with primary Photon",nx,-x,x,nz,-z,z);
recPhot->Delete() ;
recPhot = new TH2F("recPhot","RecParticles with primary Photon",nx,-x,x,nz,-z,z);
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
sdigit = (AliPHOSDigit *) sdigits->At(iSDigit) ;
Int_t relid[4];
phosgeom->AbsToRelNumbering(sdigit->GetId(), relid) ;
sdigit = (AliPHOSDigit *) sdigits->At(iSDigit) ;
Int_t relid[4];
phosgeom->AbsToRelNumbering(sdigit->GetId(), relid) ;
- Float_t x,z ;
- phosgeom->RelPosInModule(relid,x,z);
- AliPHOSSDigitizer* sd = dynamic_cast<AliPHOSSDigitizer*>(gime->SDigitizer());
- Float_t e = sd->Calibrate(sdigit->GetAmp()) ;
+ Float_t xd,zd ;
+ phosgeom->RelPosInModule(relid,xd,zd);
+ Float_t e = sdigit->GetEnergy() ;
- Info("DrawRecon", message.Data(), nsdig[0], nsdig[1], nsdig[2], nsdig[3], nsdig[4] ) ;
+ AliInfo(Form(message.Data(), nsdig[0], nsdig[1], nsdig[2], nsdig[3], nsdig[4] )) ;
digit = (AliPHOSDigit *) digits->At(iDigit) ;
Int_t relid[4];
phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
digit = (AliPHOSDigit *) digits->At(iDigit) ;
Int_t relid[4];
phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
- Float_t x,z ;
- phosgeom->RelPosInModule(relid,x,z) ;
- AliPHOSSDigitizer* sd = dynamic_cast<AliPHOSSDigitizer*>(gime->SDigitizer());
- Float_t e = sd->Calibrate(digit->GetAmp()) ;
+ Float_t xd,zd ;
+ phosgeom->RelPosInModule(relid,xd,zd) ;
+ Float_t e = digit->GetEnergy() ;
- phosgeom->ImpactOnEmc(recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
+ phosgeom->ImpactOnEmc(vtx,recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
Int_t numberofprimaries ;
Int_t * listofprimaries = ((AliPHOSRecPoint*) emcrp->At(emcIndex))->GetPrimaries(numberofprimaries) ;
Int_t index ;
Int_t numberofprimaries ;
Int_t * listofprimaries = ((AliPHOSRecPoint*) emcrp->At(emcIndex))->GetPrimaries(numberofprimaries) ;
Int_t index ;
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primPart->Theta(), primPart->Phi(), moduleNumber, primX, primZ) ;
if(moduleNumberRec == moduleNumber)
distance = TMath::Sqrt((recX-primX)*(recX-primX)+(recZ-primZ)*(recZ-primZ) ) ;
if(minDistance > distance)
if(moduleNumberRec == moduleNumber)
distance = TMath::Sqrt((recX-primX)*(recX-primX)+(recZ-primZ)*(recZ-primZ) ) ;
if(minDistance > distance)
nRecParticles[mevent] = iRecPhot-1 ;
//check, if it is time to calculate invariant mass?
nRecParticles[mevent] = iRecPhot-1 ;
//check, if it is time to calculate invariant mass?
- Error("EnergyResolution", "Event %d, Can't find RecParticles ", ievent) ;
+ AliError(Form("Event %d, Can't find RecParticles ", ievent)) ;
- Error("EnergyResolution", "Event %d, Can't find TrackSegments", ievent) ;
+ AliError(Form("Event %d, Can't find TrackSegments", ievent)) ;
- phosgeom->ImpactOnEmc(recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
+ phosgeom->ImpactOnEmc(vtx,recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
if(primary->GetPdgCode() == 22){
hAllEnergy->Fill(primary->Energy(), recParticle->Energy()) ;
if(recParticle->GetType() == AliPHOSFastRecParticle::kNEUTRALEMFAST){
if(primary->GetPdgCode() == 22){
hAllEnergy->Fill(primary->Energy(), recParticle->Energy()) ;
if(recParticle->GetType() == AliPHOSFastRecParticle::kNEUTRALEMFAST){
- Error("PositionResolution", "Event %d, Can't find RecParticles", ievent) ;
+ AliError(Form("Event %d, Can't find RecParticles", ievent)) ;
- Error("PositionResolution", "Event %d, Can't find TrackSegments", ievent) ;
+ AliError(Form("Event %d, Can't find TrackSegments", ievent)) ;
- Error("PositionResolution", "Event %d, Can't find EmcRecPoints", ievent) ;
+ AliError(Form("Event %d, Can't find EmcRecPoints", ievent)) ;
- phosgeom->ImpactOnEmc(recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
+ phosgeom->ImpactOnEmc(vtx,recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
if(primary->GetPdgCode() == 22){
hAllPosition->Fill(primary->Energy(), minDistance) ;
hAllPositionX->Fill(primary->Energy(), dX) ;
if(primary->GetPdgCode() == 22){
hAllPosition->Fill(primary->Energy(), minDistance) ;
hAllPositionX->Fill(primary->Energy(), dX) ;
// fills spectra of primary photons and several kinds of
// reconstructed particles, so that analyzing them one can
// estimate conatmination, efficiency of registration etc.
// fills spectra of primary photons and several kinds of
// reconstructed particles, so that analyzing them one can
// estimate conatmination, efficiency of registration etc.
- Error("Contamination", "Event %d, Can't find RecParticles", ievent) ;
+ AliError(Form("Event %d, Can't find RecParticles", ievent)) ;
- Error("Contamination", "Event %d, Can't find TrackSegments", ievent) ;
+ AliError(Form("Event %d, Can't find TrackSegments", ievent)) ;
- Error("Contamination", "Event %d, Can't find EmcRecPoints", ievent) ;
+ AliError(Form("Event %d, Can't find EmcRecPoints", ievent)) ;
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
- phosgeom->ImpactOnEmc(recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
+ phosgeom->ImpactOnEmc(vtx,recParticle->Theta(), recParticle->Phi(), moduleNumberRec, recX, recZ) ;
Int_t numberofprimaries ;
Int_t * listofprimaries = ((AliPHOSEmcRecPoint *) emcrp->At(emcIndex))->GetPrimaries(numberofprimaries) ;
Int_t index ;
Int_t numberofprimaries ;
Int_t * listofprimaries = ((AliPHOSEmcRecPoint *) emcrp->At(emcIndex))->GetPrimaries(numberofprimaries) ;
Int_t index ;
- phosgeom->ImpactOnEmc(primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
+ phosgeom->ImpactOnEmc(vtx,primary->Theta(), primary->Phi(), moduleNumber, primX, primZ) ;
counter[2][0], counter[2][1], counter[2][2], counter[2][3], counter[2][4],
counter[3][0], counter[3][1], counter[3][2], counter[3][3], counter[3][4],
counter[0][0], counter[0][1], counter[0][2], counter[0][3], counter[0][4],
counter[2][0], counter[2][1], counter[2][2], counter[2][3], counter[2][4],
counter[3][0], counter[3][1], counter[3][2], counter[3][3], counter[3][4],
counter[0][0], counter[0][1], counter[0][2], counter[0][3], counter[0][4],
counter[5][0], counter[5][1], counter[5][2], counter[5][3], counter[5][4],
counter[6][0], counter[6][1], counter[6][2], counter[6][3], counter[6][4],
counter[7][0], counter[7][1], counter[7][2], counter[7][3], counter[7][4],
counter[5][0], counter[5][1], counter[5][2], counter[5][3], counter[5][4],
counter[6][0], counter[6][1], counter[6][2], counter[6][3], counter[6][4],
counter[7][0], counter[7][1], counter[7][2], counter[7][3], counter[7][4],