diff --git a/src/THcAerogel.cxx b/src/THcAerogel.cxx index 44361a959f639f117c86ddeea9062e127b2cf37d..9dec9751bcc30872aca378a609414bf3d4284263 100644 --- a/src/THcAerogel.cxx +++ b/src/THcAerogel.cxx @@ -293,6 +293,8 @@ Int_t THcAerogel::ReadDatabase( const TDatime& date ) {"aero_beta_max", &fBetaMax, kDouble}, {"aero_enorm_min", &fENormMin, kDouble}, {"aero_enorm_max", &fENormMax, kDouble}, + {"aero_dp_min", &fDpMin, kDouble}, + {"aero_dp_max", &fDpMax, kDouble}, {"aero_diff_box_zpos", &fDiffBoxZPos, kDouble}, {"aero_npe_thresh", &fNpeThresh, kDouble}, {"aero_adcTimeWindowMin", &fAdcTimeWindowMin, kDouble}, @@ -799,6 +801,7 @@ Int_t THcAerogel::FineProcess( TClonesArray& tracks ) Double_t trackEnergy = track->GetEnergy(); Double_t trackMom = track->GetP(); Double_t trackENorm = trackEnergy/trackMom; + Double_t trackDp = track->GetDp(); Double_t trackXfp = track->GetX(); Double_t trackYfp = track->GetY(); Double_t trackTheta = track->GetTheta(); @@ -807,8 +810,9 @@ Int_t THcAerogel::FineProcess( TClonesArray& tracks ) Bool_t trackRedChi2Cut = trackRedChi2 > fRedChi2Min && trackRedChi2 < fRedChi2Max; Bool_t trackBetaCut = trackBeta > fBetaMin && trackBeta < fBetaMax; Bool_t trackENormCut = trackENorm > fENormMin && trackENorm < fENormMax; + Bool_t trackDpCut = trackDp > fDpMin && trackDp < fDpMax; - if (trackRedChi2Cut && trackBetaCut && trackENormCut) { + if (trackRedChi2Cut && trackBetaCut && trackENormCut && trackDpCut) { // Project the track to the Aerogel diffuser box plane Double_t xAtAero = trackXfp + trackTheta * fDiffBoxZPos; diff --git a/src/THcAerogel.h b/src/THcAerogel.h index ac157596e54ff846150ece426833cc755001c556..c1a49931a55bd58b6b1eedd54182c3c036370611 100644 --- a/src/THcAerogel.h +++ b/src/THcAerogel.h @@ -54,6 +54,8 @@ class THcAerogel : public THaNonTrackingDetector, public THcHitList { Double_t fBetaMax; Double_t fENormMin; Double_t fENormMax; + Double_t fDpMin; + Double_t fDpMax; Double_t fDiffBoxZPos; Double_t fNpeThresh; Double_t fAdcTimeWindowMin;