Double_t et = part->Energy() * TMath::Sin(part->Theta()) + particleMassPart;
- if(code == fgGammaCode || code == fgPi0Code || code == fgEtaCode)
+ if(code == fgGammaCode || code == fgPi0Code || code == fgEtaCode || code==fgOmega0Code || code==fgEPlusCode || code==fgEMinusCode)
{
if(fSelector->CutGeometricalAcceptance(*part) )
fGammaEnergyAdded = GetGammaContribution(fNeutralMultiplicity);
fHistGammaEnergyAdded->Fill(fGammaEnergyAdded, fNeutralMultiplicity);
- Double_t removedEnergy = GetChargedContribution(fNeutralMultiplicity) + GetNeutralContribution(fNeutralMultiplicity) + GetGammaContribution(fNeutralMultiplicity) + GetSecondaryContribution(fNeutralMultiplicity);
+ Double_t removedEnergy = GetChargedContribution(cent) + GetNeutralContribution(cent) + GetGammaContribution(cent) + GetSecondaryContribution(cent);//fNeutralMultiplicity
fHistRemovedEnergy->Fill(removedEnergy);
fTotNeutralEtAcc = fTotNeutralEt;
fHistTotAllRawEtEffCorr->Fill(fTotAllRawEtEffCorr,cent);
//cout<<"fTotAllRawEtEffCorr "<<fTotAllRawEtEffCorr<<" fTotAllRawEt "<<fTotAllRawEt<<" fTotRawEtEffCorr "<<fTotRawEtEffCorr<<"("<<fTotNeutralEt<<")"<<" fTotRawEt "<<fTotRawEt<<endl;
//cout<<"uncorr "<<uncorrEt<<" raw "<<nominalRawEt<<" tot raw "<<fTotNeutralEt;
- fTotNeutralEt = fGeomCorrection * fEMinCorrection * (fTotNeutralEt - removedEnergy);
+ fTotNeutralEt = (fTotNeutralEt - removedEnergy)/GetMinEtCorrection(cent);
//cout<<" tot corr "<<fTotNeutralEt<<endl;
fTotEt = fTotChargedEt + fTotNeutralEt;
// Fill the histograms...0
{
//fNeutronCorrection = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
for(int i=0;i<20;i++){
+ fMinEtCorrection[i] = 0.0;
fNeutronCorrection[i] = 0.0;
fHadronCorrection[i] = 0.0;
fKaonCorrection[i] = 0.0;
,fMeanSecondary(meanSecondary)
{
for(int i=0;i<20;i++){
+ fMinEtCorrection[i] = 0.0;
fNeutronCorrection[i] = 0.0;
fHadronCorrection[i] = 0.0;
fKaonCorrection[i] = 0.0;
{
for(int i=0;i<20;i++){
+ fMinEtCorrection[i] = obj.fMinEtCorrection[i];
fNeutronCorrection[i] = obj.fNeutronCorrection[i];
fHadronCorrection[i] = obj.fHadronCorrection[i];
fKaonCorrection[i] = obj.fKaonCorrection[i];
*fRecoEff = recoEff;
}
+ void SetMinEtCorrection(Int_t cb, Double_t val){fMinEtCorrection[cb] = val;}
void SetNeutronCorrection(Int_t cb, Double_t val){fNeutronCorrection[cb] = val;}
void SetHadronCorrection(Int_t cb, Double_t val){fHadronCorrection[cb] = val;}
void SetKaonCorrection(Int_t cb, Double_t val){fKaonCorrection[cb] = val;}
void SetSecondaryCorrection(Int_t cb, Double_t val){fSecondaryCorrection[cb] = val;}
+ Double_t GetMinEtCorrection(Int_t cb){if(cb>=0 && cb <20){return fMinEtCorrection[cb];}else{return 0.0;}}
Double_t GetNeutronCorrection(Int_t cb){if(cb>=0 && cb <20){return fNeutronCorrection[cb];}else{return 0.0;}}
Double_t GetHadronCorrection(Int_t cb){if(cb>=0 && cb <20){return fHadronCorrection[cb];}else{return 0.0;}}
Double_t GetKaonCorrection(Int_t cb){if(cb>=0 && cb <20){return fKaonCorrection[cb];}else{return 0.0;}}
// Mean deposited energy from secondaries
Double_t fMeanSecondary;
+ Double_t fMinEtCorrection[20];//NeutronCorrection
Double_t fNeutronCorrection[20];//NeutronCorrection
Double_t fHadronCorrection[20];//NeutronCorrection
Double_t fKaonCorrection[20];//NeutronCorrection