How To: Print out the theoretical decomposition¶
In [1]:
# Set up the path to SModelS installation folder
import sys; sys.path.append("."); import smodels_paths
In [2]:
# Import those parts of smodels that are needed for this exercise
# (We will assume the input is a SLHA file. For LHE files, use the lheDecomposer instead)
from smodels.share.models.mssm import BSMList
from smodels.share.models.SMparticles import SMList
from smodels.base.model import Model
from smodels.decomposition import decomposer
from smodels.installation import installDirectory
from smodels.base.physicsUnits import fb, GeV
In [3]:
# Define the SLHA file name
filename="inputFiles/slha/gluino_squarks.slha"
model = Model(BSMparticles = BSMList, SMparticles = SMList)
model.updateParticles(inputFile=filename)
In [4]:
# Perform the decomposition:
listOfTopologies = decomposer.decompose(model, sigmacut = 0.5 * fb,
massCompress=True, invisibleCompress=True,minmassgap = 5* GeV)
In [5]:
# To print specific information about othe i-th topology:
for top,smsList in listOfTopologies.items():
print('Canonical name = %i' %top)
print ("Number of SMS = ",len(smsList))
Canonical name = 110100 Number of SMS = 1 Canonical name = 1101101000 Number of SMS = 1 Canonical name = 110110101000 Number of SMS = 2 Canonical name = 11101001101000 Number of SMS = 9 Canonical name = 1101101011010000 Number of SMS = 9 Canonical name = 1110100110101000 Number of SMS = 10 Canonical name = 111010011011010000 Number of SMS = 32 Canonical name = 111010100110101000 Number of SMS = 3 Canonical name = 11011011010110100000 Number of SMS = 6 Canonical name = 11101001101011010000 Number of SMS = 56 Canonical name = 11101001101101010000 Number of SMS = 4 Canonical name = 11101010011011010000 Number of SMS = 14 Canonical name = 1110101001101011010000 Number of SMS = 20 Canonical name = 1110101001101101010000 Number of SMS = 4 Canonical name = 1110110100011011010000 Number of SMS = 32 Canonical name = 111010011011010110100000 Number of SMS = 37 Canonical name = 111011010001101011010000 Number of SMS = 87 Canonical name = 111011010001101101010000 Number of SMS = 8 Canonical name = 11101010011011010110100000 Number of SMS = 42 Canonical name = 11101011010001101011010000 Number of SMS = 72 Canonical name = 11101011010001101101010000 Number of SMS = 42 Canonical name = 1110110100011011010110100000 Number of SMS = 88 Canonical name = 111010110100011011010110100000 Number of SMS = 276
In [6]:
# We can also print information for each element in the topology:
for sms in listOfTopologies[110110101000]:
print ('SMS:',sms)
print ('weight=',sms.weightList,'\n')
sms.draw()
SMS: (PV > N1,gluino(2)), (gluino(2) > N1,q,q) weight= ['1.30E+01 [TeV]:5.47E-04 [pb] (1000021, 1000022)', '8.00E+00 [TeV]:9.63E-05 [pb] (1000021, 1000022)']
SMS: (PV > N1,gluino(2)), (gluino(2) > N1,c,c) weight= ['1.30E+01 [TeV]:5.47E-04 [pb] (1000021, 1000022)', '8.00E+00 [TeV]:9.63E-05 [pb] (1000021, 1000022)']
In [ ]: