Beispiel #1
0
    CategoriesEtaMin=cms.vdouble([cat.eta_min for cat in categories]),
    CategoriesEtaMax=cms.vdouble([cat.eta_max for cat in categories]),
    CategoriesPtMin=cms.vdouble([cat.pt_min for cat in categories]),
    CategoriesPtMax=cms.vdouble([cat.pt_max for cat in categories]),
    Weights=cms.vstring(bdt_weights_histomax['v8_352']),
    WorkingPoints=cms.vdouble([
        wps[eff]
        for wps, eff in zip(working_points_histomax['v8_352'], tight_wp)
    ]),
)

# Era Modification for HGCal v9: use correct training and WPs
phase2_hgcalV9.toModify(
    egamma_identification_histomax,
    Inputs=cms.vstring(input_features_histomax['v9_394']),
    Weights=cms.vstring(bdt_weights_histomax['v9_394']),
    WorkingPoints=cms.vdouble([
        wps[eff]
        for wps, eff in zip(working_points_histomax['v9_394'], tight_wp)
    ]))

phase2_hgcalV10.toModify(
    egamma_identification_histomax,
    Inputs=cms.vstring(input_features_histomax['v10_3151']),
    Weights=cms.vstring(bdt_weights_histomax['v10_3151']),
    WorkingPoints=cms.vdouble([
        wps[eff]
        for wps, eff in zip(working_points_histomax['v10_3151'], tight_wp)
    ]))

phase2_hgcalV11.toModify(
    egamma_identification_histomax,
Beispiel #2
0
                              90.499812,  
                              90.894274,  
                              90.537470,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205,  
                              89.786205)


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify( dEdX, weights = dEdX_weights_v9 )

dEdX_weights_v10 = cms.vdouble(0.0,      # there is no layer zero
                               8.894541,  # Mev
                               10.937907,
                               10.937907,
                               10.937907,
                               10.937907,
                               10.937907,
                               10.937907,
                               10.937907,
                               10.937907,
                               10.932882,
                               10.932882,
                               10.937907,
                               10.937907,
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalHitCalibrationDefault_cfi import hgcalHitCalibrationDefault as _hgcalHitCalibrationDefault
hgcalHitCalibration = _hgcalHitCalibrationDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalHitCalibration, caloParticles = "mixData:MergedCaloTruth")

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hgcalHitCalibration, depletionFine = 120)
Beispiel #4
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiStudy_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalDigiStudy,
                        detectorNames=cms.vstring(
                            "HGCalEESensitive", "HGCalHESiliconSensitive",
                            "HGCalHEScintillatorSensitive"))
Beispiel #5
0
    HGCEE_keV2DIGI  = hgceeDigitizer.digiCfg.keV2fC,
    HGCEE_isSiFE    = HGCalUncalibRecHit.HGCEEConfig.isSiFE,
    HGCEE_fCPerMIP  = HGCalUncalibRecHit.HGCEEConfig.fCPerMIP,
    HGCHEF_keV2DIGI = hgchefrontDigitizer.digiCfg.keV2fC,
    HGCHEF_isSiFE   = HGCalUncalibRecHit.HGCHEFConfig.isSiFE,
    HGCHEF_fCPerMIP = HGCalUncalibRecHit.HGCHEFConfig.fCPerMIP,
    HGCHEB_keV2DIGI = hgchebackDigitizer.digiCfg.keV2MIP,
    HGCHEB_isSiFE   = HGCalUncalibRecHit.HGCHEBConfig.isSiFE,
    # don't produce rechit if detid is a ghost one
    rangeMask = cms.uint32(4294442496),
    rangeMatch = cms.uint32(1161838592),


    # EM Scale calibrations
    layerWeights = dEdX.weights,

    thicknessCorrection = cms.vdouble(1.132,1.092,1.084), # 100, 200, 300 um
    HGCEE_noise_fC = hgceeDigitizer.digiCfg.noise_fC,
    HGCEE_cce = hgceeDigitizer.digiCfg.chargeCollectionEfficiencies,
    HGCHEF_noise_fC = hgchefrontDigitizer.digiCfg.noise_fC,
    HGCHEF_cce = hgchefrontDigitizer.digiCfg.chargeCollectionEfficiencies,
    HGCHEB_noise_MIP = hgchebackDigitizer.digiCfg.noise_MIP,
    # algo
    algo = cms.string("HGCalRecHitWorkerSimple")

    )

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify( dEdX, weights = dEdX_weights_v9 ) 
phase2_hgcalV9.toModify( HGCalRecHit , thicknessCorrection = cms.vdouble(0.759,0.760,0.773) ) #120um, 200um, 300um
Beispiel #6
0
    process.HGCAL_noise_fC = cms.PSet(
        values=cms.vdouble(0, 0, 0),  #100,200,300 um
    )
    process.HGCAL_noise_heback = cms.PSet(
        scaleByDose=cms.bool(False),
        doseMap=cms.string(""),
        noise_MIP=cms.double(0.)  #zero noise
    )
    process.HGCAL_noises = cms.PSet(values=cms.vdouble(0, 0, 0))
    return process


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgceeDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchefrontDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchebackDigitizer,
    geometryType=cms.uint32(1),
    hitCollection=cms.string("HGCHitsHEback"),
)
phase2_hgcalV9.toModify(HGCAL_noise_fC,
                        values=[x * fC_per_ele for x in nonAgedNoises_v9])
