diff --git a/Pr/PrFitParams/src/PrFitFwdParams.cpp b/Pr/PrFitParams/src/PrFitFwdParams.cpp index e782cc62d331d75a6429a0b112d0ff69862b1f2a..6bedfa6da4fc2a0f028806a003c34071c917fcca 100755 --- a/Pr/PrFitParams/src/PrFitFwdParams.cpp +++ b/Pr/PrFitParams/src/PrFitFwdParams.cpp @@ -39,6 +39,7 @@ PrFitFwdParams::PrFitFwdParams( const std::string& name, ISvcLocator* pSvcLocator) : GaudiTupleAlg ( name , pSvcLocator ) , m_minMomentum ( 2.0 * Gaudi::Units::GeV ) + , m_minPT ( 0.0 * Gaudi::Units::GeV ) , m_maxZVertex ( 500. * Gaudi::Units::mm ) , m_zVelo ( 1190. * Gaudi::Units::mm ) , m_zMag ( 5500. * Gaudi::Units::mm ) @@ -54,6 +55,7 @@ PrFitFwdParams::PrFitFwdParams( const std::string& name, declareProperty( "NtupleName2" , m_tupleName2 ); declareProperty( "MinMomentum" , m_minMomentum ); + declareProperty( "MinPT" , m_minPT ); declareProperty( "MaxZVertex" , m_maxZVertex ); declareProperty( "ZVelo" , m_zVelo ); declareProperty( "ZMagnet" , m_zMag ); @@ -178,8 +180,9 @@ StatusCode PrFitFwdParams::execute() { if ( 10000. > zDecay ) continue; // == Momentum cut - momentum = myMCPart->momentum().R(); + momentum = myMCPart->p(); if ( m_minMomentum > momentum ) continue; + if ( m_minPT > myMCPart->pt() ) continue; if ( 11 == abs( myMCPart->particleID().pid() ) ) { continue; } // no electrons if ( 0 > myMCPart->particleID().threeCharge() ) { diff --git a/Pr/PrFitParams/src/PrFitFwdParams.h b/Pr/PrFitParams/src/PrFitFwdParams.h index 0ee55abe807b5cf691b27a4a9427b6e928a55dcd..069424f83ade2b376811aad070b959cb3e2076c0 100755 --- a/Pr/PrFitParams/src/PrFitFwdParams.h +++ b/Pr/PrFitParams/src/PrFitFwdParams.h @@ -38,6 +38,7 @@ private: // Parameters to control the algorithm, accessible by jobOptions double m_minMomentum; ///< Momentum cut to consider tracks + double m_minPT; ///< Transverse momentum cut to consider tracks double m_maxZVertex; ///< Maximum Z vertex. double m_zVelo; ///< Z where initial track is defined double m_zMag; ///< Z of the field center