CMS 3D CMS Logo

Public Member Functions | Public Attributes

PhysicsModel::FloatingXSHiggs Class Reference

Inheritance diagram for PhysicsModel::FloatingXSHiggs:
PhysicsModel::SMLikeHiggsModel PhysicsModel::PhysicsModel

List of all members.

Public Member Functions

def __init__
def doParametersOfInterest
def getHiggsSignalYieldScale
def setPhysicsOptions

Public Attributes

 mHRange
 modes

Detailed Description

Definition at line 104 of file PhysicsModel.py.


Constructor & Destructor Documentation

def PhysicsModel::FloatingXSHiggs::__init__ (   self)

Reimplemented from PhysicsModel::PhysicsModel.

Definition at line 106 of file PhysicsModel.py.

00107                       :
00108         SMLikeHiggsModel.__init__(self) # not using 'super(x,self).__init__' since I don't understand it
00109         self.modes = [ "ggH", "qqH", "VH", "ttH" ]
        self.mHRange = []

Member Function Documentation

def PhysicsModel::FloatingXSHiggs::doParametersOfInterest (   self)
Create POI and other parameters, and define the POI set.

Reimplemented from PhysicsModel::PhysicsModel.

Definition at line 119 of file PhysicsModel.py.

00120                                     :
00121         """Create POI and other parameters, and define the POI set."""
00122         # --- Signal Strength as only POI --- 
00123         if "ggH" in self.modes: self.modelBuilder.doVar("r_ggH[1,0,5]");
00124         if "qqH" in self.modes: self.modelBuilder.doVar("r_qqH[1,0,20]");
00125         if "VH"  in self.modes: self.modelBuilder.doVar("r_VH[1,0,20]");
00126         if "ttH" in self.modes: self.modelBuilder.doVar("r_ttH[1,0,20]");
00127         poi = ",".join(["r_"+m for m in self.modes])
00128         # --- Higgs Mass as other parameter ----
00129         if self.modelBuilder.out.var("MH"):
00130             if len(self.mHRange):
00131                 print 'MH will be left floating within', self.mHRange[0], 'and', self.mHRange[1]
00132                 self.modelBuilder.out.var("MH").setRange(float(self.mHRange[0]),float(self.mHRange[1]))
00133                 self.modelBuilder.out.var("MH").setConstant(False)
00134                 poi+=',MH'
00135             else:
00136                 print 'MH will be assumed to be', self.options.mass
00137                 self.modelBuilder.out.var("MH").removeRange()
00138                 self.modelBuilder.out.var("MH").setVal(self.options.mass)
00139         else:
00140             if len(self.mHRange):
00141                 print 'MH will be left floating within', self.mHRange[0], 'and', self.mHRange[1]
00142                 self.modelBuilder.doVar("MH[%s,%s]" % (self.mHRange[0],self.mHRange[1]))
00143                 poi+=',MH'
00144             else:
00145                 print 'MH (not there before) will be assumed to be', self.options.mass
00146                 self.modelBuilder.doVar("MH[%g]" % self.options.mass)
        self.modelBuilder.doSet("POI",poi)
def PhysicsModel::FloatingXSHiggs::getHiggsSignalYieldScale (   self,
  production,
  decay,
  energy 
)

Reimplemented from PhysicsModel::SMLikeHiggsModel.

Definition at line 147 of file PhysicsModel.py.

00148                                                                :
00149         if production == "ggH": return ("r_ggH" if "ggH" in self.modes else 1)
00150         if production == "qqH": return ("r_qqH" if "qqH" in self.modes else 1)
00151         if production == "ttH": return ("r_ttH" if "ttH" in self.modes else 1)
00152         if production in [ "WH", "ZH", "VH" ]: return ("r_VH" if "VH" in self.modes else 1)
00153         raise RuntimeError, "Unknown production mode '%s'" % production

def PhysicsModel::FloatingXSHiggs::setPhysicsOptions (   self,
  physOptions 
)

Reimplemented from PhysicsModel::PhysicsModel.

Definition at line 110 of file PhysicsModel.py.

00111                                            :
00112         for po in physOptions:
00113             if po.startswith("modes="): self.modes = po.replace("modes=","").split(",")
00114             if po.startswith("higgsMassRange="):
00115                 self.mHRange = po.replace("higgsMassRange=","").split(",")
00116                 if len(self.mHRange) != 2:
00117                     raise RuntimeError, "Higgs mass range definition requires two extrema"
00118                 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"

Member Data Documentation

Definition at line 106 of file PhysicsModel.py.

Definition at line 106 of file PhysicsModel.py.