phase2_hgcalV9.toModify(HGCAL_noises, values=[x for x in nonAgedNoises_v9])
Beispiel #7
0
    HGCEE_keV2DIGI  = hgceeDigitizer.digiCfg.keV2fC,
    HGCEE_isSiFE    = HGCalUncalibRecHit.HGCEEConfig.isSiFE,
    HGCEE_fCPerMIP  = HGCalUncalibRecHit.HGCEEConfig.fCPerMIP,
    HGCHEF_keV2DIGI = hgchefrontDigitizer.digiCfg.keV2fC,
    HGCHEF_isSiFE   = HGCalUncalibRecHit.HGCHEFConfig.isSiFE,
    HGCHEF_fCPerMIP = HGCalUncalibRecHit.HGCHEFConfig.fCPerMIP,
    HGCHEB_keV2DIGI = hgchebackDigitizer.digiCfg.keV2MIP,
    HGCHEB_isSiFE   = HGCalUncalibRecHit.HGCHEBConfig.isSiFE,
    # don't produce rechit if detid is a ghost one
    rangeMask = cms.uint32(4294442496),
    rangeMatch = cms.uint32(1161838592),


    # EM Scale calibrations
    layerWeights = dEdX_weights,

    thicknessCorrection = cms.vdouble(1.132,1.092,1.084), # 100, 200, 300 um
    HGCEE_noise_fC = hgceeDigitizer.digiCfg.noise_fC,
    HGCEE_cce = hgceeDigitizer.digiCfg.chargeCollectionEfficiencies,
    HGCHEF_noise_fC = hgchefrontDigitizer.digiCfg.noise_fC,
    HGCHEF_cce = hgchefrontDigitizer.digiCfg.chargeCollectionEfficiencies,
    HGCHEB_noise_MIP = hgchebackDigitizer.digiCfg.noise_MIP,
    # algo
    algo = cms.string("HGCalRecHitWorkerSimple")

    )

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify( HGCalRecHit , layerWeights = dEdX_weights_v9 ) 
phase2_hgcalV9.toModify( HGCalRecHit , thicknessCorrection = cms.vdouble(0.759,0.760,0.773) ) #120um, 200um, 300um
Beispiel #8
0
    71.265149,
    90.499812,
    90.894274,
    90.537470,
    89.786205,
    89.786205,
    89.786205,
    89.786205,
    89.786205,
    89.786205,
    89.786205,
    89.786205,
    89.786205)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(dEdX, weights=dEdX_weights_v9)

dEdX_weights_v10 = cms.vdouble(
    0.0,  # there is no layer zero
    8.894541,  # Mev
    10.937907,
    10.937907,
    10.937907,
    10.937907,
    10.937907,
    10.937907,
    10.937907,
    10.937907,
    10.932882,
    10.932882,
    10.937907,
Beispiel #9
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalBHAnalysis_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalBHAnalysis,
         GeometryType  = cms.untracked.int32(1),
         HitCollection = cms.untracked.string("HGCHitsHEback"),
)
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalSimHitValidationEE_cfi import *

hgcalSimHitValidationHEF = hgcalSimHitValidationEE.clone(
    DetectorName=cms.string("HGCalHESiliconSensitive"),
    CaloHitSource=cms.string("HGCHitsHEfront"))

hgcalSimHitValidationHEB = hgcalSimHitValidationEE.clone(
    DetectorName=cms.string("HCal"), CaloHitSource=cms.string("HcalHits"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcalSimHitValidationHEB,
    DetectorName=cms.string("HGCalHEScintillatorSensitive"),
    CaloHitSource=cms.string("HGCHitsHEback"),
)
Beispiel #11
0
    'HGCalHitValidation',
    geometrySource=cms.untracked.vstring("HGCalEESensitive",
                                         "HGCalHESiliconSensitive", "Hcal"),
    eeSimHitSource=cms.InputTag("g4SimHits", "HGCHitsEE"),
    fhSimHitSource=cms.InputTag("g4SimHits", "HGCHitsHEfront"),
    bhSimHitSource=cms.InputTag("g4SimHits", "HcalHits"),
    eeRecHitSource=cms.InputTag("HGCalRecHit", "HGCEERecHits"),
    fhRecHitSource=cms.InputTag("HGCalRecHit", "HGCHEFRecHits"),
    bhRecHitSource=cms.InputTag("HGCalRecHit", "HGCHEBRecHits"),
    ietaExcludeBH=cms.vint32([]),
    ifHCAL=cms.bool(False),
    ifHCALsim=cms.bool(True),
)

from Validation.HGCalValidation.hgcalHitCalibration_cfi import hgcalHitCalibration
from Validation.HGCalValidation.caloparticlevalidation_cfi import caloparticlevalidation

hgcalHitValidationSequence = cms.Sequence(hgcalHitValidation +
                                          hgcalHitCalibration +
                                          caloparticlevalidation)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(
    hgcalHitValidation,
    bhSimHitSource=cms.InputTag("g4SimHits", "HGCHitsHEback"),
    geometrySource=cms.untracked.vstring("HGCalEESensitive",
                                         "HGCalHESiliconSensitive",
                                         "HGCalHEScintillatorSensitive"),
    ifHCALsim=cms.bool(False),
)
                               dR_multicluster_byLayer_coefficientB=cms.vdouble(),
                               minPt_multicluster=cms.double(0.5),  # minimum pt of the multicluster (GeV)
                               nBins_R_histo_multicluster=cms.uint32(36),
                               nBins_Phi_histo_multicluster=cms.uint32(216),
                               binSumsHisto=binSums,
                               threshold_histo_multicluster=cms.double(10.),
                               cluster_association=cms.string("NearestNeighbour"),
                               EGIdentification=egamma_identification_histomax.clone(),
                               neighbour_weights=neighbour_weights_1stOrder
                               )
# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds of the clustering seeds
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(histoMax_C3d_params,
                        threshold_histo_multicluster=7.5,  # MipT
                        )


histoMaxVariableDR_C3d_params = histoMax_C3d_params.clone(
        dR_multicluster = cms.double(0.),
        dR_multicluster_byLayer_coefficientA = cms.vdouble(dr_layerbylayer),
        dR_multicluster_byLayer_coefficientB = cms.vdouble([0]*(MAX_LAYERS+1))
        )


