46 fNumberOfCaloClusters(0),
47 fNumberOfPHOSCells(0),
48 fNumberOfEMCALCells(0),
50 fNCaloClustersCumul(0),
65 fNumberOfCaloClusters(0),
66 fNumberOfPHOSCells(0),
67 fNumberOfEMCALCells(0),
69 fNCaloClustersCumul(0),
135 Short_t phosPos = 0, emcalPos = 0;
136 Int_t firstPHOSEvent = kTRUE;
137 Int_t firstEMCALEvent = kTRUE;
151 firstPHOSEvent=kFALSE;
155 Int_t ncells =
event->GetPHOSCells()->GetNumberOfCells() ;
156 for (Int_t icell = 0; icell < ncells; icell++) {
174 firstEMCALEvent=kFALSE;
178 for (Int_t icell = 0; icell < ncells; icell++) {
290 Int_t nentries = vertices->GetEntriesFast();
291 Double_t
sum[3]={0.,0.,0.};
292 Double_t sumsigma[6]={0.,0.,0.,0.,0.,0.};
295 for(Int_t ivtx = 0; ivtx < nentries; ivtx++){
297 Double_t covariance[6];
301 if(TMath::Abs(covariance[0])<1.e-13) {
304 sum[0]+=vtxPos[0]*(1./covariance[0]);
305 sumsigma[0]+=(1./covariance[0]);
307 if(TMath::Abs(covariance[2])<1.e-13) {
310 sum[1]+=vtxPos[1]*(1./covariance[2]);
311 sumsigma[2]+=(1./covariance[2]);
313 if(TMath::Abs(covariance[5])<1.e-13) {
316 sum[2]+=vtxPos[2]*(1./covariance[5]);
317 sumsigma[5]+=(1./covariance[5]);
319 if(TMath::Abs(covariance[1])<1.e-13) {
322 sumsigma[1]+=(1./covariance[1]);
324 if(TMath::Abs(covariance[3])<1.e-13) {
327 sumsigma[3]+=(1./covariance[3]);
329 if(TMath::Abs(covariance[4])<1.e-13) {
332 sumsigma[4]+=(1./covariance[4]);
338 for(Int_t i=0;i<3;i++){
339 if(TMath::Abs(sumsigma[i])<1.e-13)
continue;
340 pos[i]=sum[i]/sumsigma[i];
342 for(Int_t i2=0;i2<3;i2++){
343 if(TMath::Abs(sumsigma[i2])<1.e-13) {sig[i2]=0.;
continue;}
344 sig[i2]=1./sumsigma[i2];
353 if (
fEventList.GetEntries() == 0)
return -999.;
virtual const AliVVertex * GetPrimaryVertex() const
Int_t * fNEMCALCellsCumul
Cumulant.
virtual Int_t EventIndexForPHOSCell(Int_t icell) const
virtual AliVCaloCells * GetPHOSCells() const
Int_t fNEvents
List of Events.
virtual Short_t GetCellNumber(Short_t pos) const =0
Int_t fNumberOfCaloClusters
Total number of tracks.
virtual Bool_t SetCell(Short_t pos, Short_t cellNumber, Double_t amplitude, Double_t time, Int_t mclabel=-1, Double_t efrac=0, Bool_t isHG=kTRUE)=0
virtual Double_t GetMagneticField() const =0
virtual Short_t GetNumberOfCells() const =0
AliVCaloCells * fPHOSCells
Cumulant.
const AliVVertex * GetVertexOfEvent(Int_t i) const
Virtual class for calorimeter cell data handling.
virtual void AddEvent(AliVEvent *evt)
virtual void GetCovarianceMatrix(Double_t covmatrix[6]) const =0
Int_t * fNCaloClustersCumul
Cumulant.
Virtual class for calorimeter cluster data handling.
const AliVVertex * GetEventVertex(Int_t i) const
virtual AliVCluster * GetCaloCluster(Int_t) const
virtual Int_t GetNContributors() const =0
virtual Int_t GetMCLabel(Short_t pos) const =0
AliVCaloCells * fEMCALCells
array ofPHOS cells
virtual AliVParticle * GetTrack(Int_t i) const =0
virtual EDataLayoutType GetDataLayoutType() const
virtual Double_t GetMagneticField() const
virtual Double_t GetAmplitude(Short_t pos) const =0
Int_t * fNPHOSCellsCumul
Cumulant.
Int_t * fNTracksCumul
Total number of EMCAL Cells.
virtual AliVCaloCells * CopyCaloCells(Bool_t all) const =0
virtual void GetXYZ(Double_t position[3]) const =0
virtual Int_t EventIndexForEMCALCell(Int_t icell) const
Int_t fNumberOfTracks
Number of Events.
Int_t fNumberOfPHOSCells
Total number of calo clusters.
AliVEvent & operator=(const AliVEvent &vEvnt)
virtual Double_t GetTime(Short_t pos) const =0
#define AliFatal(message)
virtual Int_t EventIndex(Int_t itrack) const
virtual void SetType(Char_t ttype)=0
virtual AliVParticle * GetTrack(Int_t i) const
virtual void DeleteContainer()=0
virtual Double_t GetEFraction(Short_t pos) const =0
virtual AliVCluster * GetCaloCluster(Int_t i) const
virtual Bool_t ComputeVtx(const TObjArray *vertices, Double_t *pos, Double_t *sig, Int_t *nContributors)
virtual Int_t EventIndexForCaloCluster(Int_t iclu) const
AliMixedEvent & operator=(const AliMixedEvent &vEvnt)
virtual AliVCaloCells * GetEMCALCells() const
Int_t fNumberOfEMCALCells
Total number of PHOS Cells.
virtual void CreateContainer(Short_t nCells)=0