Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:02

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("ProdTPGParam")
0004 
0005 # Calo geometry service model
0006 process.load("Geometry.CaloEventSetup.CaloGeometry_cfi")
0007 process.load("Geometry.CaloEventSetup.EcalTrigTowerConstituents_cfi")
0008 process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi")
0009 
0010 # ecal mapping
0011 process.load("Geometry.EcalMapping.EcalMapping_cfi")
0012 process.eegeom = cms.ESSource("EmptyESSource",
0013     recordName = cms.string('EcalMappingRcd'),
0014     iovIsRunNotTime = cms.bool(True),
0015     firstValid = cms.vuint32(1)
0016 )
0017 
0018 # Get hardcoded conditions the same used for standard digitization before CMSSW_3_1_x
0019 process.load("CalibCalorimetry.EcalTrivialCondModules.EcalTrivialCondRetriever_cfi")
0020 
0021 
0022 #########################
0023 process.source = cms.Source("EmptySource",
0024        firstRun = cms.untracked.uint32(100000000) ### need to use latest run to pick-up update values from DB 
0025 )
0026 
0027 
0028 process.maxEvents = cms.untracked.PSet(
0029     input = cms.untracked.int32(1)
0030 )
0031 
0032 process.TPGParamProducer = cms.EDFilter("EcalTPGParamBuilder",
0033 
0034     #### inputs/ouputs control ####
0035     writeToDB  = cms.bool(False),
0036     allowDBEE  = cms.bool(True),
0037 
0038     DBsid   = cms.string('cms_omds_lb'),
0039     DBuser  = cms.string('cms_ecal_conf'),
0040     DBpass  = cms.string('0r4cms_3c4lc0nf'),
0041     DBport  = cms.uint32(10121),
0042 
0043     TPGWritePed = cms.uint32(1),
0044     TPGWriteLin = cms.uint32(1),
0045     TPGWriteSli = cms.uint32(1),
0046     TPGWriteWei = cms.uint32(1),
0047     TPGWriteLut = cms.uint32(1),
0048     TPGWriteFgr = cms.uint32(1),
0049     TPGWriteBxt = cms.uint32(0),
0050     TPGWriteBtt = cms.uint32(0), #do not change
0051 
0052     writeToFiles = cms.bool(True),
0053     outFile = cms.string('TPG_linear.txt'),
0054    #### TPG config tag and version (if not given it will be automatically given ) ####
0055     TPGtag = cms.string('ENERGY'),
0056     TPGversion = cms.uint32(1),
0057                                         
0058    #### TPG calculation parameters ####
0059     useTransverseEnergy = cms.bool(False),   ## true when TPG computes transverse energy, false for energy
0060     Et_sat_EB = cms.double(400.0),           ## Saturation value (in GeV) of the TPG before the compressed-LUT (rem: with 35.84 the TPG_LSB = crystal_LSB)
0061     Et_sat_EE = cms.double(400.0),           ## Saturation value (in GeV) of the TPG before the compressed-LUT (rem: with 35.84 the TPG_LSB = crystal_LSB)
0062 
0063     sliding = cms.uint32(0),                 ## Parameter used for the FE data format, should'nt be changed
0064 
0065     weight_timeShift = cms.double(0.),       ## weights are computed shifting the timing of the shape by this amount in ns: val>0 => shape shifted to the right
0066     weight_sampleMax = cms.uint32(3),        ## position of the maximum among the 5 samples used by the TPG amplitude filter
0067     weight_unbias_recovery = cms.bool(True), ## true if weights after int conversion are forced to have sum=0. Pb, in that case it can't have sum f*w = 1
0068 
0069     forcedPedestalValue = cms.int32(-2),     ## use this value instead of getting it from DB or MC (-1 means use DB or MC. -2 used to cope with FENIX bug)
0070                                              ## -1: means use value from DB or MC.
0071                                              ## -2: ped12 = 0 used to cope with FENIX bug
0072                                              ## -3: used with sFGVB: baseline subtracted is pedestal-offset*sin(theta)/G with G=mult*2^-(shift+2) 
0073     pedestal_offset =  cms.uint32(300),      ## pedestal offset used with option forcedPedestalValue = -3
0074 
0075     SFGVB_Threshold = cms.uint32(0),         ## used with option forcedPedestalValue = -3
0076     SFGVB_lut = cms.uint32(0),               ## used with option forcedPedestalValue = -3                                
0077 
0078     forceEtaSlice = cms.bool(True),        ## when true, same linearization coeff for all crystals belonging to a given eta slice (tower)
0079 
0080     LUT_option = cms.string('Linear'),      ## compressed LUT option can be: "Identity", "Linear", "EcalResolution"
0081     LUT_threshold_EB = cms.double(0.250),   ## All Trigger Primitives <= threshold (in GeV) will be set to 0 
0082     LUT_threshold_EE = cms.double(0.250),   ## All Trigger Primitives <= threshold (in GeV) will be set to 0 
0083     LUT_stochastic_EB = cms.double(0.03),   ## Stochastic term of the ECAL-EB ET resolution (used only if LUT_option="EcalResolution")
0084     LUT_noise_EB = cms.double(0.2),         ## noise term (GeV) of the ECAL-EB ET resolution (used only if LUT_option="EcalResolution")
0085     LUT_constant_EB = cms.double(0.005),    ## constant term of the ECAL-EB ET resolution (used only if LUT_option="EcalResolution")
0086     LUT_stochastic_EE = cms.double(0.03),   ## Stochastic term of the ECAL-EE ET resolution (used only if LUT_option="EcalResolution")
0087     LUT_noise_EE = cms.double(0.2),         ## noise term (GeV) of the ECAL-EE ET resolution (used only if LUT_option="EcalResolution")
0088     LUT_constant_EE = cms.double(0.005),    ## constant term of the ECAL-EE ET resolution (used only if LUT_option="EcalResolution")
0089 
0090     TTF_lowThreshold_EB = cms.double(1.0),   ## EB Trigger Tower Flag low threshold in GeV
0091     TTF_highThreshold_EB = cms.double(2.0),  ## EB Trigger Tower Flag high threshold in GeV
0092     TTF_lowThreshold_EE = cms.double(1.0),  ## EE Trigger Tower Flag low threshold in GeV
0093     TTF_highThreshold_EE = cms.double(2.0), ## EE Trigger Tower Flag high threshold in GeV
0094 
0095     FG_lowThreshold_EB = cms.double(0.3125),   ## EB Fine Grain Et low threshold in GeV
0096     FG_highThreshold_EB = cms.double(0.3125),  ## EB Fine Grain Et high threshold in GeV
0097     FG_lowRatio_EB = cms.double(0.8),          ## EB Fine Grain low-ratio
0098     FG_highRatio_EB = cms.double(0.8),         ## EB Fine Grain high-ratio
0099     FG_lut_EB = cms.uint32(0x08),              ## EB Fine Grain Look-up table. Put something != 0 if you really know what you do!
0100     FG_Threshold_EE = cms.double(0.0),         ## EE Fine threshold in GeV
0101     FG_lut_strip_EE = cms.uint32(0),           ## EE Fine Grain strip Look-up table
0102     FG_lut_tower_EE = cms.uint32(0)            ## EE Fine Grain tower Look-up table
0103 )
0104 
0105 process.p = cms.Path(process.TPGParamProducer)
0106