histoSecondaryMax_C3d_params = histoMax_C3d_params.clone(
        type_multicluster = cms.string('HistoSecondaryMaxC3d')
        )

Beispiel #13
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiStudyEE_cfi import *

hgcalDigiStudyHEF = hgcalDigiStudyEE.clone(
    detectorName = cms.string("HGCalHESiliconSensitive"),
    digiSource   = cms.InputTag("hgcalDigis","HEfront"))

hgcalDigiStudyHEB = hgcalDigiStudyEE.clone(
    detectorName = cms.string("HCal"),
    digiSource   = cms.InputTag("hgcalDigis","HEback"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalDigiStudyHEB,
                        detectorName = cms.string("HGCalHEScintillatorSensitive")
                        )
        isSiFE=cms.bool(False),
        adcNbits=hgchebackDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation=hgchebackDigitizer.digiCfg.feCfg.adcSaturation_fC,
        fCPerMIP=cms.vdouble(1.0, 1.0, 1.0)  #dummy values, it's scintillator
    ),
    HGCHFNoseConfig=cms.PSet(
        isSiFE=cms.bool(False),
        # adc information
        adcNbits=hfnoseDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation=hfnoseDigitizer.digiCfg.feCfg.adcSaturation_fC,
        #tdc information
        tdcNbits=hfnoseDigitizer.digiCfg.feCfg.tdcNbits,
        tdcSaturation=hfnoseDigitizer.digiCfg.feCfg.tdcSaturation_fC,
        tdcOnset=hfnoseDigitizer.digiCfg.feCfg.tdcOnset_fC,
        toaLSB_ns=hfnoseDigitizer.digiCfg.feCfg.toaLSB_ns,
        fCPerMIP=cms.vdouble(1.25, 2.57, 3.88)  #100um, 200um, 300um
    ),
    algo=cms.string("HGCalUncalibRecHitWorkerWeights"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(HGCalUncalibRecHit.HGCEEConfig, fCPerMIP=fCPerMIP_v9)
phase2_hgcalV9.toModify(HGCalUncalibRecHit.HGCHEFConfig, fCPerMIP=fCPerMIP_v9)

from Configuration.Eras.Modifier_phase2_hgcalV10_cff import phase2_hgcalV10
phase2_hgcalV10.toModify(HGCalUncalibRecHit.HGCEEConfig, fCPerMIP=fCPerMIP_v10)
phase2_hgcalV10.toModify(HGCalUncalibRecHit.HGCHEFConfig,
                         fCPerMIP=fCPerMIP_v10)

from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose
phase2_hfnose.toModify(HGCalUncalibRecHit.HGCHFNoseConfig, isSiFE=True)
Beispiel #15
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcHitAnalysis_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcHitAnalysis,
         geometrySource = cms.untracked.vstring("HGCalEESensitive",
                                                "HGCalHESiliconSensitive",
                                                "HGCalHEScintillatorSensitive"),
         bhSimHitSource = cms.InputTag("g4SimHits","HGCHitsHEback"),
)
                          TCThreshold_fC = cms.double(0.),
                          TCThresholdBH_MIP = cms.double(0.),
                          triggercell_threshold_silicon = cms.double(0.),
                          triggercell_threshold_scintillator = cms.double(0.),
                          )


supertc_conc_proc = cms.PSet(ProcessorName  = cms.string('HGCalConcentratorProcessorSelection'),
                             Method = cms.string('superTriggerCellSelect'),
                             stcSize = cms.vuint32(4,4,4)
                             )


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds of the FE selection
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(threshold_conc_proc,
                        triggercell_threshold_silicon=1.5,  # MipT
                        triggercell_threshold_scintillator=1.5,  # MipT
                        )


hgcalConcentratorProducer = cms.EDProducer(
    "HGCalConcentratorProducer",
    InputTriggerCells = cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    InputTriggerSums = cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    ProcessorParameters = threshold_conc_proc.clone()
    )
        adcNbits      = hgchefrontDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation = hgchefrontDigitizer.digiCfg.feCfg.adcSaturation_fC,
        #tdc information
        tdcNbits      = hgchefrontDigitizer.digiCfg.feCfg.tdcNbits,
        tdcSaturation = hgchefrontDigitizer.digiCfg.feCfg.tdcSaturation_fC,
        tdcOnset      = hgchefrontDigitizer.digiCfg.feCfg.tdcOnset_fC,
        toaLSB_ns     = hgchefrontDigitizer.digiCfg.feCfg.toaLSB_ns,
        fCPerMIP      = cms.vdouble(1.25,2.57,3.88) #100um, 200um, 300um
        ),

    HGCHEBConfig = cms.PSet(
        isSiFE  = cms.bool(False),
        adcNbits      = hgchebackDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation = hgchebackDigitizer.digiCfg.feCfg.adcSaturation_fC,
        fCPerMIP      = cms.vdouble(1.0,1.0,1.0) #dummy values, it's scintillator
        ),

    geometryType = cms.uint32(0),
    algo = cms.string("HGCalUncalibRecHitWorkerWeights")
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(HGCalUncalibRecHit,
    HGCEEdigiCollection = 'mixData:HGCDigisEE',
    HGCHEFdigiCollection = 'mixData:HGCDigisHEfront',
    HGCHEBdigiCollection = 'mixData:HGCDigisHEback',
)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(HGCalUncalibRecHit, geometryType = cms.uint32(1))
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcHitAnalysis_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcHitAnalysis,
    geometrySource=cms.untracked.vstring("HGCalEESensitive",
                                         "HGCalHESiliconSensitive",
                                         "HGCalHEScintillatorSensitive"),
    bhSimHitSource=cms.InputTag("g4SimHits", "HGCHitsHEback"),
)
endOfLifeNoises = [2400.0, 2250.0, 1750.0]


def HGCal_setEndOfLifeNoise(digitizer, process):
    process.HGCAL_noise_fC = cms.PSet(
        values=cms.vdouble([x * fC_per_ele
                            for x in endOfLifeNoises]),  #100,200,300 um
    )
    process.HGCAL_chargeCollectionEfficiencies = cms.PSet(
        values=cms.vdouble(endOfLifeCCEs))
    process.HGCAL_noise_MIP = cms.PSet(value=cms.double(1.0 / 5.0))
    process.HGCAL_noises = cms.PSet(
        values=cms.vdouble([x for x in endOfLifeNoises]))


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgceeDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchefrontDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchebackDigitizer,
    geometryType=cms.uint32(1),
    hitCollection=cms.string("HGCHitsHEback"),
)
Beispiel #20
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalRecHitValidationEE_cfi import *

hgcalRecHitValidationHEF = hgcalRecHitValidationEE.clone(
    DetectorName  = cms.string("HGCalHESiliconSensitive"),
    RecHitSource  = cms.InputTag("HGCalRecHit", "HGCHEFRecHits"))

hgcalRecHitValidationHEB = hgcalRecHitValidationEE.clone(
    DetectorName  = cms.string("HCal"),
    RecHitSource  = cms.InputTag("HGCalRecHit", "HGCHEBRecHits"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hgcalRecHitValidationHEB, DetectorName = cms.string("HGCalHEScintillatorSensitive"));

                               dR_multicluster_byLayer_coefficientA=cms.vdouble(),
                               dR_multicluster_byLayer_coefficientB=cms.vdouble(),
                               shape_threshold=cms.double(1.),
                               shape_distance=cms.double(0.015),
                               minPt_multicluster=cms.double(0.5),  # minimum pt of the multicluster (GeV)
                               cluster_association=cms.string("NearestNeighbour"),
                               EGIdentification=egamma_identification_histomax.clone(),
                               )


# V9 samples have a different defintion of the dEdx calibrations. To account for it
# we reascale the thresholds of the clustering seeds
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(histoMax_C3d_seeding_params,
                        threshold_histo_multicluster=7.5,  # MipT
                        )


histoMaxVariableDR_C3d_params = histoMax_C3d_clustering_params.clone(
        dR_multicluster = cms.double(0.),
        dR_multicluster_byLayer_coefficientA = cms.vdouble(dr_layerbylayer),
        dR_multicluster_byLayer_coefficientB = cms.vdouble([0]*(MAX_LAYERS+1))
        )


histoSecondaryMax_C3d_params = histoMax_C3d_seeding_params.clone(
        type_histoalgo = cms.string('HistoSecondaryMaxC3d')
        )

histoMaxXYVariableDR_C3d_params = histoMax_C3d_seeding_params.clone(
disconnectedTriggerLayers = [
    2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28
]

geometry = cms.PSet(
    TriggerGeometryName=cms.string('HGCalTriggerGeometryHexLayerBasedImp1'),
    L1TCellsMapping=cms.FileInPath(
        "L1Trigger/L1THGCal/data/triggercell_mapping_8inch_aligned_192_432_V8_0.txt"
    ),
    L1TModulesMapping=cms.FileInPath(
        "L1Trigger/L1THGCal/data/panel_mapping_tdr_0.txt"),
    L1TCellNeighborsMapping=cms.FileInPath(
        "L1Trigger/L1THGCal/data/triggercell_neighbor_mapping_8inch_aligned_192_432_0.txt"
    ),
    L1TCellsBHMapping=cms.FileInPath(
        "L1Trigger/L1THGCal/data/triggercell_mapping_BH_3x3_30deg_0.txt"),
    L1TCellNeighborsBHMapping=cms.FileInPath(
        "L1Trigger/L1THGCal/data/triggercell_neighbor_mapping_BH_3x3_30deg_0.txt"
    ),
    DisconnectedModules=cms.vuint32(0),
    DisconnectedLayers=cms.vuint32(disconnectedTriggerLayers))

hgcalTriggerGeometryESProducer = cms.ESProducer(
    'HGCalTriggerGeometryESProducer',
    TriggerGeometry=geometry,
    isV9Geometry=cms.bool(False))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hgcalTriggerGeometryESProducer, isV9Geometry=True)
import FWCore.ParameterSet.Config as cms

minEtaCorrection = cms.double(1.4)
maxEtaCorrection = cms.double(3.0)
hadronCorrections = cms.PSet(
    value=cms.vdouble(1.24, 1.24, 1.24, 1.23, 1.24, 1.25, 1.29, 1.29))
egammaCorrections = cms.PSet(
    value=cms.vdouble(1.00, 1.00, 1.01, 1.01, 1.02, 1.03, 1.04, 1.04))

hadronCorrections_hgcalV9 = cms.vdouble(1.28, 1.28, 1.24, 1.19, 1.17, 1.17,
                                        1.17, 1.17)
egammaCorrections_hgcalV9 = cms.vdouble(1.00, 1.00, 1.01, 1.01, 1.02, 1.01,
                                        1.01, 1.01)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hadronCorrections, value=hadronCorrections_hgcalV9)
phase2_hgcalV9.toModify(egammaCorrections, value=egammaCorrections_hgcalV9)
Beispiel #24
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalSimHitValidationEE_cfi import *

hgcalSimHitValidationHEF = hgcalSimHitValidationEE.clone(
    DetectorName  = cms.string("HGCalHESiliconSensitive"),
    CaloHitSource = cms.string("HGCHitsHEfront"))

hgcalSimHitValidationHEB = hgcalSimHitValidationEE.clone(
    DetectorName  = cms.string("HCal"),
    CaloHitSource = cms.string("HcalHits"))


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalSimHitValidationHEB,
    DetectorName  = cms.string("HGCalHEScintillatorSensitive"),
    CaloHitSource = cms.string("HGCHitsHEback"),
)
Beispiel #25
0
    premix_stage1.toModify(_m, premixStage1 = True)

#function to set noise to aged HGCal
endOfLifeCCEs = [0.5, 0.5, 0.7]
endOfLifeNoises = [2400.0,2250.0,1750.0]
def HGCal_setEndOfLifeNoise(digitizer,process):
    process.HGCAL_noise_fC = cms.PSet(
        values = cms.vdouble( [x*fC_per_ele for x in endOfLifeNoises] ), #100,200,300 um
        )
    process.HGCAL_chargeCollectionEfficiencies = cms.PSet(
        values = cms.vdouble(endOfLifeCCEs)
        )
    process.HGCAL_noise_MIP = cms.PSet(
        value = cms.double( 1.0/5.0 )
        )
    process.HGCAL_noises = cms.PSet(
        values = cms.vdouble([x for x in endOfLifeNoises])
        )

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify( hgceeDigitizer,
      geometryType      = cms.uint32(1),
)
phase2_hgcalV9.toModify( hgchefrontDigitizer,
      geometryType      = cms.uint32(1),
)
phase2_hgcalV9.toModify( hgchebackDigitizer,
      geometryType      = cms.uint32(1),
)
Beispiel #26
0
import FWCore.ParameterSet.Config as cms

from Geometry.HGCalGeometry.hgcalEETestNeighbor_cfi import *

hgcalHEFTestNeighbor = hgcalEETestNeighbor.clone(
    detector = cms.string("HGCalHESiliconSensitive"))

hgcalHEBTestNeighbor = hgcalEETestNeighbor.clone(
    detector = cms.string("HCal"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalHEBTestNeighbor,
                        detector = cms.string("HGCalHEScintillatorSensitive")
                        )
Beispiel #27
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiStudyEE_cfi import *

hgcalDigiStudyHEF = hgcalDigiStudyEE.clone(
    detectorName = cms.string("HGCalHESiliconSensitive"),
    digiSource   = cms.InputTag("hgcalDigis","HEfront"),
    layers       = cms.untracked.int32(24))

hgcalDigiStudyHEB = hgcalDigiStudyEE.clone(
    detectorName = cms.string("HCal"),
    digiSource   = cms.InputTag("hgcalDigis","HEback"),
    layers       = cms.untracked.int32(24))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalDigiStudyHEB,
                        detectorName = cms.string("HGCalHEScintillatorSensitive")
                        )
Beispiel #28
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiStudy_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalDigiStudy,
                        detectorNames = cms.vstring("HGCalEESensitive",
                                                    "HGCalHESiliconSensitive",
                                                    "HGCalHEScintillatorSensitive")
                        )
Beispiel #29
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalRecHitStudyEE_cfi import *

hgcalRecHitStudyFH = hgcalRecHitStudyEE.clone(
    DetectorName  = cms.string("HGCalHESiliconSensitive"),
    RecHitSource  = cms.InputTag("HGCalRecHit", "HGCHEFRecHits"))

hgcalRecHitStudyBH = hgcalRecHitStudyEE.clone(
    DetectorName  = cms.string("HCal"),
    RecHitSource  = cms.InputTag("HGCalRecHit", "HGCHEBRecHits"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalRecHitStudyBH,
    DetectorName  = cms.string("HGCalHEScintillatorSensitive"),
)
Beispiel #30
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.HGCalRecHitsClient_cfi import *

hgcalRecHitClientHEF = hgcalRecHitClientEE.clone(
    DetectorName=cms.string("HGCalHESiliconSensitive"))

hgcalRecHitClientHEB = hgcalRecHitClientEE.clone(
    DetectorName=cms.string("HCal"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcalRecHitClientHEB,
    DetectorName=cms.string("HGCalHEScintillatorSensitive"),
)
Beispiel #31
0
        pcrossingFrames = theMixObjects.mixSH.pcrossingFrames + [ 'MuonME0Hits' ]
    )
)
from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
phase2_hgcal.toModify( theMixObjects,
    mixCH = dict(
        input = theMixObjects.mixCH.input + [ cms.InputTag("g4SimHits",hgceeDigitizer.hitCollection.value()),
                                              cms.InputTag("g4SimHits",hgchefrontDigitizer.hitCollection.value()) ],
        subdets = theMixObjects.mixCH.subdets + [ hgceeDigitizer.hitCollection.value(),
                                                  hgchefrontDigitizer.hitCollection.value() ],
    )
)
from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify( theMixObjects,
    mixCH = dict(
        input = theMixObjects.mixCH.input + [ cms.InputTag("g4SimHits",hgchebackDigitizer.hitCollection.value()) ],
        subdets = theMixObjects.mixCH.subdets + [ hgchebackDigitizer.hitCollection.value() ],
    )
)
from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose
phase2_hfnose.toModify( theMixObjects,
    mixCH = dict(
        input = theMixObjects.mixCH.input + [ cms.InputTag("g4SimHits",hfnoseDigitizer.hitCollection.value()) ],
        subdets = theMixObjects.mixCH.subdets + [ hfnoseDigitizer.hitCollection.value() ],
    )
)

from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing_layer.toModify( theMixObjects,
    mixSH = dict(
        input = theMixObjects.mixSH.input + [ cms.InputTag("g4SimHits","FastTimerHitsBarrel"), cms.InputTag("g4SimHits","FastTimerHitsEndcap") ],
        subdets = theMixObjects.mixSH.subdets + [ 'FastTimerHitsBarrel','FastTimerHitsEndcap' ],
Beispiel #32
0
        adcNbits      = hgchefrontDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation = hgchefrontDigitizer.digiCfg.feCfg.adcSaturation_fC,
        #tdc information
        tdcNbits      = hgchefrontDigitizer.digiCfg.feCfg.tdcNbits,
        tdcSaturation = hgchefrontDigitizer.digiCfg.feCfg.tdcSaturation_fC,
        tdcOnset      = hgchefrontDigitizer.digiCfg.feCfg.tdcOnset_fC,
        toaLSB_ns     = hgchefrontDigitizer.digiCfg.feCfg.toaLSB_ns,
        fCPerMIP      = cms.vdouble(1.25,2.57,3.88) #100um, 200um, 300um
        ),

    HGCHEBConfig = cms.PSet(
        isSiFE  = cms.bool(False),
        adcNbits      = hgchebackDigitizer.digiCfg.feCfg.adcNbits,
        adcSaturation = hgchebackDigitizer.digiCfg.feCfg.adcSaturation_fC,
        fCPerMIP      = cms.vdouble(1.0,1.0,1.0) #dummy values, it's scintillator
        ),

    algo = cms.string("HGCalUncalibRecHitWorkerWeights")
)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify( HGCalUncalibRecHit.HGCEEConfig , fCPerMIP = fCPerMIP_v9 ) 
phase2_hgcalV9.toModify( HGCalUncalibRecHit.HGCHEFConfig , fCPerMIP = fCPerMIP_v9 )

from Configuration.Eras.Modifier_phase2_hgcalV10_cff import phase2_hgcalV10
phase2_hgcalV10.toModify( HGCalUncalibRecHit.HGCEEConfig , fCPerMIP = fCPerMIP_v10 ) 
phase2_hgcalV10.toModify( HGCalUncalibRecHit.HGCHEFConfig , fCPerMIP = fCPerMIP_v10 )



c2d_calib_pset = cms.PSet(calibSF_cluster=cms.double(1.),
                          layerWeights=layercalibparam.TrgLayer_weights,
                          applyLayerCalibration=cms.bool(True))

c2d_thresholds_pset = cms.PSet(seeding_threshold_silicon=cms.double(5.),
                               seeding_threshold_scintillator=cms.double(5.),
                               clustering_threshold_silicon=cms.double(2.),
                               clustering_threshold_scintillator=cms.double(2.))

# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds for the clustering
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(c2d_thresholds_pset,
                        seeding_threshold_silicon=3.75,
                        seeding_threshold_scintillator=3.75,
                        clustering_threshold_silicon=1.5,
                        clustering_threshold_scintillator=1.5,
                        )

# we still don't have layer calibrations for V9 geometry. Switching this off we
# use the dEdx calibrated energy of the TCs
phase2_hgcalV9.toModify(c2d_calib_pset,
                        applyLayerCalibration=False
                        )


dummy_C2d_params = cms.PSet(c2d_calib_pset,
                            clusterType=cms.string('dummyC2d')
                            )

Beispiel #34
0
    simVertexCollection=cms.InputTag('g4SimHits'),
    genParticleCollection=cms.InputTag('genParticles'),
    allowDifferentSimHitProcesses=cms.bool(
        False),  # should be True for FastSim, False for FullSim
    HepMCProductLabel=cms.InputTag('generatorSmeared'),
)

from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1

premix_stage1.toModify(caloParticles, premixStage1=True)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    caloParticles,
    simHitCollections=dict(
        hgc={2: cms.InputTag('g4SimHits', 'HGCHitsHEback')}),
)

# Uncommented the following block before part 2 as per Maria's instruction
from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose

phase2_hfnose.toModify(
    caloParticles,
    simHitCollections=dict(hgc=caloParticles.simHitCollections.hgc +
                           [cms.InputTag('g4SimHits', 'HFNoseHits')],
                           hcal=cms.VInputTag(
                               cms.InputTag('g4SimHits', 'HcalHits'))))

from Configuration.ProcessModifiers.run3_ecalclustering_cff import run3_ecalclustering
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalSimHitStudy_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcalSimHitStudy,
    detectorNames=cms.vstring("HGCalEESensitive", "HGCalHESiliconSensitive",
                              "HGCalHEScintillatorSensitive"),
    caloHitSources=cms.vstring('HGCHitsEE', 'HGCHitsHEfront', 'HGCHitsHEback'))
import FWCore.ParameterSet.Config as cms

minEtaCorrection = cms.double(1.4)
maxEtaCorrection = cms.double(3.0)
hadronCorrections = cms.PSet(value = cms.vdouble(1.24, 1.24, 1.24, 1.23, 1.24, 1.25, 1.29, 1.29))
egammaCorrections = cms.PSet(value = cms.vdouble(1.00, 1.00, 1.01, 1.01, 1.02, 1.03, 1.04, 1.04))

hadronCorrections_hgcalV9 = cms.vdouble(1.28, 1.28, 1.24, 1.19, 1.17, 1.17, 1.17, 1.17)
egammaCorrections_hgcalV9 = cms.vdouble(1.00, 1.00, 1.01, 1.01, 1.02, 1.01, 1.01, 1.01)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hadronCorrections, value = hadronCorrections_hgcalV9)
phase2_hgcalV9.toModify(egammaCorrections, value = egammaCorrections_hgcalV9)
Beispiel #37
0
                          applyLayerCalibration=cms.bool(True))

c2d_thresholds_pset = cms.PSet(
    seeding_threshold_silicon=cms.double(5.),
    seeding_threshold_scintillator=cms.double(5.),
    clustering_threshold_silicon=cms.double(2.),
    clustering_threshold_scintillator=cms.double(2.))

# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds for the clustering
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(
    c2d_thresholds_pset,
    seeding_threshold_silicon=3.75,
    seeding_threshold_scintillator=3.75,
    clustering_threshold_silicon=1.5,
    clustering_threshold_scintillator=1.5,
)

