CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
HiggsCouplings.CvCfHiggs Class Reference
Inheritance diagram for HiggsCouplings.CvCfHiggs:

Public Member Functions

def __init__
 
def doDebugDump
 
def doParametersOfInterest
 
def getHiggsSignalYieldScale
 
def setPhysicsOptions
 
def setup
 

Public Attributes

 floatMass
 
 mHRange
 
 SMH
 

Detailed Description

Definition at line 4 of file HiggsCouplings.py.

Constructor & Destructor Documentation

def HiggsCouplings.CvCfHiggs.__init__ (   self)

Definition at line 6 of file HiggsCouplings.py.

6 
7  def __init__(self):
8  SMLikeHiggsModel.__init__(self) # not using 'super(x,self).__init__' since I don't understand it
self.floatMass = False

Member Function Documentation

def HiggsCouplings.CvCfHiggs.doDebugDump (   self)

Definition at line 41 of file HiggsCouplings.py.

41 
42  def doDebugDump(self):
43  self.modelBuilder.out.var("MH").setConstant(False)
44  self.modelBuilder.out.var("MH").removeRange()
45  MHvals = [ 110 + (600.-110.)*i/4900. for i in xrange(4900+1) ]
46  for p in [ "ggH", "qqH", "WH", "ZH" ]:
47  self.SMH.makeXS(p)
48  self.SMH.dump("SM_XS_"+p, "MH", MHvals, "dump.XS_"+p+".txt")
49  for p in [ "htt", "hbb", "hww", "hzz", "hgg", "hgluglu", "htoptop" ]:
50  self.SMH.makeBR(p)
51  self.SMH.dump("SM_BR_"+p, "MH", MHvals, "dump.BR_"+p+".txt")
52  self.SMH.makeTotalWidth()
self.SMH.dump("SM_GammaTot", "MH", MHvals, "dump.GammaTot.txt")
def HiggsCouplings.CvCfHiggs.doParametersOfInterest (   self)
Create POI out of signal strength and MH

Definition at line 19 of file HiggsCouplings.py.

References HiggsCouplings.CvCfHiggs.floatMass, and HiggsCouplings.CvCfHiggs.mHRange.

19 
20  def doParametersOfInterest(self):
21  """Create POI out of signal strength and MH"""
22  # --- Signal Strength as only POI ---
23  self.modelBuilder.doVar("CV[1,-5,5]")
24  self.modelBuilder.doVar("CF[1,-5,5]")
25  if self.floatMass:
26  if self.modelBuilder.out.var("MH"):
27  self.modelBuilder.out.var("MH").setRange(float(self.mHRange[0]),float(self.mHRange[1]))
28  self.modelBuilder.out.var("MH").setConstant(False)
29  else:
30  self.modelBuilder.doVar("MH[%s,%s]" % (self.mHRange[0],self.mHRange[1]))
31  self.modelBuilder.doSet("POI",'CV,CF,MH')
32  else:
33  if self.modelBuilder.out.var("MH"):
34  self.modelBuilder.out.var("MH").setVal(self.options.mass)
35  self.modelBuilder.out.var("MH").setConstant(True)
36  else:
37  self.modelBuilder.doVar("MH[%g]" % self.options.mass)
38  self.modelBuilder.doSet("POI",'CV,CF')
39  self.SMH = SMHiggsBuilder(self.modelBuilder)
40  #self.doDebugDump()
self.setup()
def HiggsCouplings.CvCfHiggs.getHiggsSignalYieldScale (   self,
  production,
  decay,
  energy 
)

Definition at line 75 of file HiggsCouplings.py.

Referenced by PhysicsModel.SMLikeHiggsModel.getYieldScale().

75 
76  def getHiggsSignalYieldScale(self,production,decay,energy):
77  name = "CvCf_XSBRscal_%s_%s" % (production,decay)
78  if self.modelBuilder.out.function(name) == None:
79  XSscal = 'CF' if production in ["ggH","ttH"] else 'CV'
80  BRscal = "hgg"
81  if decay in ["hww", "hzz"]: BRscal = "hv"
82  if decay in ["hbb", "htt"]: BRscal = "hf"
83  self.modelBuilder.factory_('expr::%s("@0*@0 * @1", %s, CvCf_BRscal_%s)' % (name, XSscal, BRscal))
84  return name
def HiggsCouplings.CvCfHiggs.setPhysicsOptions (   self,
  physOptions 
)

Definition at line 9 of file HiggsCouplings.py.

References HiggsCouplings.CvCfHiggs.floatMass.

