bool Hard_Decay_Handler::Decays(const ATOOLS::Flavour& flav) { if (flav.IsHadron()) return false; if (flav.Kfcode()==kf_tau && !m_decay_tau) return false; if (!flav.IsOn() || flav.IsStable()) return false; return true; }
double GetXPDF(const ATOOLS::Flavour& infl) { if (m_x>m_xmax || m_rescale<0.) return 0.; if (!(m_x>=0.0 && m_x<=1.0)) { PRINT_INFO("PDF called with x="<<m_x); return 0.; } int cteqindex; switch (infl.Kfcode()) { case kf_gluon: cteqindex=0; break; case kf_d: cteqindex=m_anti*int(infl)*2; break; case kf_u: cteqindex=m_anti*int(infl)/2; break; default: cteqindex=m_anti*int(infl); break; } if (!m_calculated[5-cteqindex]) { m_f[5-cteqindex]=ct10pdf_(cteqindex,m_x,m_Q)*m_x; m_calculated[5-cteqindex]=true; } return m_rescale*m_f[5-cteqindex]; }
bool CF_HV::AllowSpec(const ATOOLS::Flavour &fl) { return (fl.Strong()&&fl.Kfcode()>9900000); }
bool PDF_Base::Contains(const ATOOLS::Flavour &a) const { if (m_force_4f && (a.Kfcode()==5 || a.Kfcode()==6)) return false; return m_partons.find(a)!=m_partons.end(); }