# we still don't have layer calibrations for V9 geometry. Switching this off we
# use the dEdx calibrated energy of the TCs
phase2_hgcalV9.toModify(c2d_calib_pset, applyLayerCalibration=False)

dummy_C2d_params = cms.PSet(c2d_calib_pset, clusterType=cms.string('dummyC2d'))

distance_C2d_params = cms.PSet(
    c2d_calib_pset,
    c2d_thresholds_pset,
    clusterType=cms.string('dRC2d'),
    dR_cluster=cms.double(6.),
Beispiel #38
0
                cms.PSet(
                    name = cms.string("PFRecHitQTestHGCalThresholdSNR"),
                    thresholdSNR = cms.double(5.0),
                   ),                 
                )
           ),
           cms.PSet(
             name = cms.string("PFHGCHEBRecHitCreator"),
             src  = cms.InputTag("HGCalRecHit:HGCHEBRecHits"),
             geometryInstance = cms.string(""),
             qualityTests = cms.VPSet(
# Enabling PFRecHitQTestHGCalThresholdSNR will filter out of the PFRecHits, all the HGCRecHits with energy not exceeding
# 5 sigma noise                     
                cms.PSet(
                    name = cms.string("PFRecHitQTestHGCalThresholdSNR"),
                    thresholdSNR = cms.double(5.0),
                   ),                 
                )
           )
    )          
)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(particleFlowRecHitHGC,
    producers = {
        0 : dict(name = "PFHGCalEERecHitCreator"),
        1 : dict(name = "PFHGCalHSiRecHitCreator"),
        2 : dict(name = "PFHGCalHScRecHitCreator"),
    }
)
Beispiel #39
0
        values = cms.vdouble([x for x in endOfLifeNoises])
        )
    return process

def HGCal_disableNoise(process):
    process.HGCAL_noise_fC = cms.PSet(
        values = cms.vdouble(0,0,0), #100,200,300 um
    )
    process.HGCAL_noise_MIP = cms.PSet(
        value = cms.double(0)
    )
    process.HGCAL_noises = cms.PSet(
        values = cms.vdouble(0,0,0)
    )
    return process

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify( hgceeDigitizer,
      geometryType      = cms.uint32(1),
)
phase2_hgcalV9.toModify( hgchefrontDigitizer,
      geometryType      = cms.uint32(1),
)
phase2_hgcalV9.toModify( hgchebackDigitizer,
      geometryType      = cms.uint32(1),
      hitCollection = cms.string("HGCHitsHEback"),
)
phase2_hgcalV9.toModify(HGCAL_noise_fC, values = [x*fC_per_ele for x in nonAgedNoises_v9])
phase2_hgcalV9.toModify(HGCAL_noises, values = [x for x in nonAgedNoises_v9])
Beispiel #40
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcGeomCheck_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcGeomCheck,
                        geometrySource = cms.untracked.vstring(
                            'HGCalEESensitive',
                            'HGCalHESiliconSensitive',
                            'HGCalHEScintillatorSensitive'),
)
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiValidationEE_cfi import *

hgcalDigiValidationHEF = hgcalDigiValidationEE.clone(
    DetectorName = cms.string("HGCalHESiliconSensitive"),
    DigiSource   = cms.InputTag("hgcalDigis","HEfront"))

hgcalDigiValidationHEB = hgcalDigiValidationEE.clone(
    DetectorName = cms.string("HCal"),
    DigiSource   = cms.InputTag("hgcalDigis","HEback"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hgcalDigiValidationHEB, DetectorName = cms.string("HGCalHEScintillatorSensitive"))
import FWCore.ParameterSet.Config as cms

from Geometry.HGCalGeometry.hgcalEETestNeighbor_cfi import *

hgcalHEFTestNeighbor = hgcalEETestNeighbor.clone(
    detector=cms.string("HGCalHESiliconSensitive"))

hgcalHEBTestNeighbor = hgcalEETestNeighbor.clone(detector=cms.string("HCal"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalHEBTestNeighbor,
                        detector=cms.string("HGCalHEScintillatorSensitive"))
Beispiel #43
0
    linLSB=cms.double(100. / 1024.),
    adcsaturationBH=adcSaturationBH_MIP,
    adcnBitsBH=adcNbitsBH,
    TCThreshold_fC=cms.double(0.),
    TCThresholdBH_MIP=cms.double(0.),
    triggercell_threshold_silicon=cms.double(0.),
    triggercell_threshold_scintillator=cms.double(0.),
)

supertc_conc_proc = cms.PSet(
    ProcessorName=cms.string('HGCalConcentratorProcessorSelection'),
    Method=cms.string('superTriggerCellSelect'),
    stcSize=cms.vuint32(4, 4, 4))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds of the FE selection
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(
    threshold_conc_proc,
    triggercell_threshold_silicon=1.5,  # MipT
    triggercell_threshold_scintillator=1.5,  # MipT
)

hgcalConcentratorProducer = cms.EDProducer(
    "HGCalConcentratorProducer",
    InputTriggerCells=cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    InputTriggerSums=cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    ProcessorParameters=threshold_conc_proc.clone())
Beispiel #44
0
                cms.InputTag('g4SimHits','HGCHitsEE'),
                cms.InputTag('g4SimHits','HGCHitsHEfront'),
                cms.InputTag('g4SimHits','HcalHits')
            ),
#            hcal = cms.VInputTag(cms.InputTag('g4SimHits','HcalHits')),
#            ecal = cms.VInputTag(
#                cms.InputTag('g4SimHits','EcalHitsEE'),
#                cms.InputTag('g4SimHits','EcalHitsEB'),
#                cms.InputTag('g4SimHits','EcalHitsES')
#            )
	),
	simTrackCollection = cms.InputTag('g4SimHits'),
	simVertexCollection = cms.InputTag('g4SimHits'),
	genParticleCollection = cms.InputTag('genParticles'),
	allowDifferentSimHitProcesses = cms.bool(False), # should be True for FastSim, False for FullSim
	HepMCProductLabel = cms.InputTag('generatorSmeared'),
)