9 
10  def setPhysicsOptions(self,physOptions):
11  for po in physOptions:
12  if po.startswith("higgsMassRange="):
13  self.floatMass = True
14  self.mHRange = po.replace("higgsMassRange=","").split(",")
15  print 'The Higgs mass range:', self.mHRange
16  if len(self.mHRange) != 2:
17  raise RuntimeError, "Higgs mass range definition requires two extrema."
18  elif float(self.mHRange[0]) >= float(self.mHRange[1]):
raise RuntimeError, "Extrema for Higgs mass range defined with inverterd order. Second must be larger the first."
double split
Definition: MVATrainer.cc:139
def HiggsCouplings.CvCfHiggs.setup (   self)

Definition at line 53 of file HiggsCouplings.py.

53 
54  def setup(self):
55  ## Coefficient for couplings to photons
56  # Based on Eq 1--4 of Nuclear Physics B 453 (1995)17-82
57  # ignoring b quark contributions
58  # Taylor series around MH=125 including terms up to O(MH-125)^2 in Horner polynomial form
59  self.modelBuilder.factory_('expr::CvCf_cgamma("\
60  @0*@0*(1.524292518396496 + (0.005166702799572456 - 0.00003355715038472727*@2)*@2) + \
61  @1*(@1*(0.07244520735564258 + (0.0008318872718720393 - 6.16997610275555e-6*@2)*@2) + \
62  @0*(-0.5967377257521194 + (-0.005998590071444782 + 0.00003972712648748393*@2)*@2))\
63  ",CV,CF,MH)')
64  ## partial witdhs, normalized to the SM one, for decays scaling with F, V and total
65  for d in [ "htt", "hbb", "hcc", "hww", "hzz", "hgluglu", "htoptop", "hgg", "hZg", "hmm", "hss" ]:
66  self.SMH.makeBR(d)
67  self.modelBuilder.factory_("expr::CvCf_Gscal_sumf(\"@0*@0 * (@1+@2+@3+@4+@5+@6+@7)\", CF, SM_BR_hbb, SM_BR_htt, SM_BR_hcc, SM_BR_htoptop, SM_BR_hgluglu, SM_BR_hmm, SM_BR_hss)")
68  self.modelBuilder.factory_("expr::CvCf_Gscal_sumv(\"@0*@0 * (@1+@2+@3)\", CV, SM_BR_hww, SM_BR_hzz, SM_BR_hZg)")
69  self.modelBuilder.factory_("expr::CvCf_Gscal_gg(\"@0*@0 * @1\", CvCf_cgamma, SM_BR_hgg)")
70  self.modelBuilder.factory_( "sum::CvCf_Gscal_tot(CvCf_Gscal_sumf, CvCf_Gscal_sumv, CvCf_Gscal_gg)")
71  ## BRs, normalized to the SM ones: they scale as (coupling/coupling_SM)^2 / (totWidth/totWidthSM)^2
72  self.modelBuilder.factory_("expr::CvCf_BRscal_hgg(\"@0*@0/@1\", CvCf_cgamma, CvCf_Gscal_tot)")
73  self.modelBuilder.factory_("expr::CvCf_BRscal_hf(\"@0*@0/@1\", CF, CvCf_Gscal_tot)")
74  self.modelBuilder.factory_("expr::CvCf_BRscal_hv(\"@0*@0/@1\", CV, CvCf_Gscal_tot)")
## XS*BR scales

Member Data Documentation

HiggsCouplings.CvCfHiggs.floatMass

Definition at line 8 of file HiggsCouplings.py.

Referenced by HiggsCouplings.CvCfHiggs.doParametersOfInterest(), HiggsCouplings.C5Higgs.doParametersOfInterest(), HiggsCouplings.CvCfHiggs.setPhysicsOptions(), and HiggsCouplings.C5Higgs.setPhysicsOptions().

HiggsCouplings.CvCfHiggs.mHRange

Definition at line 13 of file HiggsCouplings.py.

Referenced by HiggsCouplings.CvCfHiggs.doParametersOfInterest(), PhysicsModel.FloatingHiggsMass.doParametersOfInterest(), HiggsCouplings.C5Higgs.doParametersOfInterest(), PhysicsModel.FloatingXSHiggs.doParametersOfInterest(), PhysicsModel.FloatingBRHiggs.doParametersOfInterest(), HiggsJPC.TwoHypotesisHiggs.setPhysicsOptions(), PhysicsModel.FloatingHiggsMass.setPhysicsOptions(), PhysicsModel.FloatingXSHiggs.setPhysicsOptions(), and PhysicsModel.FloatingBRHiggs.setPhysicsOptions().

HiggsCouplings.CvCfHiggs.SMH

Definition at line 38 of file HiggsCouplings.py.