sherpa is hosted by Hepforge, IPPP Durham
close Warning: Can't synchronize with repository "(default)" (/hepforge/svn/sherpa does not appear to be a Subversion repository.). Look in the Trac log for more information.

Ticket #173: sherpa-mcfm-yuk.patch

File sherpa-mcfm-yuk.patch, 9.6 KB (added by Frank Siegert, 13 years ago)
  • MCFM_qqb_vv.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    2 #include "AddOns/MCFM/MCFM_Wrapper.H"
     2#include "MCFM_Wrapper.H"
    33
    44namespace MCFM {
    55  class MCFM_qqb_vv: public PHASIC::Virtual_ME2_Base {
     
    101101      GetMom(p_p,4,p[2]);
    102102    }
    103103    else {
    104       for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     104      for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    105105    }
    106106  }
    107107  else if (m_pID==48 || m_pID ==12 || m_pID==17) {
     
    110110    GetMom(p_p,4,p[2]);
    111111  }
    112112  else {
    113     for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     113    for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    114114  }
    115115  //msg_Out()<<"s24 = "<<sqrt((p[2]+p[4]).Abs2())<<", "
    116116  //       <<"s35 = "<<sqrt((p[3]+p[5]).Abs2())<<", "
     
    165165      if ((fl1.Kfcode()==23 || fl1.Kfcode()==24) &&
    166166          (fl2.Kfcode()==23 || fl2.Kfcode()==24)) {
    167167        // check for right model and absence of b Yukawa couplings
    168         if ((ATOOLS::Flavour(kf_b).Yuk()>0. && fl1==fl2.Bar()) ||
     168        if ((MODEL::s_model->ScalarConstant("Yukawa_b")>0. && fl1==fl2.Bar()) ||
    169169            MODEL::s_model->Name()!=std::string("SM") ||
    170170            (Flavour(kf_t).IsOn() && fl1.Kfcode()==24 && fl2.Kfcode()==24)) {
    171171          msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl
    172172                     <<"   Try to initialise process qqb->VV in MCFM.\n"
    173173                     <<"   Inconsistent setting with Sherpa: \n"
    174                      <<"Yuk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()
     174                     <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b")
    175175                     <<" (should be 0), "
    176                      <<"model = "<<MODEL::s_model->Name()
     176                     <<"MODEL = "<<MODEL::s_model->Name()
    177177                     <<"(should be 'SM', and "
    178                      <<"top on = "<<Flavour(kf_t).IsOn()
    179                      <<"(should be 1 for WW).\n"
     178                     <<"ACTIVE[6] = "<<Flavour(kf_t).IsOn()
     179                     <<"(should be 0 for WW).\n"
    180180                     <<"   Will exit the run."<<std::endl;
    181181          exit(1);
    182182          return NULL;
  • MCFM_wbf.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    22#include "MODEL/Main/Running_AlphaS.H"
    3 #include "AddOns/MCFM/MCFM_Wrapper.H"
     3#include "MCFM_Wrapper.H"
    44
    55namespace MCFM {
    66
     
    100100     ATOOLS::sqr(masses_.hmass*masses_.hwidth))/
    101101    (ATOOLS::sqr(sh-m_mh2)+m_mh2*m_Gh2);
    102102  for (int n(0);n<2;++n)        GetMom(p_p,n,-p[n]);
    103   for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     103  for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    104104  long int i(m_flavs[0]), j(m_flavs[1]);
    105105  if (i==21) { i=0; corrfactor *= 8./3.; }
    106106  if (j==21) { j=0; corrfactor *= 8./3.; }
     
    149149    if (pi.m_fi.m_ps.size()==2 &&
    150150        !pi.m_fi.m_ps[1].m_fl[0].Strong())              return NULL;
    151151
    152     if (ATOOLS::Flavour(kf_b).Yuk()>0. ||
     152    if (MODEL::s_model->ScalarConstant("Yukawa_b")>0. ||
    153153        MODEL::s_model->Name()!=std::string("SM") ||
    154154        !Flavour(kf_h0).IsOn()) {
    155155      msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl
    156156                 <<"   Try to initialise process WBF->H in MCFM.\n"
    157157                 <<"   Inconsistent setting with Sherpa: \n"
    158                  <<"Yuk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()<<" (should be 0), "
    159                  <<"model = "<<MODEL::s_model->Name()
    160                  <<"(should be 'SM', and "
    161                  <<"higgs on = "<<Flavour(kf_h0).IsOn()<<"(should be 1)."
     158                 <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b")<<" (should be 0), "
     159                 <<"MODEL = "<<MODEL::s_model->Name()
     160                 <<"(should be 'SM'), and "
     161                 <<"ACTIVE[25] = "<<Flavour(kf_h0).IsOn()<<"(should be 1)."
    162162                 <<std::endl<<"   Will exit the run.\n";
    163163      exit(1);
    164164      return NULL;
  • MCFM_Interface.C

     
    3636
    3737#include "MODEL/Main/Model_Base.H"
    3838#include "MODEL/Main/Running_AlphaS.H"
    39 #include "AddOns/MCFM/MCFM_Wrapper.H"
     39#include "MCFM_Wrapper.H"
    4040#include "ATOOLS/Org/Run_Parameter.H"
    4141#include "ATOOLS/Org/Message.H"
    4242#include "ATOOLS/Org/Exception.H"
  • MCFM_qqb_vh.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    2 #include "AddOns/MCFM/MCFM_Wrapper.H"
     2#include "MCFM_Wrapper.H"
    33
    44namespace MCFM {
    55  class MCFM_qqb_vh: public PHASIC::Virtual_ME2_Base {
     
    7474void MCFM_qqb_vh::Calc(const Vec4D_Vector &p)
    7575{
    7676  for (int n(0);n<2;++n) GetMom(p_p,n,-p[n]);
    77   for (int n(2);n<p.size();++n) {
     77  for (size_t n(2);n<p.size();++n) {
    7878    if (n<6)             GetMom(p_p,n+2,p[n]);       
    7979    else if (n>5)        GetMom(p_p,n-4,p[n]);
    8080  }
     
    133133        ATOOLS::Flavour fl2(pi.m_fi.m_ps[0].m_ps[1].m_fl[0]);
    134134        if ((fl1==Flavour(kf_Wplus) && fl2==Flavour(kf_Wplus).Bar()) ||
    135135            (fl2==Flavour(kf_Wplus) && fl1==Flavour(kf_Wplus).Bar())) {
    136           if (ATOOLS::Flavour(kf_b).Yuk()>0. ||
     136          if (MODEL::s_model->ScalarConstant("Yukawa_b")>0. ||
    137137              MODEL::s_model->Name()!=std::string("SM")) {
    138138            msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl
    139139                       <<"   Try to initialise process qqb->VH in MCFM.\n"
    140140                       <<"   Inconsistent setting with Sherpa: \n"
    141                        <<"Yuk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()
     141                       <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b")
    142142                       <<" (should be 0), and "
    143                        <<"model = "<<MODEL::s_model->Name()
     143                       <<"MODEL = "<<MODEL::s_model->Name()
    144144                       <<"(should be 'SM'.\n"
    145145                       <<"   Will exit the run."<<std::endl;
    146146            exit(1);
  • MCFM_gg_h.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    22#include "MODEL/Main/Running_AlphaS.H"
    3 #include "AddOns/MCFM/MCFM_Wrapper.H"
     3#include "MCFM_Wrapper.H"
    44
    55namespace MCFM {
    66  // README:
     
    126126     ATOOLS::sqr(masses_.hmass*masses_.hwidth))/
    127127    (ATOOLS::sqr(sh-m_mh2)+m_mh2*m_Gh2);
    128128  for (int n(0);n<2;++n)        GetMom(p_p,n,-p[n]);
    129   for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     129  for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    130130  long int i(m_flavs[0]), j(m_flavs[1]);
    131131  if (i==21) { i=0; corrfactor *= 8./3.; }
    132132  if (j==21) { j=0; corrfactor *= 8./3.; }
     
    170170    if (pi.m_fi.m_ps.size()==2 &&
    171171        !pi.m_fi.m_ps[1].m_fl[0].Strong())              return NULL;
    172172
    173     if (ATOOLS::Flavour(kf_b).Yuk()>0. ||
     173    if (MODEL::s_model->ScalarConstant("Yukawa_b")>0. ||
    174174        MODEL::s_model->Name()!=std::string("SM+EHC") ||
    175175        !Flavour(kf_h0).IsOn()) {
    176176      msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl
    177177                 <<"   Try to initialise process gg->H(+jet) in MCFM."<<std::endl
    178178                 <<"   Inconsistent setting with Sherpa: "<<std::endl
    179                  <<"Yuk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()<<" (should be 0), "
    180                  <<"model = "<<MODEL::s_model->Name()<<"(should be 'SM+EHC', and "
    181                  <<"higgs on = "<<Flavour(kf_h0).IsOn()<<"(should be 1)."
     179                 <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b")<<" (should be 0), "
     180                 <<"MODEL = "<<MODEL::s_model->Name()<<"(should be 'SM+EHC', and "
     181                 <<"ACTIVE[25] = "<<Flavour(kf_h0).IsOn()<<" (should be 1)."
    182182                 <<std::endl<<"   Will exit the run."<<std::endl;
    183183      exit(1);
    184184      return NULL;
  • MCFM_qqb_QQb.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    2 #include "AddOns/MCFM/MCFM_Wrapper.H"
     2#include "MCFM_Wrapper.H"
    33
    44namespace MCFM {
    55  class MCFM_qqb_QQb: public PHASIC::Virtual_ME2_Base {
     
    7070
    7171  for (int n(0);n<2;++n) GetMom(p_p,n,-p[n]);
    7272  if (m_pID==157) {
    73     for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     73    for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    7474  }
    7575  else {
    76     for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     76    for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    7777  }
    7878
    7979  long int i(m_flavs[0]), j(m_flavs[1]);
  • MCFM_qqb_v.C

     
    11#include "PHASIC++/Process/Virtual_ME2_Base.H"
    22#include "MODEL/Main/Running_AlphaS.H"
    3 #include "AddOns/MCFM/MCFM_Wrapper.H"
     3#include "MCFM_Wrapper.H"
    44
    55namespace MCFM {
    66
     
    9191    corrfactor *= pow((*p_as)(m_mur2)/qcdcouple_.as,m_njets);
    9292  }
    9393  for (int n(0);n<2;++n)        GetMom(p_p,n,-p[n]);
    94   for (int n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
     94  for (size_t n(2);n<p.size();++n) GetMom(p_p,n,p[n]);
    9595  long int i(m_flavs[0]), j(m_flavs[1]);
    9696  if (i==21) { i=0; corrfactor *= 8./3.; }
    9797  if (j==21) { j=0; corrfactor *= 8./3.; }
     
    134134                   <<std::endl<<"   Will return 0 and hope for the best."<<std::endl;
    135135        return NULL;
    136136      }
    137       if ((fl[2]==fl[3].Bar() && ATOOLS::Flavour(kf_b).Yuk()>0. &&
     137      if ((fl[2]==fl[3].Bar() && MODEL::s_model->ScalarConstant("Yukawa_b")>0. &&
    138138           ATOOLS::Flavour(kf_b).IsMassive()==0) ||
    139139          MODEL::s_model->Name()!=std::string("SM")) {
    140140        msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl
    141141                   <<"   Try to initialise process qqb->llbar in MCFM.\n"
    142142                   <<"   Inconsistent setting with Sherpa: "<<std::endl
    143                    <<"Yuk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()
     143                   <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b")
    144144                   <<" (should be 0 for llbar, to play it safe), and "
    145                    <<"model = "<<MODEL::s_model->Name()<<"(should be 'SM')."
     145                   <<"MODEL = "<<MODEL::s_model->Name()<<" (should be 'SM')."
    146146                   <<std::endl<<"   Will exit the run."<<std::endl;
    147147        exit(1);
    148148        return NULL;