Implements BPHHistoSpecificDecay::CandidateSelect.
Definition at line 319 of file BPHHistoSpecificDecay.cc.
References reco::Vertex::chi2(), ChiSquaredProbability(), reco::Vertex::error(), BPHUserData::get(), ResonanceBuilder::mass, GlobalErrorBase< T, ErrorWeightType >::matrix(), reco::Vertex::ndof(), ALCARECOTkAlMinBias_cff::pMin, mathSSE::sqrt(), Measurement1D::value(), reco::Vertex::x(), and reco::Vertex::y().
Referenced by Vispa.Gui.BoxContentDialog.BoxContentDialog::apply(), Vispa.Plugins.ConfigEditor.ToolDialog.ToolDialog::apply(), and esMonitoring.FDJsonServer::handle_accept().
323 if ( svtx ==
nullptr )
return false;
326 svtx->
ndof() ) <
pMin )
return false;
328 if ( (
cMin > 0 ) || (
sMin > 0 ) ) {
329 TVector3 disp( svtx->
x() - pvtx->
x(),
330 svtx->
y() - pvtx->
y(),
334 if ( fmom ==
nullptr )
return false;
335 TVector3 cmom( fmom->x(), fmom->y(), 0 );
336 float cosAlpha = disp.Dot( cmom ) / ( disp.Perp() * cmom.Perp() );
337 if ( cosAlpha <
cMin )
return false;
338 if (
sMin < 0 )
return true;
339 if ( !cand.hasUserFloat(
"fitMass" ) )
return false;
340 float mass = cand.userFloat(
"fitMass" );
344 double ctauPV = distXY.
value() * cosAlpha * mass / cmom.Perp();
348 double ctauErrPV =
sqrt( ROOT::Math::Similarity( vmom, vXYe ) ) * mass /
350 if ( ( ctauPV / ctauErrPV ) <
sMin )
return false;
const AlgebraicSymMatrix33 matrix() const
double y() const
y coordinate
static const T * get(const pat::CompositeCandidate &cand, const string &name)
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33
ROOT::Math::SVector< double, 3 > AlgebraicVector3
double chi2() const
chi-squares
float ChiSquaredProbability(double chiSquared, double nrDOF)
double x() const
x coordinate
Error error() const
return SMatrix