from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1
premix_stage1.toModify(caloParticles, premixStage1 = True)

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(
    caloParticles,
    simHitCollections = dict(hgc = {2 : cms.InputTag('g4SimHits','HGCHitsHEback')} ),
)

from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toReplaceWith(caloParticles, cms.PSet()) # don't allow this to run in fastsim

Beispiel #45
0
endOfLifeCCEs = [0.5, 0.5, 0.7]
endOfLifeNoises = [2400.0, 2250.0, 1750.0]


def HGCal_setEndOfLifeNoise(digitizer, process):
    process.HGCAL_noise_fC = cms.PSet(
        values=cms.vdouble([x * fC_per_ele
                            for x in endOfLifeNoises]),  #100,200,300 um
    )
    process.HGCAL_chargeCollectionEfficiencies = cms.PSet(
        values=cms.vdouble(endOfLifeCCEs))
    process.HGCAL_noise_MIP = cms.PSet(value=cms.double(1.0 / 5.0))
    process.HGCAL_noises = cms.PSet(
        values=cms.vdouble([x for x in endOfLifeNoises]))


from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgceeDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchefrontDigitizer,
    geometryType=cms.uint32(1),
)
phase2_hgcalV9.toModify(
    hgchebackDigitizer,
    geometryType=cms.uint32(1),
)
                             superTCCompression = superTCCompression_proc.clone(),
                             coarseTCCompression = coarseTCCompression_proc.clone(),
                             superTCCalibration = vfe_proc.clone(),
)





from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
# V9 samples have a different defintiion of the dEdx calibrations. To account for it
# we reascale the thresholds of the FE selection
# (see https://indico.cern.ch/event/806845/contributions/3359859/attachments/1815187/2966402/19-03-20_EGPerf_HGCBE.pdf
# for more details)
phase2_hgcalV9.toModify(threshold_conc_proc,
                        threshold_silicon=1.35,  # MipT
                        threshold_scintillator=1.35,  # MipT
                        )


hgcalConcentratorProducer = cms.EDProducer(
    "HGCalConcentratorProducer",
    InputTriggerCells = cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    InputTriggerSums = cms.InputTag('hgcalVFEProducer:HGCalVFEProcessorSums'),
    ProcessorParameters = threshold_conc_proc.clone()
    )


hgcalConcentratorProducerHFNose = hgcalConcentratorProducer.clone(
    InputTriggerCells = cms.InputTag('hfnoseVFEProducer:HGCalVFEProcessorSums'),
    InputTriggerSums = cms.InputTag('hfnoseVFEProducer:HGCalVFEProcessorSums')
)
Beispiel #47
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.HGCalSimHitsClient_cfi import *

hgcalSimHitClientHEF = hgcalSimHitClientEE.clone(
    DetectorName  = cms.string("HGCalHESiliconSensitive"))

hgcalSimHitClientHEB = hgcalSimHitClientEE.clone(
    DetectorName  = cms.string("HCal"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalSimHitClientHEB,
    DetectorName  = cms.string("HGCalHEScintillatorSensitive"),
)
Beispiel #48
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalHitCalibrationDefault_cfi import hgcalHitCalibrationDefault as _hgcalHitCalibrationDefault

hgcalHitCalibration = _hgcalHitCalibrationDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(hgcalHitCalibration,
                       caloParticles="mixData:MergedCaloTruth")

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalHitCalibration, depletionFine=120)
Beispiel #49
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcGeomCheck_cfi import *

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcGeomCheck,
    geometrySource=cms.untracked.vstring('HGCalEESensitive',
                                         'HGCalHESiliconSensitive',
                                         'HGCalHEScintillatorSensitive'),
)
Beispiel #50
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalRecHitStudyEE_cfi import *

hgcalRecHitStudyFH = hgcalRecHitStudyEE.clone(
    detectorName=cms.string("HGCalHESiliconSensitive"),
    source=cms.InputTag("HGCalRecHit", "HGCHEFRecHits"))

hgcalRecHitStudyBH = hgcalRecHitStudyEE.clone(detectorName=cms.string("HCal"),
                                              source=cms.InputTag(
                                                  "HGCalRecHit",
                                                  "HGCHEBRecHits"))

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(
    hgcalRecHitStudyBH,
    detectorName=cms.string("HGCalHEScintillatorSensitive"),
)
Beispiel #51
0
    mixCH=dict(
        input=theMixObjects.mixCH.input + [
            cms.InputTag("g4SimHits", hgceeDigitizer.hitCollection.value()),
            cms.InputTag("g4SimHits",
                         hgchefrontDigitizer.hitCollection.value())
        ],
        subdets=theMixObjects.mixCH.subdets + [
            hgceeDigitizer.hitCollection.value(),
            hgchefrontDigitizer.hitCollection.value()
        ],
    ))
from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(
    theMixObjects,
    mixCH=dict(
        input=theMixObjects.mixCH.input +
        [cms.InputTag("g4SimHits", hgchebackDigitizer.hitCollection.value())],
        subdets=theMixObjects.mixCH.subdets +
        [hgchebackDigitizer.hitCollection.value()],
    ))
from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose
phase2_hfnose.toModify(
    theMixObjects,
    mixCH=dict(
        input=theMixObjects.mixCH.input +
        [cms.InputTag("g4SimHits", hfnoseDigitizer.hitCollection.value())],
        subdets=theMixObjects.mixCH.subdets +
        [hfnoseDigitizer.hitCollection.value()],
    ))

from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing_layer.toModify(