Ticket #173: sherpa-mcfm-yuk.patch
File sherpa-mcfm-yuk.patch, 9.6 KB (added by , 14 years ago) |
---|
-
MCFM_qqb_vv.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 #include " AddOns/MCFM/MCFM_Wrapper.H"2 #include "MCFM_Wrapper.H" 3 3 4 4 namespace MCFM { 5 5 class MCFM_qqb_vv: public PHASIC::Virtual_ME2_Base { … … 101 101 GetMom(p_p,4,p[2]); 102 102 } 103 103 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]); 105 105 } 106 106 } 107 107 else if (m_pID==48 || m_pID ==12 || m_pID==17) { … … 110 110 GetMom(p_p,4,p[2]); 111 111 } 112 112 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]); 114 114 } 115 115 //msg_Out()<<"s24 = "<<sqrt((p[2]+p[4]).Abs2())<<", " 116 116 // <<"s35 = "<<sqrt((p[3]+p[5]).Abs2())<<", " … … 165 165 if ((fl1.Kfcode()==23 || fl1.Kfcode()==24) && 166 166 (fl2.Kfcode()==23 || fl2.Kfcode()==24)) { 167 167 // 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()) || 169 169 MODEL::s_model->Name()!=std::string("SM") || 170 170 (Flavour(kf_t).IsOn() && fl1.Kfcode()==24 && fl2.Kfcode()==24)) { 171 171 msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl 172 172 <<" Try to initialise process qqb->VV in MCFM.\n" 173 173 <<" Inconsistent setting with Sherpa: \n" 174 <<"Y uk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()174 <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b") 175 175 <<" (should be 0), " 176 <<" model= "<<MODEL::s_model->Name()176 <<"MODEL = "<<MODEL::s_model->Name() 177 177 <<"(should be 'SM', and " 178 <<" top on= "<<Flavour(kf_t).IsOn()179 <<"(should be 1for WW).\n"178 <<"ACTIVE[6] = "<<Flavour(kf_t).IsOn() 179 <<"(should be 0 for WW).\n" 180 180 <<" Will exit the run."<<std::endl; 181 181 exit(1); 182 182 return NULL; -
MCFM_wbf.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 2 #include "MODEL/Main/Running_AlphaS.H" 3 #include " AddOns/MCFM/MCFM_Wrapper.H"3 #include "MCFM_Wrapper.H" 4 4 5 5 namespace MCFM { 6 6 … … 100 100 ATOOLS::sqr(masses_.hmass*masses_.hwidth))/ 101 101 (ATOOLS::sqr(sh-m_mh2)+m_mh2*m_Gh2); 102 102 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]); 104 104 long int i(m_flavs[0]), j(m_flavs[1]); 105 105 if (i==21) { i=0; corrfactor *= 8./3.; } 106 106 if (j==21) { j=0; corrfactor *= 8./3.; } … … 149 149 if (pi.m_fi.m_ps.size()==2 && 150 150 !pi.m_fi.m_ps[1].m_fl[0].Strong()) return NULL; 151 151 152 if ( ATOOLS::Flavour(kf_b).Yuk()>0. ||152 if (MODEL::s_model->ScalarConstant("Yukawa_b")>0. || 153 153 MODEL::s_model->Name()!=std::string("SM") || 154 154 !Flavour(kf_h0).IsOn()) { 155 155 msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl 156 156 <<" Try to initialise process WBF->H in MCFM.\n" 157 157 <<" Inconsistent setting with Sherpa: \n" 158 <<"Y uk(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)." 162 162 <<std::endl<<" Will exit the run.\n"; 163 163 exit(1); 164 164 return NULL; -
MCFM_Interface.C
36 36 37 37 #include "MODEL/Main/Model_Base.H" 38 38 #include "MODEL/Main/Running_AlphaS.H" 39 #include " AddOns/MCFM/MCFM_Wrapper.H"39 #include "MCFM_Wrapper.H" 40 40 #include "ATOOLS/Org/Run_Parameter.H" 41 41 #include "ATOOLS/Org/Message.H" 42 42 #include "ATOOLS/Org/Exception.H" -
MCFM_qqb_vh.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 #include " AddOns/MCFM/MCFM_Wrapper.H"2 #include "MCFM_Wrapper.H" 3 3 4 4 namespace MCFM { 5 5 class MCFM_qqb_vh: public PHASIC::Virtual_ME2_Base { … … 74 74 void MCFM_qqb_vh::Calc(const Vec4D_Vector &p) 75 75 { 76 76 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) { 78 78 if (n<6) GetMom(p_p,n+2,p[n]); 79 79 else if (n>5) GetMom(p_p,n-4,p[n]); 80 80 } … … 133 133 ATOOLS::Flavour fl2(pi.m_fi.m_ps[0].m_ps[1].m_fl[0]); 134 134 if ((fl1==Flavour(kf_Wplus) && fl2==Flavour(kf_Wplus).Bar()) || 135 135 (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. || 137 137 MODEL::s_model->Name()!=std::string("SM")) { 138 138 msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl 139 139 <<" Try to initialise process qqb->VH in MCFM.\n" 140 140 <<" Inconsistent setting with Sherpa: \n" 141 <<"Y uk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()141 <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b") 142 142 <<" (should be 0), and " 143 <<" model= "<<MODEL::s_model->Name()143 <<"MODEL = "<<MODEL::s_model->Name() 144 144 <<"(should be 'SM'.\n" 145 145 <<" Will exit the run."<<std::endl; 146 146 exit(1); -
MCFM_gg_h.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 2 #include "MODEL/Main/Running_AlphaS.H" 3 #include " AddOns/MCFM/MCFM_Wrapper.H"3 #include "MCFM_Wrapper.H" 4 4 5 5 namespace MCFM { 6 6 // README: … … 126 126 ATOOLS::sqr(masses_.hmass*masses_.hwidth))/ 127 127 (ATOOLS::sqr(sh-m_mh2)+m_mh2*m_Gh2); 128 128 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]); 130 130 long int i(m_flavs[0]), j(m_flavs[1]); 131 131 if (i==21) { i=0; corrfactor *= 8./3.; } 132 132 if (j==21) { j=0; corrfactor *= 8./3.; } … … 170 170 if (pi.m_fi.m_ps.size()==2 && 171 171 !pi.m_fi.m_ps[1].m_fl[0].Strong()) return NULL; 172 172 173 if ( ATOOLS::Flavour(kf_b).Yuk()>0. ||173 if (MODEL::s_model->ScalarConstant("Yukawa_b")>0. || 174 174 MODEL::s_model->Name()!=std::string("SM+EHC") || 175 175 !Flavour(kf_h0).IsOn()) { 176 176 msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl 177 177 <<" Try to initialise process gg->H(+jet) in MCFM."<<std::endl 178 178 <<" Inconsistent setting with Sherpa: "<<std::endl 179 <<"Y uk(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)." 182 182 <<std::endl<<" Will exit the run."<<std::endl; 183 183 exit(1); 184 184 return NULL; -
MCFM_qqb_QQb.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 #include " AddOns/MCFM/MCFM_Wrapper.H"2 #include "MCFM_Wrapper.H" 3 3 4 4 namespace MCFM { 5 5 class MCFM_qqb_QQb: public PHASIC::Virtual_ME2_Base { … … 70 70 71 71 for (int n(0);n<2;++n) GetMom(p_p,n,-p[n]); 72 72 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]); 74 74 } 75 75 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]); 77 77 } 78 78 79 79 long int i(m_flavs[0]), j(m_flavs[1]); -
MCFM_qqb_v.C
1 1 #include "PHASIC++/Process/Virtual_ME2_Base.H" 2 2 #include "MODEL/Main/Running_AlphaS.H" 3 #include " AddOns/MCFM/MCFM_Wrapper.H"3 #include "MCFM_Wrapper.H" 4 4 5 5 namespace MCFM { 6 6 … … 91 91 corrfactor *= pow((*p_as)(m_mur2)/qcdcouple_.as,m_njets); 92 92 } 93 93 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]); 95 95 long int i(m_flavs[0]), j(m_flavs[1]); 96 96 if (i==21) { i=0; corrfactor *= 8./3.; } 97 97 if (j==21) { j=0; corrfactor *= 8./3.; } … … 134 134 <<std::endl<<" Will return 0 and hope for the best."<<std::endl; 135 135 return NULL; 136 136 } 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. && 138 138 ATOOLS::Flavour(kf_b).IsMassive()==0) || 139 139 MODEL::s_model->Name()!=std::string("SM")) { 140 140 msg_Error()<<"Warning in "<<METHOD<<":"<<std::endl 141 141 <<" Try to initialise process qqb->llbar in MCFM.\n" 142 142 <<" Inconsistent setting with Sherpa: "<<std::endl 143 <<"Y uk(b) = "<<ATOOLS::Flavour(kf_b).Yuk()143 <<"YUKAWA_B = "<<MODEL::s_model->ScalarConstant("Yukawa_b") 144 144 <<" (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')." 146 146 <<std::endl<<" Will exit the run."<<std::endl; 147 147 exit(1); 148 148 return NULL;