if(!xtree){
Printf("%s:%d tree not found in the pyxsec.root",(char*)__FILE__,__LINE__);
}
- xtree->SetBranchAddress("xsection",&xsection);
- xtree->SetBranchAddress("ntrials",&ntrials);
- ftrials = ntrials;
- xtree->GetEntry(0);
+ else{
+ xtree->SetBranchAddress("xsection",&xsection);
+ xtree->SetBranchAddress("ntrials",&ntrials);
+ ftrials = ntrials;
+ xtree->GetEntry(0);
+ }
}
fh1Xsec->Fill("<#sigma>",xsection);
fh1Trials->Fill("#sum{ntrials}",ftrials);
if(fNonStdFile.Length()!=0){
// case that we have an AOD extension we need can fetch the jets from the extended output
AliAODHandler *aodH = dynamic_cast<AliAODHandler*>(AliAnalysisManager::GetAnalysisManager()->GetOutputEventHandler());
- fAODExtension = aodH->GetExtension(fNonStdFile.Data());
+ fAODExtension = (aodH?aodH->GetExtension(fNonStdFile.Data()):0);
if(!fAODExtension){
if(fDebug>1)Printf("AODExtension found for %s",fNonStdFile.Data());
}
if(nOver>0){
TIterator *jetIter = jetsList.MakeIterator();
AliAODJet *tmpJet = (AliAODJet*)(jetIter->Next());
- Float_t pt = tmpJet->Pt();
if(tmpJet){
+ Float_t pt = tmpJet->Pt();
for(int i = 1;i <= fh2NJetsPt[iType]->GetNbinsX();i++){
Float_t ptCut = fh2NJetsPt[iType]->GetXaxis()->GetBinCenter(i);
while(pt<ptCut&&tmpJet){
Int_t iSubJetCounter = 0;
for(Int_t k=0;k<nJets;k++){
AliAODJet *jet = dynamic_cast<AliAODJet*>(aodRecJets->At(k));
+ if(!jet)continue;
fh1Ptjet->Fill(jet->Pt());
Float_t ptsub1=jet->Pt()-bkg1*jet->EffectiveAreaCharged();
Float_t ptsub2=jet->Pt()-bkg2*jet->EffectiveAreaCharged();
if(nRecOver>0){
TIterator *recIter = aodRecJets->MakeIterator();
AliAODJet *tmpRec = (AliAODJet*)(recIter->Next());
- Float_t pt = tmpRec->Pt();
+ Float_t pt = 0;
if(tmpRec){
+ pt = tmpRec->Pt();
for(int i = 1;i <= fh2NRecJetsPt->GetNbinsX();i++){
Float_t ptCut = fh2NRecJetsPt->GetXaxis()->GetBinCenter(i);
while(pt<ptCut&&tmpRec){
if(!tca)return iCount;
for(int it = 0;it < tca->GetEntriesFast();++it){
AliAODMCParticle *part = dynamic_cast<AliAODMCParticle*>(tca->At(it));
+ if(!part)continue;
if(part->Pt()<fMinTrackPt)continue;
if(!part->IsPhysicalPrimary())continue;
if(type == kTrackAODMCAll){
}
Int_t idxj[4];
- TMath::Sort(nRecJets, e, idxj);
+ TMath::Sort(TMath::Min(nRecJets,4), e, idxj);
for(Int_t i = 0; i < nRecJets; i++){
recJets[i] = rJets[idxj[i]];
}
}
Int_t idxj[4];
- TMath::Sort(nRecJets, e, idxj);
+ TMath::Sort(TMath::Min(nRecJets,4), e, idxj);
for(Int_t i = 0; i < nRecJets; i++){
recJets[i] = rJets[idxj[i]];
}
TMath::Sort(nMCtracks, pTMC, idxMC);
- Int_t flagQ[4], flagG[4];
+ Int_t flagQ[4] = {0}, flagG[4] = {0};
for(Int_t iJ = 0; iJ < nRecJets; iJ++){
//flag jet as q/g