Esempio n. 1
0
bool CF_EW_FFZ::AllowSpec(const ATOOLS::Flavour &fl)
{
    if (m_cfl.IntCharge()==0) return fl.Charge();

    switch (m_type) {
    case cstp::FF:
    case cstp::II:
        return fl.IntCharge()*m_cfl.IntCharge()<0;
    case cstp::FI:
    case cstp::IF:
        return fl.IntCharge()*m_cfl.IntCharge()>0;
    default:
        return false;
    }
}
Esempio n. 2
0
bool CF_QED::AllowSpec(const ATOOLS::Flavour &fl) 
{
  if (!fl.Strong() && fl.Mass()>10.0) return false;
  if (m_cfl.IntCharge()==0) return fl.Charge();
  
  switch (m_type) {
  case cstp::FF:
  case cstp::II:
    return fl.IntCharge()*m_cfl.IntCharge()<0;
  case cstp::FI:
  case cstp::IF:
    return fl.IntCharge()*m_cfl.IntCharge()>0;
  default:
    return false;
  }
}
Esempio n. 3
0
    inline CF_QED(const SF_Key &key):
      SF_Coupling(key), m_cfl(key.p_v->in[0].Bar())
    {
      if (key.m_type==cstp::IF || key.m_type==cstp::II)
	m_cfl=key.p_v->in[key.m_mode==0?1:2];
      m_q=ATOOLS::dabs(m_cfl.IntCharge()?m_cfl.Charge():
		       key.p_v->in[key.m_mode==0?2:1].Charge());
      if (m_q==0.0) THROW(fatal_error,"Internal error");
    }