Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:46:18

0001 import FWCore.ParameterSet.Config as cms
0002 import copy # for deepcopy used below
0003 
0004 #
0005 # This file contains all scenarios as blocks
0006 # A block can be included in a config file as:
0007 #   using <block label>
0008 # in any place where a PSet could be used.
0009 #
0010 # See corresponding .cff files for examples.
0011 #
0012 # Note: following scenarios updated to new hierarchy
0013 # with CMSSW_1_7_0 (numbers only copied, scenarios were
0014 # not revised): 10/100/1000 pb-1, TrackerSurveyOnly,
0015 # TrackerSurveyLAS
0016 #
0017 # This file contains scenarios with alignable
0018 # object Ids corresponding to phase0 geometry,
0019 # for phase1 geometry scenarios please refer to: 
0020 # https://github.com/cms-sw/cmssw/blob/master/Alignment/TrackerAlignment/python/Scenarios_cff.py
0021 #
0022 # Hierarchylevels not used in this update:
0023 # TPBHalfBarrel
0024 # TPBBarrel
0025 # TPEEndcap
0026 # TIBSurface
0027 # TIBHalfShell
0028 # TIBHalfBarrel
0029 # TIBBarrel
0030 # TIDSide
0031 # TOBBarrel
0032 # TECRing
0033 # TECEndcap
0034 # -----------------------------------------------------------------------
0035 # General settings common to all scenarios
0036 MisalignmentScenarioSettings = cms.PSet(
0037     setRotations = cms.bool(True),
0038     setTranslations = cms.bool(True),
0039     seed = cms.int32(1234567),
0040     distribution = cms.string('gaussian'),
0041     setError = cms.bool(True)
0042 )
0043 # -----------------------------------------------------------------------
0044 #  "Misalignment" scenario without misalignment...
0045 NoMovementsScenario = cms.PSet(
0046     MisalignmentScenarioSettings
0047 )
0048 
0049 #--------------------------------------------------------
0050 # Move ring 7 of of TEC in localY by 1.33 mm
0051 
0052 def TECRing7Shift(shift):
0053   shift_Ring7_Units = cms.PSet( DetUnits = cms.PSet(dYlocal = cms.double(shift)))
0054   scenario = cms.PSet(
0055     MisalignmentScenarioSettings,
0056     TECEndcaps = cms.PSet(
0057       distribution = cms.string('fixed'),
0058       TECDisk1_2_3 = cms.PSet(
0059         TECRing7 = cms.PSet( shift_Ring7_Units )# TECRing7
0060       ),
0061       TECDisk4_5_6 = cms.PSet(
0062         TECRing6 = cms.PSet( shift_Ring7_Units )# TECRing6
0063       ),
0064       TECDisk7_8 = cms.PSet(
0065         TECRing5 = cms.PSet( shift_Ring7_Units )# TECRing5
0066       ),
0067       TECDisk9 = cms.PSet(
0068         TECRing4 = cms.PSet( shift_Ring7_Units )# TECRing4
0069       )
0070     )#TECEndcaps
0071   )#scenario
0072   return scenario
0073 
0074 
0075 TECRing7Plus133mmScenario = TECRing7Shift(0.133)
0076 TECRing7Minus133mmScenario = TECRing7Shift(-0.133)
0077 
0078 # -----------------------------------------------------------------------
0079 # LS1BPixRepairScenario
0080 # ---------------------
0081 # This scenario mimics the shifts introduced by the BPix repair work
0082 # during LS1. It contains only the aditional movements. It is intended
0083 # for use in realignment studies.
0084 # Object presented in the TkAlignment meeting of Oct 30, 2014
0085 # https://indico.cern.ch/event/337181/, talk by Ekaterina Avdeeva
0086 # -----------------------------------------------------------------------
0087 
0088 shift_0006_000027 = cms.PSet(
0089         dXlocal = cms.double(0.006), phiXlocal = cms.double(0.00027),
0090         dYlocal = cms.double(0.006), phiYlocal = cms.double(0.00027),
0091         dZlocal = cms.double(0.006), phiZlocal = cms.double(0.00027)
0092 )# end of shift_0006_000027
0093 
0094 LS1BPixRepair_TPBHalfBarrel2 = cms.PSet(
0095     TPBHalfBarrel2=cms.PSet(
0096         TPBLayers=cms.PSet(
0097             dX= cms.double(0.01),
0098             dY= cms.double(0.01),
0099             dZ= cms.double(0.02),
0100             TPBLadders=cms.PSet(
0101                 DetUnit1=cms.PSet( shift_0006_000027 ),#DetUnit1
0102                 DetUnit2=cms.PSet( shift_0006_000027 ),#DetUnit2
0103                 DetUnit3=cms.PSet( shift_0006_000027 ),#DetUnit3
0104                 DetUnit4=cms.PSet( shift_0006_000027 ) #DetUnit4
0105             )#TPBLadders
0106         )#TPBLayers
0107     )#TPBHalfBarrel2
0108 )# end of LS1BPixRepair_TPBHalfBarrel2
0109 
0110 LS1BPixRepairScenario = cms.PSet(
0111     MisalignmentScenarioSettings,
0112     LS1BPixRepair_TPBHalfBarrel2
0113 )
0114 
0115 LS1BPixRepairAndTECRing7Plus133mmScenario = cms.PSet(
0116     TECRing7Plus133mmScenario,
0117     LS1BPixRepair_TPBHalfBarrel2
0118 )
0119 
0120 LS1BPixRepairAndTECRing7Minus133mmScenario = cms.PSet(
0121     TECRing7Minus133mmScenario,
0122     LS1BPixRepair_TPBHalfBarrel2
0123 )
0124 
0125 
0126 # -----------------------------------------------------------------------
0127 # CSA14 scenario
0128 # See https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAl1402 for a
0129 # justification of these values. This scenario has to be applied on top
0130 # of an existing MC object, not on top of IDEAL.
0131 # This scenario has been used to produce the CSA14 50ns scenario
0132 #
0133 
0134 shift_0050_10em06 = cms.PSet(
0135         dXlocal = cms.double(0.0050), phiXlocal = cms.double(10e-06),
0136         dYlocal = cms.double(0.0050), phiYlocal = cms.double(10e-06),
0137         dZlocal = cms.double(0.0050), phiZlocal = cms.double(10e-06)
0138 )# end of shift_0050_10em06
0139 
0140 TrackerCSA14_TPBHalfBarrel1 = cms.PSet(
0141         TPBHalfBarrel1 = cms.PSet(
0142                 TPBLayer3 = cms.PSet(
0143                         TPBLadder1 = cms.PSet(
0144                                 DetUnit1 = cms.PSet( shift_0050_10em06 ),
0145                                 DetUnit2 = cms.PSet( shift_0050_10em06 ),
0146                                 DetUnit3 = cms.PSet( shift_0050_10em06 ),
0147                                 DetUnit4 = cms.PSet( shift_0050_10em06 ),
0148                                 DetUnit5 = cms.PSet( shift_0050_10em06 ),
0149                                 DetUnit6 = cms.PSet( shift_0050_10em06 ),
0150                                 DetUnit7 = cms.PSet( shift_0050_10em06 ),
0151                                 DetUnit8 = cms.PSet( shift_0050_10em06 ),
0152                         ), # TPBLadder1
0153                         TPBLadder3 = cms.PSet(
0154                                 DetUnit1 = cms.PSet( shift_0050_10em06 ),
0155                                 DetUnit2 = cms.PSet( shift_0050_10em06 ),
0156                                 DetUnit3 = cms.PSet( shift_0050_10em06 ),
0157                                 DetUnit4 = cms.PSet( shift_0050_10em06 ),
0158                         ), # TPBLadder3
0159                         TPBLadder9 = cms.PSet(
0160                                 DetUnit6 = cms.PSet( shift_0050_10em06 ),
0161                                 DetUnit7 = cms.PSet( shift_0050_10em06 ),
0162                                 DetUnit8 = cms.PSet( shift_0050_10em06 ),
0163                         ), # TPBLadder9
0164                         TPBLadder21 = cms.PSet(
0165                                 DetUnit1 = cms.PSet( shift_0050_10em06 ),
0166                                 DetUnit2 = cms.PSet( shift_0050_10em06 ),
0167                                 DetUnit3 = cms.PSet( shift_0050_10em06 )
0168                         )# TPBLadder21
0169                 )# TPBLayer3
0170         )# TPBHalfBarrel1
0171 )#end of TrackerCSA14_TPBHalfBarrel1
0172 
0173 TrackerCSA14_BarrelsGeneralSettings = cms.PSet(
0174         distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0175         TPBHalfBarrels = cms.PSet( distribution = cms.string('flat'), dX = cms.double(0.0005), dY = cms.double(0.0010),
0176                 dZ = cms.double(0.0050), phiX = cms.double(30e-6),
0177                 phiY = cms.double(30e-06), phiZ = cms.double(30e-06)),# TPBHalfBarrels
0178         DetUnits = cms.PSet( dXlocal = cms.double(0.0001), dYlocal = cms.double(0.0001),
0179                 dZlocal = cms.double(0.0001), phiXlocal = cms.double(0.5e-04),
0180                 phiYlocal = cms.double(0.5e-04), phiZlocal = cms.double(0.5e-04))# DetUnits
0181 )#end of TrackerCSA14_BarrelsGeneralSettings
0182 
0183 shift_0010_10em06 = cms.PSet(
0184         dXlocal = cms.double(0.01), phiXlocal = cms.double(10e-06),
0185         dYlocal = cms.double(0.01), phiYlocal = cms.double(10e-06),
0186         dZlocal = cms.double(0.01), phiZlocal = cms.double(10e-06)
0187 )# end of shift_001_10em06
0188 
0189 shift_00002_05em04 = cms.PSet(
0190         dXlocal = cms.double(0.0002), phiXlocal = cms.double(0.5e-04),
0191         dYlocal = cms.double(0.0002), phiYlocal = cms.double(0.5e-04),
0192         dZlocal = cms.double(0.0002), phiZlocal = cms.double(0.5e-04)
0193 )# end of shift_00002_05em04
0194 
0195 TrackerCSA14_OtherThanBarrels = cms.PSet(
0196  TPEEndcap1 = cms.PSet(
0197     distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0198      dX = cms.double(0.01), dY = cms.double(0.01), dZ = cms.double(0.01),
0199     phiX = cms.double(10e-06), phiY = cms.double(10e-06), phiZ = cms.double(10e-06)
0200  ),#TPEEndcap1
0201  TPEEndcap2 = cms.PSet(
0202     distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0203     TPEPanels = cms.PSet ( shift_0010_10em06 ), # TPEPanels
0204     TPEHalfCylinder1 = cms.PSet(
0205         TPEHalfDisk1 = cms.PSet(
0206              TPEBlade1 = cms.PSet(
0207                 TPEPanel1 = cms.PSet(
0208                     DetUnits = cms.PSet( shift_0010_10em06 )#DetUnits
0209                 )# TPEPanel1
0210             ), #TPEBlade1
0211              TPEBlade8 = cms.PSet(
0212                 TPEPanel2 = cms.PSet(
0213                     DetUnits = cms.PSet( shift_0010_10em06 ) #DetUnits
0214                 )# TPEPanel2
0215             )#TPEBlade8
0216          )#TPEHalfDisk1
0217     ),#TPEHalfCylinder1
0218      TPEHalfCylinder2 = cms.PSet(
0219         TPEHalfDisk1 = cms.PSet(
0220             TPEBlade9 = cms.PSet(
0221                 TPEPanel2 = cms.PSet(
0222                     DetUnits = cms.PSet( shift_0010_10em06 ) #DetUnits
0223                 )# TPEPanel2
0224             )#TPEBlade9
0225          )#TPEHalfDisk1
0226     )#TPEHalfCylinder2
0227  ),#TPEEndcap2
0228  TIBHalfBarrels = cms.PSet(distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0229      DetUnits = cms.PSet( shift_00002_05em04 )#DetUnits
0230  ), # TIBHalfBarrels
0231  TOBHalfBarrels = cms.PSet(distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0232      DetUnits = cms.PSet( dXlocal = cms.double(0.0005), dYlocal = cms.double(0.0005),
0233         dZlocal = cms.double(0.0005), phiXlocal = cms.double(0.5e-04),
0234         phiYlocal = cms.double(0.5e-04), phiZlocal = cms.double(0.5e-04),)#DetUnits
0235  ), # TOBHalfBarrels
0236  TIDEndcaps = cms.PSet(distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0237      DetUnits = cms.PSet( shift_00002_05em04 )#DetUnits
0238  ), # TIDEndcaps
0239  TECEndcaps = cms.PSet(distribution = cms.string('gaussian'), scale = cms.double(1.0), scaleError = cms.double(1.0),
0240      DetUnits = cms.PSet( shift_00002_05em04 )#DetUnits
0241  ) # TECEndcaps
0242 )#end of TrackerCSA14_OtherThanBarrels
0243 
0244 TrackerCSA14Scenario = cms.PSet(
0245         MisalignmentScenarioSettings,
0246         TrackerCSA14_OtherThanBarrels,
0247         TPBBarrels = cms.PSet(
0248                 TrackerCSA14_BarrelsGeneralSettings,
0249                 TrackerCSA14_TPBHalfBarrel1
0250         )#TPBBarrels
0251 )#end of TrackerCSA14Scenario
0252 
0253 #------------------------------------------------------------------------
0254 # merged TrackerCSA14 and LS1BPixRepair
0255 
0256 TrackerCSA14AndLS1BPixRepairScenario = cms.PSet(
0257         MisalignmentScenarioSettings,
0258         TrackerCSA14_OtherThanBarrels,
0259         TPBBarrels = cms.PSet(
0260                 TrackerCSA14_BarrelsGeneralSettings,
0261                 TrackerCSA14_TPBHalfBarrel1,
0262                 LS1BPixRepair_TPBHalfBarrel2
0263         )#TPBBarrels
0264 )#end of TrackerCSA14AndLS1BPixRepairScenario
0265 
0266 
0267 
0268 # -----------------------------------------------------------------------
0269 # Example scenario (dummy movements)
0270 TrackerExampleScenario = cms.PSet(
0271       MisalignmentScenarioSettings,
0272       TOBHalfBarrel1 = cms.PSet(
0273         TOBLayers = cms.PSet(
0274             dX = cms.double(0.1)
0275             ),
0276         TOBLayer1 = cms.PSet(
0277             dX = cms.double(0.2)
0278             )
0279         ),
0280       TOBHalfBarrels = cms.PSet(
0281         TOBLayer1 = cms.PSet(
0282             phiX = cms.double(0.03)
0283             ),
0284         dX = cms.double(0.2)
0285         )
0286     )
0287 # -----------------------------------------------------------------------
0288 # 10 pb-1 misalignment scenario
0289 # See CMS IN 2007/036
0290 #
0291 # first helper blocks for TEC:
0292 TECRings10pb_1D = cms.PSet(
0293     DetUnits = cms.PSet(
0294         dZlocal = cms.double(0.0022),
0295         phiXlocal = cms.double(5e-05),
0296         dYlocal = cms.double(0.0022),
0297         phiZlocal = cms.double(5e-05),
0298         dXlocal = cms.double(0.0022),
0299         phiYlocal = cms.double(5e-05)
0300     )
0301 )
0302 TECRings10pb_2D = cms.PSet(
0303     Dets = cms.PSet(
0304         dZlocal = cms.double(0.0022),
0305         phiXlocal = cms.double(5e-05),
0306         dYlocal = cms.double(0.0022),
0307         phiZlocal = cms.double(5e-05),
0308         dXlocal = cms.double(0.0022),
0309         phiYlocal = cms.double(5e-05)
0310     )
0311 )
0312 # now real scenario:
0313 Tracker10pbScenario = cms.PSet(
0314     MisalignmentScenarioSettings,
0315     TIBHalfBarrels = cms.PSet(
0316         TIBLayers = cms.PSet(
0317             dZlocal = cms.double(0.01),
0318             phiXlocal = cms.double(6.5e-05),
0319             dYlocal = cms.double(0.01),
0320             phiZlocal = cms.double(6.5e-05),
0321             dXlocal = cms.double(0.01),
0322             phiYlocal = cms.double(6.5e-05)
0323         ),
0324         scale = cms.double(1.0),
0325         TIBLayer3_4 = cms.PSet(
0326             DetUnits = cms.PSet(
0327                 dZlocal = cms.double(0.018),
0328                 phiXlocal = cms.double(0.000412),
0329                 dYlocal = cms.double(0.018),
0330                 phiZlocal = cms.double(0.000412),
0331                 dXlocal = cms.double(0.018),
0332                 phiYlocal = cms.double(0.000412)
0333             )
0334         ),
0335         scaleError = cms.double(1.0),
0336         TIBLayer1_2 = cms.PSet(
0337             Dets = cms.PSet(
0338                 dZlocal = cms.double(0.018),
0339                 phiXlocal = cms.double(0.000412),
0340                 dYlocal = cms.double(0.018),
0341                 phiZlocal = cms.double(0.000412),
0342                 dXlocal = cms.double(0.018),
0343                 phiYlocal = cms.double(0.000412)
0344             )
0345         ),
0346         distribution = cms.string('gaussian'),
0347         TIBStrings = cms.PSet(
0348             dZlocal = cms.double(0.01),
0349             phiXlocal = cms.double(6.5e-05),
0350             dYlocal = cms.double(0.01),
0351             phiZlocal = cms.double(6.5e-05),
0352             dXlocal = cms.double(0.01),
0353             phiYlocal = cms.double(6.5e-05)
0354         )
0355     ),
0356     TPBHalfBarrels = cms.PSet(
0357         scale = cms.double(1.0),
0358         DetUnits = cms.PSet(
0359             dZlocal = cms.double(0.006),
0360             phiXlocal = cms.double(0.00027),
0361             dYlocal = cms.double(0.006),
0362             phiZlocal = cms.double(0.00027),
0363             distribution = cms.string('gaussian'),
0364             dXlocal = cms.double(0.006),
0365             phiYlocal = cms.double(0.00027)
0366         ),
0367         TPBLayers = cms.PSet(
0368             phiXlocal = cms.double(7e-06),
0369             phiZlocal = cms.double(7e-06),
0370             dZ = cms.double(0.001),
0371             dX = cms.double(0.001),
0372             dY = cms.double(0.001),
0373             distribution = cms.string('gaussian'),
0374             phiYlocal = cms.double(7e-06)
0375         ),
0376         scaleError = cms.double(1.0),
0377         TPBLadders = cms.PSet(
0378             dZlocal = cms.double(0.001),
0379             phiXlocal = cms.double(7e-06),
0380             dYlocal = cms.double(0.001),
0381             phiZlocal = cms.double(7e-06),
0382             distribution = cms.string('gaussian'),
0383             dXlocal = cms.double(0.001),
0384             phiYlocal = cms.double(7e-06)
0385         )
0386     ),
0387     TOBHalfBarrels = cms.PSet(
0388         scale = cms.double(1.0),
0389         TOBLayer3_4_5_6 = cms.PSet(
0390             DetUnits = cms.PSet(
0391                 dZlocal = cms.double(0.0032),
0392                 phiXlocal = cms.double(7.5e-05),
0393                 dYlocal = cms.double(0.0032),
0394                 phiZlocal = cms.double(7.5e-05),
0395                 dXlocal = cms.double(0.0032),
0396                 phiYlocal = cms.double(7.5e-05)
0397             )
0398         ),
0399         scaleError = cms.double(1.0),
0400         TOBLayers = cms.PSet(
0401             dXlocal = cms.double(0.0),
0402             dZlocal = cms.double(0.0),
0403             dYlocal = cms.double(0.0)
0404         ),
0405         TOBLayer1_2 = cms.PSet(
0406             Dets = cms.PSet(
0407                 dZlocal = cms.double(0.0032),
0408                 phiXlocal = cms.double(7.5e-05),
0409                 dYlocal = cms.double(0.0032),
0410                 phiZlocal = cms.double(7.5e-05),
0411                 dXlocal = cms.double(0.0032),
0412                 phiYlocal = cms.double(7.5e-05)
0413             )
0414         ),
0415         TOBRods = cms.PSet(
0416             dZlocal = cms.double(0.01),
0417             phiXlocal = cms.double(4e-05),
0418             dYlocal = cms.double(0.01),
0419             phiZlocal = cms.double(4e-05),
0420             dXlocal = cms.double(0.01),
0421             phiYlocal = cms.double(4e-05)
0422         ),
0423         TOBHalfBarrels = cms.PSet(
0424             dZlocal = cms.double(0.01),
0425             phiXlocal = cms.double(1e-05),
0426             dYlocal = cms.double(0.006),
0427             phiZlocal = cms.double(1e-05),
0428             dXlocal = cms.double(0.006),
0429             phiYlocal = cms.double(1e-05)
0430         ),
0431         distribution = cms.string('gaussian')
0432     ),
0433     TECEndcaps = cms.PSet(
0434         scale = cms.double(1.0),
0435         TECDisk9 = cms.PSet(
0436             TECRing2 = cms.PSet(
0437                 TECRings10pb_2D
0438             ),
0439             TECRing1_3_4 = cms.PSet(
0440                 TECRings10pb_1D
0441             )
0442         ),
0443         scaleError = cms.double(1.0),
0444         TECPetals = cms.PSet(
0445             dZlocal = cms.double(0.007),
0446             phiXlocal = cms.double(3e-05),
0447             dYlocal = cms.double(0.007),
0448             phiZlocal = cms.double(3e-05),
0449             dXlocal = cms.double(0.007),
0450             phiYlocal = cms.double(3e-05)
0451         ),
0452         TECDisks = cms.PSet(
0453             dZlocal = cms.double(0.015),
0454             phiXlocal = cms.double(1.5e-05),
0455             dYlocal = cms.double(0.006),
0456             phiZlocal = cms.double(1.5e-05),
0457             dXlocal = cms.double(0.006),
0458             phiYlocal = cms.double(1.5e-05)
0459         ),
0460         TECDisk4_5_6 = cms.PSet(
0461             TECRing2_3_5_6 = cms.PSet(
0462                 TECRings10pb_1D
0463             ),
0464             TECRing1_4 = cms.PSet(
0465                 TECRings10pb_2D
0466             )
0467         ),
0468         TECDisk7_8 = cms.PSet(
0469             TECRing3 = cms.PSet(
0470                 TECRings10pb_2D
0471             ),
0472             TECRing1_2_4_5 = cms.PSet(
0473                 TECRings10pb_1D
0474             )
0475         ),
0476         distribution = cms.string('gaussian'),
0477         TECDisk1_2_3 = cms.PSet(
0478             TECRing3_4_6_7 = cms.PSet(
0479                 TECRings10pb_1D
0480             ),
0481             TECRing1_2_5 = cms.PSet(
0482                 TECRings10pb_2D
0483             )
0484         )
0485     ),
0486     TPEEndcaps = cms.PSet(
0487         TPEPanels = cms.PSet(
0488             dZlocal = cms.double(0.001),
0489             phiXlocal = cms.double(0.0002),
0490             dYlocal = cms.double(0.001),
0491             phiZlocal = cms.double(0.0002),
0492             dXlocal = cms.double(0.001),
0493             phiYlocal = cms.double(0.0002)
0494         ),
0495         scale = cms.double(1.0),
0496         scaleError = cms.double(1.0),
0497         TPEHalfDisks = cms.PSet(
0498             dZlocal = cms.double(0.001),
0499             phiXlocal = cms.double(1.5e-05),
0500             dYlocal = cms.double(0.001),
0501             phiZlocal = cms.double(1.5e-05),
0502             dXlocal = cms.double(0.001),
0503             phiYlocal = cms.double(1.5e-05)
0504         ),
0505         DetUnits = cms.PSet(
0506             dZlocal = cms.double(0.0005),
0507             phiXlocal = cms.double(0.0001),
0508             dYlocal = cms.double(0.0005),
0509             phiZlocal = cms.double(0.0001),
0510             dXlocal = cms.double(0.0005),
0511             phiYlocal = cms.double(0.0001)
0512         ),
0513         TPEBlades = cms.PSet(
0514             dZlocal = cms.double(0.001),
0515             phiXlocal = cms.double(1.5e-05),
0516             dYlocal = cms.double(0.001),
0517             phiZlocal = cms.double(1.5e-05),
0518             dXlocal = cms.double(0.001),
0519             phiYlocal = cms.double(1.5e-05)
0520         ),
0521         distribution = cms.string('gaussian')
0522     ),
0523     TIDEndcaps = cms.PSet(
0524         scale = cms.double(1.0),
0525         scaleError = cms.double(1.0),
0526         TIDRings = cms.PSet(
0527             dZlocal = cms.double(0.0185),
0528             phiXlocal = cms.double(0.00085),
0529             dYlocal = cms.double(0.0185),
0530             phiZlocal = cms.double(0.00085),
0531             dXlocal = cms.double(0.0185),
0532             phiYlocal = cms.double(0.00085)
0533         ),
0534         TIDRing1_2 = cms.PSet(
0535             Dets = cms.PSet(
0536                 dZlocal = cms.double(0.0054),
0537                 phiXlocal = cms.double(0.00025),
0538                 dYlocal = cms.double(0.0054),
0539                 phiZlocal = cms.double(0.00025),
0540                 dXlocal = cms.double(0.0054),
0541                 phiYlocal = cms.double(0.00025)
0542             )
0543         ),
0544         TIDDisks = cms.PSet(
0545             dZlocal = cms.double(0.025),
0546             phiXlocal = cms.double(0.00038),
0547             dYlocal = cms.double(0.025),
0548             phiZlocal = cms.double(0.00038),
0549             dXlocal = cms.double(0.025),
0550             phiYlocal = cms.double(0.00038)
0551         ),
0552         distribution = cms.string('gaussian'),
0553         TIDRing3 = cms.PSet(
0554             DetUnits = cms.PSet(
0555                 dZlocal = cms.double(0.0054),
0556                 phiXlocal = cms.double(0.00025),
0557                 dYlocal = cms.double(0.0054),
0558                 phiZlocal = cms.double(0.00025),
0559                 dXlocal = cms.double(0.0054),
0560                 phiYlocal = cms.double(0.00025)
0561             )
0562         )
0563     )
0564 )
0565 # 100 pb-1 misalignment scenario
0566 # See CMS IN 2007/036
0567 # first helper blocks for TEC:
0568 TECRings100pb_1D = cms.PSet(
0569     DetUnits = cms.PSet(
0570         dZlocal = cms.double(0.0022),
0571         phiXlocal = cms.double(5e-05),
0572         dYlocal = cms.double(0.0022),
0573         phiZlocal = cms.double(5e-05),
0574         dXlocal = cms.double(0.0022),
0575         phiYlocal = cms.double(5e-05)
0576     )
0577 )
0578 TECRings100pb_2D = cms.PSet(
0579     Dets = cms.PSet(
0580         dZlocal = cms.double(0.0022),
0581         phiXlocal = cms.double(5e-05),
0582         dYlocal = cms.double(0.0022),
0583         phiZlocal = cms.double(5e-05),
0584         dXlocal = cms.double(0.0022),
0585         phiYlocal = cms.double(5e-05)
0586     )
0587 )
0588 # now real scenario:
0589 Tracker100pbScenario = cms.PSet(
0590     MisalignmentScenarioSettings,
0591     TIBHalfBarrels = cms.PSet(
0592         TIBLayers = cms.PSet(
0593             dZlocal = cms.double(0.0015),
0594             phiXlocal = cms.double(1e-05),
0595             dYlocal = cms.double(0.0015),
0596             phiZlocal = cms.double(1e-05),
0597             dXlocal = cms.double(0.0015),
0598             phiYlocal = cms.double(1e-05)
0599         ),
0600         scale = cms.double(1.0),
0601         TIBLayer3_4 = cms.PSet(
0602             DetUnits = cms.PSet(
0603                 dZlocal = cms.double(0.003),
0604                 phiXlocal = cms.double(7e-05),
0605                 dYlocal = cms.double(0.003),
0606                 phiZlocal = cms.double(7e-05),
0607                 dXlocal = cms.double(0.003),
0608                 phiYlocal = cms.double(7e-05)
0609             )
0610         ),
0611         scaleError = cms.double(1.0),
0612         TIBLayer1_2 = cms.PSet(
0613             Dets = cms.PSet(
0614                 dZlocal = cms.double(0.003),
0615                 phiXlocal = cms.double(7e-05),
0616                 dYlocal = cms.double(0.003),
0617                 phiZlocal = cms.double(7e-05),
0618                 dXlocal = cms.double(0.003),
0619                 phiYlocal = cms.double(7e-05)
0620             )
0621         ),
0622         distribution = cms.string('gaussian'),
0623         TIBStrings = cms.PSet(
0624             dZlocal = cms.double(0.003),
0625             phiXlocal = cms.double(2e-05),
0626             dYlocal = cms.double(0.003),
0627             phiZlocal = cms.double(2e-05),
0628             dXlocal = cms.double(0.003),
0629             phiYlocal = cms.double(2e-05)
0630         )
0631     ),
0632     TPBHalfBarrels = cms.PSet(
0633         scale = cms.double(1.0),
0634         DetUnits = cms.PSet(
0635             dZlocal = cms.double(0.001),
0636             phiXlocal = cms.double(4.5e-05),
0637             dYlocal = cms.double(0.001),
0638             phiZlocal = cms.double(4.5e-05),
0639             distribution = cms.string('gaussian'),
0640             dXlocal = cms.double(0.001),
0641             phiYlocal = cms.double(4.5e-05)
0642         ),
0643         TPBLayers = cms.PSet(
0644             phiXlocal = cms.double(3e-06),
0645             phiZlocal = cms.double(3e-06),
0646             dZ = cms.double(0.0005),
0647             dX = cms.double(0.0005),
0648             dY = cms.double(0.0005),
0649             distribution = cms.string('gaussian'),
0650             phiYlocal = cms.double(3e-06)
0651         ),
0652         scaleError = cms.double(1.0),
0653         TPBLadders = cms.PSet(
0654             dZlocal = cms.double(0.001),
0655             phiXlocal = cms.double(7e-06),
0656             dYlocal = cms.double(0.001),
0657             phiZlocal = cms.double(7e-06),
0658             distribution = cms.string('gaussian'),
0659             dXlocal = cms.double(0.001),
0660             phiYlocal = cms.double(7e-06)
0661         )
0662     ),
0663     TOBHalfBarrels = cms.PSet(
0664         scale = cms.double(1.0),
0665         TOBLayer3_4_5_6 = cms.PSet(
0666             DetUnits = cms.PSet(
0667                 dZlocal = cms.double(0.0032),
0668                 phiXlocal = cms.double(7e-05),
0669                 dYlocal = cms.double(0.0032),
0670                 phiZlocal = cms.double(7e-05),
0671                 dXlocal = cms.double(0.0032),
0672                 phiYlocal = cms.double(7e-05)
0673             )
0674         ),
0675         scaleError = cms.double(1.0),
0676         TOBLayers = cms.PSet(
0677             dXlocal = cms.double(0.0),
0678             dZlocal = cms.double(0.0),
0679             dYlocal = cms.double(0.0)
0680         ),
0681         TOBLayer1_2 = cms.PSet(
0682             Dets = cms.PSet(
0683                 dZlocal = cms.double(0.0032),
0684                 phiXlocal = cms.double(7e-05),
0685                 dYlocal = cms.double(0.0032),
0686                 phiZlocal = cms.double(7e-05),
0687                 dXlocal = cms.double(0.0032),
0688                 phiYlocal = cms.double(7e-05)
0689             )
0690         ),
0691         TOBRods = cms.PSet(
0692 
0693             dZlocal = cms.double(0.004),
0694             phiXlocal = cms.double(1.5e-05),
0695             dYlocal = cms.double(0.004),
0696             phiZlocal = cms.double(1.5e-05),
0697             dXlocal = cms.double(0.004),
0698             phiYlocal = cms.double(1.5e-05)
0699         ),
0700         TOBHalfBarrels = cms.PSet(
0701             dZlocal = cms.double(0.002),
0702             phiXlocal = cms.double(5e-06),
0703             dYlocal = cms.double(0.002),
0704             phiZlocal = cms.double(5e-06),
0705             dXlocal = cms.double(0.002),
0706             phiYlocal = cms.double(5e-06)
0707         ),
0708         distribution = cms.string('gaussian')
0709     ),
0710     TECEndcaps = cms.PSet(
0711         scale = cms.double(1.0),
0712         TECDisk9 = cms.PSet(
0713             TECRing2 = cms.PSet(
0714                 TECRings100pb_2D
0715             ),
0716             TECRing1_3_4 = cms.PSet(
0717                 TECRings100pb_1D
0718             )
0719         ),
0720         scaleError = cms.double(1.0),
0721         TECPetals = cms.PSet(
0722             dZlocal = cms.double(0.0055),
0723             phiXlocal = cms.double(2e-05),
0724             dYlocal = cms.double(0.0055),
0725             phiZlocal = cms.double(2e-05),
0726             dXlocal = cms.double(0.0055),
0727             phiYlocal = cms.double(2e-05)
0728         ),
0729         TECDisks = cms.PSet(
0730             dZlocal = cms.double(0.003),
0731             phiXlocal = cms.double(5e-06),
0732             dYlocal = cms.double(0.003),
0733             phiZlocal = cms.double(5e-06),
0734             dXlocal = cms.double(0.003),
0735             phiYlocal = cms.double(5e-06)
0736         ),
0737         TECDisk4_5_6 = cms.PSet(
0738             TECRing2_3_5_6 = cms.PSet(
0739                 TECRings100pb_1D
0740             ),
0741             TECRing1_4 = cms.PSet(
0742                 TECRings100pb_2D
0743             )
0744         ),
0745         TECDisk7_8 = cms.PSet(
0746             TECRing3 = cms.PSet(
0747                 TECRings100pb_2D
0748             ),
0749             TECRing1_2_4_5 = cms.PSet(
0750                 TECRings100pb_1D
0751             )
0752         ),
0753         distribution = cms.string('gaussian'),
0754         TECDisk1_2_3 = cms.PSet(
0755             TECRing3_4_6_7 = cms.PSet(
0756                 TECRings100pb_1D
0757             ),
0758             TECRing1_2_5 = cms.PSet(
0759                 TECRings100pb_2D
0760             )
0761         )
0762     ),
0763     TPEEndcaps = cms.PSet(
0764         TPEPanels = cms.PSet(
0765             dZlocal = cms.double(0.001),
0766             phiXlocal = cms.double(2.2e-05),
0767             dYlocal = cms.double(0.001),
0768             phiZlocal = cms.double(2.2e-05),
0769             dXlocal = cms.double(0.001),
0770             phiYlocal = cms.double(2.2e-05)
0771         ),
0772         scale = cms.double(1.0),
0773         scaleError = cms.double(1.0),
0774         TPEHalfDisks = cms.PSet(
0775             dZlocal = cms.double(0.001),
0776             phiXlocal = cms.double(1.5e-05),
0777             dYlocal = cms.double(0.001),
0778             phiZlocal = cms.double(1.5e-05),
0779             dXlocal = cms.double(0.001),
0780             phiYlocal = cms.double(1.5e-05)
0781         ),
0782         DetUnits = cms.PSet(
0783             dZlocal = cms.double(0.0005),
0784             phiXlocal = cms.double(1.1e-05),
0785             dYlocal = cms.double(0.0005),
0786             phiZlocal = cms.double(1.1e-05),
0787             dXlocal = cms.double(0.0005),
0788             phiYlocal = cms.double(1.1e-05)
0789         ),
0790         TPEBlades = cms.PSet(
0791             dZlocal = cms.double(0.001),
0792             phiXlocal = cms.double(1.5e-05),
0793             dYlocal = cms.double(0.001),
0794             phiZlocal = cms.double(1.5e-05),
0795             dXlocal = cms.double(0.001),
0796             phiYlocal = cms.double(1.5e-05)
0797         ),
0798         distribution = cms.string('gaussian')
0799     ),
0800     TIDEndcaps = cms.PSet(
0801         scale = cms.double(1.0),
0802         scaleError = cms.double(1.0),
0803         TIDRing3 = cms.PSet(
0804             DetUnits = cms.PSet(
0805                 dZlocal = cms.double(0.005),
0806                 phiXlocal = cms.double(0.00023),
0807                 dYlocal = cms.double(0.005),
0808                 phiZlocal = cms.double(0.00023),
0809                 dXlocal = cms.double(0.005),
0810                 phiYlocal = cms.double(0.00023)
0811             )
0812         ),
0813         TIDRing1_2 = cms.PSet(
0814             Dets = cms.PSet(
0815                 dZlocal = cms.double(0.005),
0816                 phiXlocal = cms.double(0.00023),
0817                 dYlocal = cms.double(0.005),
0818                 phiZlocal = cms.double(0.00023),
0819                 dXlocal = cms.double(0.005),
0820                 phiYlocal = cms.double(0.00023)
0821             )
0822         ),
0823         TIDDisks = cms.PSet(
0824             dZlocal = cms.double(0.0025),
0825             phiXlocal = cms.double(4e-05),
0826             dYlocal = cms.double(0.0025),
0827             phiZlocal = cms.double(4e-05),
0828             dXlocal = cms.double(0.0025),
0829             phiYlocal = cms.double(4e-05)
0830         ),
0831         distribution = cms.string('gaussian'),
0832         TIDRings = cms.PSet(
0833             dZlocal = cms.double(0.005),
0834             phiXlocal = cms.double(0.00023),
0835             dYlocal = cms.double(0.005),
0836             phiZlocal = cms.double(0.00023),
0837             dXlocal = cms.double(0.005),
0838             phiYlocal = cms.double(0.00023)
0839         )
0840     )
0841 )
0842 # -----------------------------------------------------------------------
0843 # 1000 pb-1 misalignment scenario
0844 # See CMS IN 2007/036
0845 # first helper blocks for TEC:
0846 TECRings1000pb_1D = cms.PSet(
0847     DetUnits = cms.PSet(
0848         dZlocal = cms.double(0.0022),
0849         phiXlocal = cms.double(5e-05),
0850         dYlocal = cms.double(0.0022),
0851         phiZlocal = cms.double(5e-05),
0852         dXlocal = cms.double(0.0022),
0853         phiYlocal = cms.double(5e-05)
0854     )
0855 )
0856 TECRings1000pb_2D = cms.PSet(
0857     Dets = cms.PSet(
0858         dZlocal = cms.double(0.0022),
0859         phiXlocal = cms.double(5e-05),
0860         dYlocal = cms.double(0.0022),
0861         phiZlocal = cms.double(5e-05),
0862         dXlocal = cms.double(0.0022),
0863         phiYlocal = cms.double(5e-05)
0864     )
0865 )
0866 # now real scenario:
0867 Tracker1000pbScenario = cms.PSet(
0868     MisalignmentScenarioSettings,
0869     TIBHalfBarrels = cms.PSet(
0870         TIBLayers = cms.PSet(
0871             dZlocal = cms.double(0.001),
0872             phiXlocal = cms.double(5e-06),
0873             dYlocal = cms.double(0.001),
0874             phiZlocal = cms.double(5e-06),
0875             dXlocal = cms.double(0.001),
0876             phiYlocal = cms.double(5e-06)
0877         ),
0878         scale = cms.double(1.0),
0879         TIBLayer3_4 = cms.PSet(
0880             DetUnits = cms.PSet(
0881                 dZlocal = cms.double(0.001),
0882                 phiXlocal = cms.double(2e-05),
0883                 dYlocal = cms.double(0.001),
0884                 phiZlocal = cms.double(2e-05),
0885                 dXlocal = cms.double(0.001),
0886                 phiYlocal = cms.double(2e-05)
0887             )
0888         ),
0889         scaleError = cms.double(1.0),
0890         TIBLayer1_2 = cms.PSet(
0891             Dets = cms.PSet(
0892                 dZlocal = cms.double(0.001),
0893                 phiXlocal = cms.double(2e-05),
0894                 dYlocal = cms.double(0.001),
0895                 phiZlocal = cms.double(2e-05),
0896                 dXlocal = cms.double(0.001),
0897                 phiYlocal = cms.double(2e-05)
0898             )
0899         ),
0900         distribution = cms.string('gaussian'),
0901         TIBStrings = cms.PSet(
0902             dZlocal = cms.double(0.001),
0903             phiXlocal = cms.double(5e-06),
0904             dYlocal = cms.double(0.001),
0905             phiZlocal = cms.double(5e-06),
0906             dXlocal = cms.double(0.001),
0907             phiYlocal = cms.double(5e-06)
0908         )
0909     ),
0910     TPBHalfBarrels = cms.PSet(
0911         scale = cms.double(1.0),
0912         DetUnits = cms.PSet(
0913             dZlocal = cms.double(0.0005),
0914             phiXlocal = cms.double(2.2e-05),
0915             dYlocal = cms.double(0.0005),
0916             phiZlocal = cms.double(2.2e-05),
0917             distribution = cms.string('gaussian'),
0918             dXlocal = cms.double(0.0005),
0919             phiYlocal = cms.double(2.2e-05)
0920         ),
0921         TPBLayers = cms.PSet(
0922             phiXlocal = cms.double(3e-06),
0923             phiZlocal = cms.double(3e-06),
0924             dZ = cms.double(0.0005),
0925             dX = cms.double(0.0005),
0926             dY = cms.double(0.0005),
0927             distribution = cms.string('gaussian'),
0928             phiYlocal = cms.double(3e-06)
0929         ),
0930         scaleError = cms.double(1.0),
0931         TPBLadders = cms.PSet(
0932             dZlocal = cms.double(0.0005),
0933             phiXlocal = cms.double(3e-06),
0934             dYlocal = cms.double(0.0005),
0935             phiZlocal = cms.double(3e-06),
0936             distribution = cms.string('gaussian'),
0937             dXlocal = cms.double(0.0005),
0938             phiYlocal = cms.double(3e-06)
0939         )
0940     ),
0941     TOBHalfBarrels = cms.PSet(
0942         scale = cms.double(1.0),
0943         TOBLayer3_4_5_6 = cms.PSet(
0944             DetUnits = cms.PSet(
0945                 dZlocal = cms.double(0.0018),
0946                 phiXlocal = cms.double(4e-05),
0947                 dYlocal = cms.double(0.0018),
0948                 phiZlocal = cms.double(4e-05),
0949                 dXlocal = cms.double(0.0018),
0950                 phiYlocal = cms.double(4e-05)
0951             )
0952         ),
0953         scaleError = cms.double(1.0),
0954         TOBLayers = cms.PSet(
0955             dXlocal = cms.double(0.0),
0956             dZlocal = cms.double(0.0),
0957             dYlocal = cms.double(0.0)
0958         ),
0959         TOBLayer1_2 = cms.PSet(
0960             Dets = cms.PSet(
0961                 dZlocal = cms.double(0.0018),
0962                 phiXlocal = cms.double(4e-05),
0963                 dYlocal = cms.double(0.0018),
0964                 phiZlocal = cms.double(4e-05),
0965                 dXlocal = cms.double(0.0018),
0966                 phiYlocal = cms.double(4e-05)
0967             )
0968         ),
0969         TOBRods = cms.PSet(
0970             dZlocal = cms.double(0.0018),
0971             phiXlocal = cms.double(7e-06),
0972             dYlocal = cms.double(0.0018),
0973             phiZlocal = cms.double(7e-06),
0974             dXlocal = cms.double(0.0018),
0975             phiYlocal = cms.double(7e-06)
0976         ),
0977         TOBHalfBarrels = cms.PSet(
0978             dZlocal = cms.double(0.001),
0979             phiXlocal = cms.double(2e-06),
0980             dYlocal = cms.double(0.001),
0981             phiZlocal = cms.double(2e-06),
0982             dXlocal = cms.double(0.001),
0983             phiYlocal = cms.double(2e-06)
0984         ),
0985         distribution = cms.string('gaussian')
0986     ),
0987     TECEndcaps = cms.PSet(
0988         scale = cms.double(1.0),
0989         TECDisk9 = cms.PSet(
0990             TECRing2 = cms.PSet(
0991                 TECRings1000pb_2D
0992             ),
0993             TECRing1_3_4 = cms.PSet(
0994                 TECRings1000pb_1D
0995             )
0996         ),
0997         scaleError = cms.double(1.0),
0998         TECPetals = cms.PSet(
0999             dZlocal = cms.double(0.004),
1000             phiXlocal = cms.double(1.5e-05),
1001             dYlocal = cms.double(0.004),
1002             phiZlocal = cms.double(1.5e-05),
1003             dXlocal = cms.double(0.004),
1004             phiYlocal = cms.double(1.5e-05)
1005         ),
1006         TECDisks = cms.PSet(
1007             dZlocal = cms.double(0.002),
1008             phiXlocal = cms.double(5e-06),
1009             dYlocal = cms.double(0.002),
1010             phiZlocal = cms.double(5e-06),
1011             dXlocal = cms.double(0.002),
1012             phiYlocal = cms.double(5e-06)
1013         ),
1014         TECDisk4_5_6 = cms.PSet(
1015             TECRing2_3_5_6 = cms.PSet(
1016                 TECRings1000pb_1D
1017             ),
1018             TECRing1_4 = cms.PSet(
1019                 TECRings1000pb_2D
1020             )
1021         ),
1022         TECDisk7_8 = cms.PSet(
1023             TECRing3 = cms.PSet(
1024                 TECRings1000pb_2D
1025             ),
1026             TECRing1_2_4_5 = cms.PSet(
1027                 TECRings1000pb_1D
1028             )
1029         ),
1030         distribution = cms.string('gaussian'),
1031         TECDisk1_2_3 = cms.PSet(
1032             TECRing3_4_6_7 = cms.PSet(
1033                 TECRings1000pb_1D
1034             ),
1035             TECRing1_2_5 = cms.PSet(
1036                 TECRings1000pb_2D
1037             )
1038         )
1039     ),
1040     TPEEndcaps = cms.PSet(
1041         TPEPanels = cms.PSet(
1042             dZlocal = cms.double(0.0005),
1043             phiXlocal = cms.double(1.1e-05),
1044             dYlocal = cms.double(0.0005),
1045             phiZlocal = cms.double(1.1e-05),
1046             dXlocal = cms.double(0.0005),
1047             phiYlocal = cms.double(1.1e-05)
1048         ),
1049         scale = cms.double(1.0),
1050         scaleError = cms.double(1.0),
1051         TPEHalfDisks = cms.PSet(
1052             dZlocal = cms.double(0.0005),
1053             phiXlocal = cms.double(7e-06),
1054             dYlocal = cms.double(0.0005),
1055             phiZlocal = cms.double(7e-06),
1056             dXlocal = cms.double(0.0005),
1057             phiYlocal = cms.double(7e-06)
1058         ),
1059         DetUnits = cms.PSet(
1060             dZlocal = cms.double(0.0005),
1061             phiXlocal = cms.double(1.1e-05),
1062             dYlocal = cms.double(0.0005),
1063             phiZlocal = cms.double(1.1e-05),
1064             dXlocal = cms.double(0.0005),
1065             phiYlocal = cms.double(1.1e-05)
1066         ),
1067         TPEBlades = cms.PSet(
1068             dZlocal = cms.double(0.0005),
1069             phiXlocal = cms.double(7e-06),
1070             dYlocal = cms.double(0.0005),
1071             phiZlocal = cms.double(7e-06),
1072             dXlocal = cms.double(0.0005),
1073             phiYlocal = cms.double(7e-06)
1074         ),
1075         distribution = cms.string('gaussian')
1076     ),
1077     TIDEndcaps = cms.PSet(
1078         scale = cms.double(1.0),
1079         scaleError = cms.double(1.0),
1080         TIDRing3 = cms.PSet(
1081             DetUnits = cms.PSet(
1082                 dZlocal = cms.double(0.0025),
1083                 phiXlocal = cms.double(0.00011),
1084                 dYlocal = cms.double(0.0025),
1085                 phiZlocal = cms.double(0.00011),
1086                 dXlocal = cms.double(0.0025),
1087                 phiYlocal = cms.double(0.00011)
1088             )
1089         ),
1090         TIDRing1_2 = cms.PSet(
1091             Dets = cms.PSet(
1092                 dZlocal = cms.double(0.0025),
1093                 phiXlocal = cms.double(0.00011),
1094                 dYlocal = cms.double(0.0025),
1095                 phiZlocal = cms.double(0.00011),
1096                 dXlocal = cms.double(0.0025),
1097                 phiYlocal = cms.double(0.00011)
1098             )
1099         ),
1100         TIDDisks = cms.PSet(
1101             dZlocal = cms.double(0.0012),
1102             phiXlocal = cms.double(2e-05),
1103             dYlocal = cms.double(0.0012),
1104             phiZlocal = cms.double(2e-05),
1105             dXlocal = cms.double(0.0012),
1106             phiYlocal = cms.double(2e-05)
1107         ),
1108         distribution = cms.string('gaussian'),
1109         TIDRings = cms.PSet(
1110             dZlocal = cms.double(0.0025),
1111             phiXlocal = cms.double(0.00011),
1112             dYlocal = cms.double(0.0025),
1113             phiZlocal = cms.double(0.00011),
1114             dXlocal = cms.double(0.0025),
1115             phiYlocal = cms.double(0.00011)
1116         )
1117     )
1118 )
1119 # -----------------------------------------------------------------------
1120 # Survey&LAS only misalignment scenario
1121 # See CMS IN 2007/036, table 6, "Updated initial uncertainties"
1122 # first helper blocks for TEC:
1123 TECRingsSurveyLASOnly_1D = cms.PSet(
1124     DetUnits = cms.PSet(
1125         dZlocal = cms.double(0.0022),
1126         phiXlocal = cms.double(5e-05),
1127         dYlocal = cms.double(0.0022),
1128         phiZlocal = cms.double(5e-05),
1129         dXlocal = cms.double(0.0022),
1130         phiYlocal = cms.double(5e-05)
1131     )
1132 )
1133 TECRingsSurveyLASOnly_2D = cms.PSet(
1134     Dets = cms.PSet(
1135         dZlocal = cms.double(0.0022),
1136         phiXlocal = cms.double(5e-05),
1137         dYlocal = cms.double(0.0022),
1138         phiZlocal = cms.double(5e-05),
1139         dXlocal = cms.double(0.0022),
1140         phiYlocal = cms.double(5e-05)
1141     )
1142 )
1143 # now real scenario:
1144 TrackerSurveyLASOnlyScenario = cms.PSet(
1145     MisalignmentScenarioSettings,
1146     TIBHalfBarrels = cms.PSet(
1147         TIBLayers = cms.PSet(
1148             dZlocal = cms.double(0.075),
1149             phiXlocal = cms.double(0.000488),
1150             dYlocal = cms.double(0.075),
1151             phiZlocal = cms.double(0.000488),
1152             dXlocal = cms.double(0.075),
1153             phiYlocal = cms.double(0.000488)
1154         ),
1155         scale = cms.double(1.0),
1156         TIBLayer3_4 = cms.PSet(
1157             DetUnits = cms.PSet(
1158                 dZlocal = cms.double(0.018),
1159                 phiXlocal = cms.double(0.000412),
1160                 dYlocal = cms.double(0.018),
1161                 phiZlocal = cms.double(0.000412),
1162                 dXlocal = cms.double(0.018),
1163                 phiYlocal = cms.double(0.000412)
1164             )
1165         ),
1166         scaleError = cms.double(1.0),
1167         TIBLayer1_2 = cms.PSet(
1168             Dets = cms.PSet(
1169                 dZlocal = cms.double(0.018),
1170                 phiXlocal = cms.double(0.000412),
1171                 dYlocal = cms.double(0.018),
1172                 phiZlocal = cms.double(0.000412),
1173                 dXlocal = cms.double(0.018),
1174                 phiYlocal = cms.double(0.000412)
1175             )
1176         ),
1177         distribution = cms.string('gaussian'),
1178         TIBStrings = cms.PSet(
1179             dZlocal = cms.double(0.045),
1180             phiXlocal = cms.double(0.000293),
1181             dYlocal = cms.double(0.045),
1182             phiZlocal = cms.double(0.000293),
1183             dXlocal = cms.double(0.045),
1184             phiYlocal = cms.double(0.000293)
1185         )
1186     ),
1187     TPBHalfBarrels = cms.PSet(
1188         scale = cms.double(1.0),
1189         DetUnits = cms.PSet(
1190             dZlocal = cms.double(0.006),
1191             phiXlocal = cms.double(0.00027),
1192             dYlocal = cms.double(0.006),
1193             phiZlocal = cms.double(0.00027),
1194             distribution = cms.string('gaussian'),
1195             dXlocal = cms.double(0.006),
1196             phiYlocal = cms.double(0.00027)
1197         ),
1198         TPBLayers = cms.PSet(
1199             phiXlocal = cms.double(1e-05),
1200             phiZlocal = cms.double(1e-05),
1201             dZ = cms.double(0.0337),
1202             dX = cms.double(0.0225),
1203             dY = cms.double(0.0225),
1204             distribution = cms.string('gaussian'),
1205             phiYlocal = cms.double(1e-05)
1206         ),
1207         scaleError = cms.double(1.0),
1208         TPBLadders = cms.PSet(
1209             dZlocal = cms.double(0.005),
1210             phiXlocal = cms.double(2e-05),
1211             dYlocal = cms.double(0.005),
1212             phiZlocal = cms.double(2e-05),
1213             distribution = cms.string('flat'),
1214             dXlocal = cms.double(0.005),
1215             phiYlocal = cms.double(2e-05)
1216         )
1217     ),
1218     TOBHalfBarrels = cms.PSet(
1219         scale = cms.double(1.0),
1220         TOBLayer3_4_5_6 = cms.PSet(
1221             DetUnits = cms.PSet(
1222                 dZlocal = cms.double(0.0032),
1223                 phiXlocal = cms.double(7.5e-05),
1224                 dYlocal = cms.double(0.0032),
1225                 phiZlocal = cms.double(7.5e-05),
1226                 dXlocal = cms.double(0.0032),
1227                 phiYlocal = cms.double(7.5e-05)
1228             )
1229         ),
1230         scaleError = cms.double(1.0),
1231         TOBLayers = cms.PSet(
1232             dXlocal = cms.double(0.0),
1233             dZlocal = cms.double(0.0),
1234             dYlocal = cms.double(0.0)
1235         ),
1236         TOBLayer1_2 = cms.PSet(
1237             Dets = cms.PSet(
1238                 dZlocal = cms.double(0.0032),
1239                 phiXlocal = cms.double(7.5e-05),
1240                 dYlocal = cms.double(0.0032),
1241                 phiZlocal = cms.double(7.5e-05),
1242                 dXlocal = cms.double(0.0032),
1243                 phiYlocal = cms.double(7.5e-05)
1244             )
1245         ),
1246         TOBRods = cms.PSet(
1247             dZlocal = cms.double(0.01),
1248             phiXlocal = cms.double(4e-05),
1249             dYlocal = cms.double(0.01),
1250             phiZlocal = cms.double(4e-05),
1251             dXlocal = cms.double(0.01),
1252             phiYlocal = cms.double(4e-05)
1253         ),
1254         TOBHalfBarrels = cms.PSet(
1255             dZlocal = cms.double(0.05),
1256             phiXlocal = cms.double(1e-05),
1257             dYlocal = cms.double(0.006),
1258             phiZlocal = cms.double(1e-05),
1259             dXlocal = cms.double(0.006),
1260             phiYlocal = cms.double(1e-05)
1261         ),
1262         distribution = cms.string('gaussian')
1263     ),
1264     TECEndcaps = cms.PSet(
1265         scale = cms.double(1.0),
1266         TECDisk9 = cms.PSet(
1267             TECRing2 = cms.PSet(
1268                 TECRingsSurveyLASOnly_2D
1269             ),
1270             TECRing1_3_4 = cms.PSet(
1271                 TECRingsSurveyLASOnly_1D
1272             )
1273         ),
1274         scaleError = cms.double(1.0),
1275         TECPetals = cms.PSet(
1276             dZlocal = cms.double(0.007),
1277             phiXlocal = cms.double(3e-05),
1278             dYlocal = cms.double(0.007),
1279             phiZlocal = cms.double(3e-05),
1280             dXlocal = cms.double(0.007),
1281             phiYlocal = cms.double(3e-05)
1282         ),
1283         TECDisks = cms.PSet(
1284             dZlocal = cms.double(0.015),
1285             phiXlocal = cms.double(1.5e-05),
1286             dYlocal = cms.double(0.006),
1287             phiZlocal = cms.double(1.5e-05),
1288             dXlocal = cms.double(0.006),
1289             phiYlocal = cms.double(1.5e-05)
1290         ),
1291         TECDisk4_5_6 = cms.PSet(
1292             TECRing2_3_5_6 = cms.PSet(
1293                 TECRingsSurveyLASOnly_1D
1294             ),
1295             TECRing1_4 = cms.PSet(
1296                 TECRingsSurveyLASOnly_2D
1297             )
1298         ),
1299         TECDisk7_8 = cms.PSet(
1300             TECRing3 = cms.PSet(
1301                 TECRingsSurveyLASOnly_2D
1302             ),
1303             TECRing1_2_4_5 = cms.PSet(
1304                 TECRingsSurveyLASOnly_1D
1305             )
1306         ),
1307         distribution = cms.string('gaussian'),
1308         TECDisk1_2_3 = cms.PSet(
1309             TECRing3_4_6_7 = cms.PSet(
1310                 TECRingsSurveyLASOnly_1D
1311             ),
1312             TECRing1_2_5 = cms.PSet(
1313                 TECRingsSurveyLASOnly_2D
1314             )
1315         )
1316     ),
1317     TPEEndcaps = cms.PSet(
1318         TPEPanels = cms.PSet(
1319             dZlocal = cms.double(0.001),
1320             phiXlocal = cms.double(0.0002),
1321             dYlocal = cms.double(0.001),
1322             phiZlocal = cms.double(0.0002),
1323             dXlocal = cms.double(0.001),
1324             phiYlocal = cms.double(0.0002)
1325         ),
1326         scale = cms.double(1.0),
1327         scaleError = cms.double(1.0),
1328         TPEHalfDisks = cms.PSet(
1329             dZlocal = cms.double(0.005),
1330             phiXlocal = cms.double(0.001),
1331             dYlocal = cms.double(0.005),
1332             phiZlocal = cms.double(0.001),
1333             dXlocal = cms.double(0.005),
1334             phiYlocal = cms.double(0.001)
1335         ),
1336         TPEHalfCylinders = cms.PSet(
1337             dZlocal = cms.double(0.005),
1338             phiXlocal = cms.double(0.001),
1339             dYlocal = cms.double(0.005),
1340             phiZlocal = cms.double(0.001),
1341             dXlocal = cms.double(0.005),
1342             phiYlocal = cms.double(0.001)
1343         ),
1344         DetUnits = cms.PSet(
1345             dZlocal = cms.double(0.0005),
1346             phiXlocal = cms.double(0.0001),
1347             dYlocal = cms.double(0.0005),
1348             phiZlocal = cms.double(0.0001),
1349             dXlocal = cms.double(0.0005),
1350             phiYlocal = cms.double(0.0001)
1351         ),
1352         TPEBlades = cms.PSet(
1353             dZlocal = cms.double(0.001),
1354             phiXlocal = cms.double(0.0002),
1355             dYlocal = cms.double(0.001),
1356             phiZlocal = cms.double(0.0002),
1357             dXlocal = cms.double(0.001),
1358             phiYlocal = cms.double(0.0002)
1359         ),
1360         distribution = cms.string('gaussian')
1361     ),
1362     TIDEndcaps = cms.PSet(
1363         scale = cms.double(1.0),
1364         scaleError = cms.double(1.0),
1365         TIDEndcaps = cms.PSet(
1366             dZlocal = cms.double(0.045),
1367             phiXlocal = cms.double(0.000649),
1368             dYlocal = cms.double(0.045),
1369             phiZlocal = cms.double(0.000649),
1370             dXlocal = cms.double(0.045),
1371             phiYlocal = cms.double(0.000649)
1372         ),
1373         TIDRing3 = cms.PSet(
1374             DetUnits = cms.PSet(
1375                 dZlocal = cms.double(0.0054),
1376                 phiXlocal = cms.double(0.00025),
1377                 dYlocal = cms.double(0.0054),
1378                 phiZlocal = cms.double(0.00025),
1379                 dXlocal = cms.double(0.0054),
1380                 phiYlocal = cms.double(0.00025)
1381             )
1382         ),
1383         TIDRing1_2 = cms.PSet(
1384             Dets = cms.PSet(
1385                 dZlocal = cms.double(0.0054),
1386                 phiXlocal = cms.double(0.00025),
1387                 dYlocal = cms.double(0.0054),
1388                 phiZlocal = cms.double(0.00025),
1389                 dXlocal = cms.double(0.0054),
1390                 phiYlocal = cms.double(0.00025)
1391             )
1392         ),
1393         TIDDisks = cms.PSet(
1394             dZlocal = cms.double(0.035),
1395             phiXlocal = cms.double(0.000532),
1396             dYlocal = cms.double(0.035),
1397             phiZlocal = cms.double(0.000532),
1398             dXlocal = cms.double(0.035),
1399             phiYlocal = cms.double(0.000532)
1400         ),
1401         distribution = cms.string('gaussian'),
1402         TIDRings = cms.PSet(
1403             dZlocal = cms.double(0.0185),
1404             phiXlocal = cms.double(0.00085),
1405             dYlocal = cms.double(0.0185),
1406             phiZlocal = cms.double(0.00085),
1407             dXlocal = cms.double(0.0185),
1408             phiYlocal = cms.double(0.00085)
1409         )
1410     )
1411 )
1412 # -----------------------------------------------------------------------
1413 # Survey&LAS&Cosmics scenario
1414 # ----------------------------------------
1415 # ----------------- NOTE -----------------
1416 # Sufficient studies do not yet exist to
1417 # provide a reliable version of this
1418 # scenario (Survey+LAS+Cosmics alignment).
1419 #
1420 # This scenario is not supposed to be used
1421 # to make public(?) estimates of the
1422 # performance of the CMS.
1423 #
1424 # This scenario contains lots of guesses,
1425 # especially concerning the improvement
1426 # one can reach by using Cosmics in
1427 # track based alignment.
1428 # The guess is that with Cosmics, one
1429 # can reach for largest barrel-like parts
1430 # the average alignment accuracy of the
1431 # 10pb-1 and the SurveyLASOnly scenarios.
1432 #
1433 # The same applies also,but to a lesser
1434 # extent, to the 10pb-1 scenario.
1435 # ------------- NOTE ends ----------------
1436 # ----------------------------------------
1437 # first helper blocks for TEC:
1438 TECRingsSurveyLASCosmics_1D = cms.PSet(
1439     DetUnits = cms.PSet(
1440         dZlocal = cms.double(0.0022),
1441         phiXlocal = cms.double(5e-05),
1442         dYlocal = cms.double(0.0022),
1443         phiZlocal = cms.double(5e-05),
1444         dXlocal = cms.double(0.0022),
1445         phiYlocal = cms.double(5e-05)
1446     )
1447 )
1448 TECRingsSurveyLASCosmics_2D = cms.PSet(
1449     Dets = cms.PSet(
1450         dZlocal = cms.double(0.0022),
1451         phiXlocal = cms.double(5e-05),
1452         dYlocal = cms.double(0.0022),
1453         phiZlocal = cms.double(5e-05),
1454         dXlocal = cms.double(0.0022),
1455         phiYlocal = cms.double(5e-05)
1456     )
1457 )
1458 # now real scenario:
1459 TrackerSurveyLASCosmicsScenario = cms.PSet(
1460     MisalignmentScenarioSettings,
1461     TIBHalfBarrels = cms.PSet(
1462         TIBLayers = cms.PSet(
1463             dZlocal = cms.double(0.0425),
1464             phiXlocal = cms.double(0.000277),
1465             dYlocal = cms.double(0.0425),
1466             phiZlocal = cms.double(0.000277),
1467             dXlocal = cms.double(0.0425),
1468             phiYlocal = cms.double(0.000277)
1469         ),
1470         scale = cms.double(1.0),
1471         TIBLayer3_4 = cms.PSet(
1472             DetUnits = cms.PSet(
1473                 dZlocal = cms.double(0.018),
1474                 phiXlocal = cms.double(0.000412),
1475                 dYlocal = cms.double(0.018),
1476                 phiZlocal = cms.double(0.000412),
1477                 dXlocal = cms.double(0.018),
1478                 phiYlocal = cms.double(0.000412)
1479             )
1480         ),
1481         scaleError = cms.double(1.0),
1482         TIBLayer1_2 = cms.PSet(
1483             Dets = cms.PSet(
1484                 dZlocal = cms.double(0.018),
1485                 phiXlocal = cms.double(0.000412),
1486                 dYlocal = cms.double(0.018),
1487                 phiZlocal = cms.double(0.000412),
1488                 dXlocal = cms.double(0.018),
1489                 phiYlocal = cms.double(0.000412)
1490             )
1491         ),
1492         distribution = cms.string('gaussian'),
1493         TIBStrings = cms.PSet(
1494             dZlocal = cms.double(0.0275),
1495             phiXlocal = cms.double(0.000179),
1496             dYlocal = cms.double(0.0275),
1497             phiZlocal = cms.double(0.000179),
1498             dXlocal = cms.double(0.0275),
1499             phiYlocal = cms.double(0.000179)
1500         )
1501     ),
1502     TPBHalfBarrels = cms.PSet(
1503         scale = cms.double(1.0),
1504         DetUnits = cms.PSet(
1505             dZlocal = cms.double(0.006),
1506             phiXlocal = cms.double(0.00027),
1507             dYlocal = cms.double(0.006),
1508             phiZlocal = cms.double(0.00027),
1509             distribution = cms.string('gaussian'),
1510             dXlocal = cms.double(0.006),
1511             phiYlocal = cms.double(0.00027)
1512         ),
1513         TPBLayers = cms.PSet(
1514             phiXlocal = cms.double(9e-06),
1515             phiZlocal = cms.double(9e-06),
1516             dZ = cms.double(0.0174),
1517             dX = cms.double(0.0118),
1518             dY = cms.double(0.0118),
1519             distribution = cms.string('gaussian'),
1520             phiYlocal = cms.double(9e-06)
1521         ),
1522         scaleError = cms.double(1.0),
1523         TPBLadders = cms.PSet(
1524             dZlocal = cms.double(0.002),
1525             phiXlocal = cms.double(9e-06),
1526             dYlocal = cms.double(0.002),
1527             phiZlocal = cms.double(9e-06),
1528             distribution = cms.string('gaussian'),
1529             dXlocal = cms.double(0.002),
1530             phiYlocal = cms.double(9e-06)
1531         )
1532     ),
1533     TOBHalfBarrels = cms.PSet(
1534         scale = cms.double(1.0),
1535         TOBLayer3_4_5_6 = cms.PSet(
1536             DetUnits = cms.PSet(
1537                 dZlocal = cms.double(0.0032),
1538                 phiXlocal = cms.double(7.5e-05),
1539                 dYlocal = cms.double(0.0032),
1540                 phiZlocal = cms.double(7.5e-05),
1541                 dXlocal = cms.double(0.0032),
1542                 phiYlocal = cms.double(7.5e-05)
1543             )
1544         ),
1545         scaleError = cms.double(1.0),
1546         TOBLayers = cms.PSet(
1547             dXlocal = cms.double(0.0),
1548             dZlocal = cms.double(0.0),
1549             dYlocal = cms.double(0.0)
1550         ),
1551         TOBLayer1_2 = cms.PSet(
1552             Dets = cms.PSet(
1553                 dZlocal = cms.double(0.0032),
1554                 phiXlocal = cms.double(7.5e-05),
1555                 dYlocal = cms.double(0.0032),
1556                 phiZlocal = cms.double(7.5e-05),
1557                 dXlocal = cms.double(0.0032),
1558                 phiYlocal = cms.double(7.5e-05)
1559             )
1560         ),
1561         TOBRods = cms.PSet(
1562             dZlocal = cms.double(0.01),
1563             phiXlocal = cms.double(4e-05),
1564             dYlocal = cms.double(0.01),
1565             phiZlocal = cms.double(4e-05),
1566             dXlocal = cms.double(0.01),
1567             phiYlocal = cms.double(4e-05)
1568         ),
1569         TOBHalfBarrels = cms.PSet(
1570             dZlocal = cms.double(0.03),
1571             phiXlocal = cms.double(1e-05),
1572             dYlocal = cms.double(0.006),
1573             phiZlocal = cms.double(1e-05),
1574             dXlocal = cms.double(0.006),
1575             phiYlocal = cms.double(1e-05)
1576         ),
1577         distribution = cms.string('gaussian')
1578     ),
1579     TECEndcaps = cms.PSet(
1580         scale = cms.double(1.0),
1581         TECDisk9 = cms.PSet(
1582             TECRing2 = cms.PSet(
1583                 TECRingsSurveyLASCosmics_2D
1584             ),
1585             TECRing1_3_4 = cms.PSet(
1586                 TECRingsSurveyLASCosmics_1D
1587             )
1588         ),
1589         scaleError = cms.double(1.0),
1590         TECPetals = cms.PSet(
1591             dZlocal = cms.double(0.007),
1592             phiXlocal = cms.double(3e-05),
1593             dYlocal = cms.double(0.007),
1594             phiZlocal = cms.double(3e-05),
1595             dXlocal = cms.double(0.007),
1596             phiYlocal = cms.double(3e-05)
1597         ),
1598         TECDisks = cms.PSet(
1599             dZlocal = cms.double(0.015),
1600             phiXlocal = cms.double(1.5e-05),
1601             dYlocal = cms.double(0.006),
1602             phiZlocal = cms.double(1.5e-05),
1603             dXlocal = cms.double(0.006),
1604             phiYlocal = cms.double(1.5e-05)
1605         ),
1606         TECDisk4_5_6 = cms.PSet(
1607             TECRing2_3_5_6 = cms.PSet(
1608                 TECRingsSurveyLASCosmics_1D
1609             ),
1610             TECRing1_4 = cms.PSet(
1611                 TECRingsSurveyLASCosmics_2D
1612             )
1613         ),
1614         TECDisk7_8 = cms.PSet(
1615             TECRing3 = cms.PSet(
1616                 TECRingsSurveyLASCosmics_2D
1617             ),
1618             TECRing1_2_4_5 = cms.PSet(
1619                 TECRingsSurveyLASCosmics_1D
1620             )
1621         ),
1622         distribution = cms.string('gaussian'),
1623         TECDisk1_2_3 = cms.PSet(
1624             TECRing3_4_6_7 = cms.PSet(
1625                 TECRingsSurveyLASCosmics_1D
1626             ),
1627             TECRing1_2_5 = cms.PSet(
1628                 TECRingsSurveyLASCosmics_2D
1629             )
1630         )
1631     ),
1632     TPEEndcaps = cms.PSet(
1633         TPEPanels = cms.PSet(
1634             dZlocal = cms.double(0.001),
1635             phiXlocal = cms.double(0.0002),
1636             dYlocal = cms.double(0.001),
1637             phiZlocal = cms.double(0.0002),
1638             dXlocal = cms.double(0.001),
1639             phiYlocal = cms.double(0.0002)
1640         ),
1641         scale = cms.double(1.0),
1642         scaleError = cms.double(1.0),
1643         TPEHalfDisks = cms.PSet(
1644             dZlocal = cms.double(0.005),
1645             phiXlocal = cms.double(0.001),
1646             dYlocal = cms.double(0.005),
1647             phiZlocal = cms.double(0.001),
1648             dXlocal = cms.double(0.005),
1649             phiYlocal = cms.double(0.001)
1650         ),
1651         TPEHalfCylinders = cms.PSet(
1652             dZlocal = cms.double(0.005),
1653             phiXlocal = cms.double(0.001),
1654             dYlocal = cms.double(0.005),
1655             phiZlocal = cms.double(0.001),
1656             dXlocal = cms.double(0.005),
1657             phiYlocal = cms.double(0.001)
1658         ),
1659         DetUnits = cms.PSet(
1660             dZlocal = cms.double(0.0005),
1661             phiXlocal = cms.double(0.0001),
1662             dYlocal = cms.double(0.0005),
1663             phiZlocal = cms.double(0.0001),
1664             dXlocal = cms.double(0.0005),
1665             phiYlocal = cms.double(0.0001)
1666         ),
1667         TPEBlades = cms.PSet(
1668             dZlocal = cms.double(0.001),
1669             phiXlocal = cms.double(0.0002),
1670             dYlocal = cms.double(0.001),
1671             phiZlocal = cms.double(0.0002),
1672             dXlocal = cms.double(0.001),
1673             phiYlocal = cms.double(0.0002)
1674         ),
1675         distribution = cms.string('gaussian')
1676     ),
1677     TIDEndcaps = cms.PSet(
1678         scale = cms.double(1.0),
1679         scaleError = cms.double(1.0),
1680         TIDEndcaps = cms.PSet(
1681             dZlocal = cms.double(0.0225),
1682             phiXlocal = cms.double(0.000325),
1683             dYlocal = cms.double(0.0225),
1684             phiZlocal = cms.double(0.000325),
1685             dXlocal = cms.double(0.0225),
1686             phiYlocal = cms.double(0.000325)
1687         ),
1688         TIDRing3 = cms.PSet(
1689             DetUnits = cms.PSet(
1690                 dZlocal = cms.double(0.0054),
1691                 phiXlocal = cms.double(0.00025),
1692                 dYlocal = cms.double(0.0054),
1693                 phiZlocal = cms.double(0.00025),
1694                 dXlocal = cms.double(0.0054),
1695                 phiYlocal = cms.double(0.00025)
1696             )
1697         ),
1698         TIDRing1_2 = cms.PSet(
1699             Dets = cms.PSet(
1700                 dZlocal = cms.double(0.0054),
1701                 phiXlocal = cms.double(0.00025),
1702                 dYlocal = cms.double(0.0054),
1703                 phiZlocal = cms.double(0.00025),
1704                 dXlocal = cms.double(0.0054),
1705                 phiYlocal = cms.double(0.00025)
1706             )
1707         ),
1708         TIDDisks = cms.PSet(
1709             dZlocal = cms.double(0.03),
1710             phiXlocal = cms.double(0.000456),
1711             dYlocal = cms.double(0.03),
1712             phiZlocal = cms.double(0.000456),
1713             dXlocal = cms.double(0.03),
1714             phiYlocal = cms.double(0.000456)
1715         ),
1716         distribution = cms.string('gaussian'),
1717         TIDRings = cms.PSet(
1718             dZlocal = cms.double(0.0185),
1719             phiXlocal = cms.double(0.00085),
1720             dYlocal = cms.double(0.0185),
1721             phiZlocal = cms.double(0.00085),
1722             dXlocal = cms.double(0.0185),
1723             phiYlocal = cms.double(0.00085)
1724         )
1725     )
1726 )
1727 # -----------------------------------------------------------------------
1728 # TrackerNoKnowledge scenario
1729 # ----------------------------------------
1730 # ----------------- NOTE -----------------
1731 # This scenario is not supposed to be used
1732 # to make public(?) estimates of the
1733 # performance of the CMS.
1734 #
1735 # This scenario contains lots of guesses,
1736 # and is intended to be used as a stress
1737 # test for aligning with cosmics as well
1738 # as a initial misalignment for LAS studies
1739 # ------------- NOTE ends ----------------
1740 # ----------------------------------------
1741 # first helper blocks for TEC:
1742 TECRingsTrackerNoKnowledge_1D = cms.PSet(
1743     DetUnits = cms.PSet(
1744         dZlocal = cms.double(0.0054),
1745         phiXlocal = cms.double(0.0005),
1746         dYlocal = cms.double(0.0028),
1747         phiZlocal = cms.double(0.0003),
1748         dXlocal = cms.double(0.0028),
1749         phiYlocal = cms.double(0.0005)
1750     )
1751 )
1752 TECRingsTrackerNoKnowledge_2D = cms.PSet(
1753     Dets = cms.PSet(
1754         dZlocal = cms.double(0.0054),
1755         phiXlocal = cms.double(0.0005),
1756         dYlocal = cms.double(0.0028),
1757         phiZlocal = cms.double(0.0003),
1758         dXlocal = cms.double(0.0028),
1759         phiYlocal = cms.double(0.0005)
1760     )
1761 )
1762 # now actual scenario
1763 TrackerNoKnowledgeScenario = cms.PSet(
1764     MisalignmentScenarioSettings,
1765     TIBHalfBarrels = cms.PSet(
1766         TIBLayers = cms.PSet(
1767             dZlocal = cms.double(0.02),
1768             phiXlocal = cms.double(0.0006),
1769             dYlocal = cms.double(0.04),
1770             phiZlocal = cms.double(0.0006),
1771             dXlocal = cms.double(0.04),
1772             phiYlocal = cms.double(0.0006)
1773         ),
1774         scale = cms.double(1.0),
1775         TIBLayer3_4 = cms.PSet(
1776             DetUnits = cms.PSet(
1777                 dZlocal = cms.double(0.005),
1778                 phiXlocal = cms.double(0.001),
1779                 dYlocal = cms.double(0.005),
1780                 phiZlocal = cms.double(0.0005),
1781                 dXlocal = cms.double(0.005),
1782                 phiYlocal = cms.double(0.0005)
1783             )
1784         ),
1785         scaleError = cms.double(1.0),
1786         TIBHalfShells = cms.PSet(
1787             dZlocal = cms.double(0.015),
1788             phiXlocal = cms.double(0.0004),
1789             dYlocal = cms.double(0.03),
1790             phiZlocal = cms.double(0.0004),
1791             dXlocal = cms.double(0.03),
1792             phiYlocal = cms.double(0.0004)
1793         ),
1794         TIBBarrels = cms.PSet( # FIXME??
1795             dZlocal = cms.double(0.2),
1796             phiXlocal = cms.double(0.0017),
1797             dYlocal = cms.double(0.2),
1798             phiZlocal = cms.double(0.0017),
1799             dXlocal = cms.double(0.2),
1800             phiYlocal = cms.double(0.0017)
1801         ),
1802         TIBHalfBarrels = cms.PSet( # FIXME??
1803             dZlocal = cms.double(0.1),
1804             phiXlocal = cms.double(0.0008),
1805             dYlocal = cms.double(0.1),
1806             phiZlocal = cms.double(0.0008),
1807             dXlocal = cms.double(0.1),
1808             phiYlocal = cms.double(0.0008)
1809         ),
1810         TIBLayer1_2 = cms.PSet(
1811             Dets = cms.PSet(
1812                 dZlocal = cms.double(0.005),
1813                 phiXlocal = cms.double(0.001),
1814                 dYlocal = cms.double(0.005),
1815                 phiZlocal = cms.double(0.0005),
1816                 dXlocal = cms.double(0.005),
1817                 phiYlocal = cms.double(0.0005)
1818             )
1819         ),
1820         distribution = cms.string('gaussian'),
1821         TIBStrings = cms.PSet(
1822             dZlocal = cms.double(0.01),
1823             phiXlocal = cms.double(0.0004),
1824             dYlocal = cms.double(0.01),
1825             phiZlocal = cms.double(0.0002),
1826             dXlocal = cms.double(0.01),
1827             phiYlocal = cms.double(0.0002)
1828         ),
1829         TIBSurfaces = cms.PSet(
1830             dZlocal = cms.double(0.01),
1831             phiXlocal = cms.double(0.0004),
1832             dYlocal = cms.double(0.01),
1833             phiZlocal = cms.double(0.0002),
1834             dXlocal = cms.double(0.01),
1835             phiYlocal = cms.double(0.0002)
1836         )
1837     ),
1838     TPBHalfBarrels = cms.PSet(
1839         TPBHalfBarrels = cms.PSet( # FIXME??
1840             phiXlocal = cms.double(0.0008),
1841             phiZlocal = cms.double(0.0008),
1842             dZ = cms.double(0.05),
1843             dX = cms.double(0.05),
1844             dY = cms.double(0.05),
1845             distribution = cms.string('gaussian'),
1846             phiYlocal = cms.double(0.0008)
1847         ),
1848         scale = cms.double(1.0),
1849         scaleError = cms.double(1.0),
1850         TPBLadders = cms.PSet(
1851             dZlocal = cms.double(0.005),
1852             phiXlocal = cms.double(0.0002),
1853             dYlocal = cms.double(0.01),
1854             phiZlocal = cms.double(0.0002),
1855             distribution = cms.string('gaussian'),
1856             dXlocal = cms.double(0.01),
1857             phiYlocal = cms.double(0.0002)
1858         ),
1859         DetUnits = cms.PSet(
1860             dZlocal = cms.double(0.003),
1861             phiXlocal = cms.double(0.001),
1862             dYlocal = cms.double(0.005),
1863             phiZlocal = cms.double(0.001),
1864             distribution = cms.string('gaussian'),
1865             dXlocal = cms.double(0.006),
1866             phiYlocal = cms.double(0.001)
1867         ),
1868         TPBLayers = cms.PSet(
1869             phiXlocal = cms.double(0.0004),
1870             phiZlocal = cms.double(0.0004),
1871             dZ = cms.double(0.02),
1872             dX = cms.double(0.02),
1873             dY = cms.double(0.02),
1874             distribution = cms.string('gaussian'),
1875             phiYlocal = cms.double(0.0004)
1876         ),
1877         TPBBarrels = cms.PSet( # FIXME??
1878             phiXlocal = cms.double(0.003),
1879             phiZlocal = cms.double(0.003),
1880             dZ = cms.double(0.1),
1881             dX = cms.double(0.1),
1882             dY = cms.double(0.1),
1883             distribution = cms.string('gaussian'),
1884             phiYlocal = cms.double(0.003)
1885         )
1886     ),
1887     TOBHalfBarrels = cms.PSet(
1888         scale = cms.double(1.0),
1889         TOBBarrels = cms.PSet( # FIXME??
1890             dZlocal = cms.double(0.1),
1891             phiXlocal = cms.double(0.0005),
1892             dYlocal = cms.double(0.1),
1893             phiZlocal = cms.double(0.0005),
1894             dXlocal = cms.double(0.1),
1895             phiYlocal = cms.double(0.0005)
1896         ),
1897         scaleError = cms.double(1.0),
1898         TOBLayers = cms.PSet(
1899             dZlocal = cms.double(0.02),
1900             phiXlocal = cms.double(0.0001),
1901             dYlocal = cms.double(0.01),
1902             phiZlocal = cms.double(0.0001),
1903             dXlocal = cms.double(0.01),
1904             phiYlocal = cms.double(0.0001)
1905         ),
1906         TOBLayer1_2 = cms.PSet(
1907             Dets = cms.PSet(
1908                 dZlocal = cms.double(0.01),
1909                 phiXlocal = cms.double(0.0002),
1910                 dYlocal = cms.double(0.003),
1911                 phiZlocal = cms.double(0.0002),
1912                 dXlocal = cms.double(0.003),
1913                 phiYlocal = cms.double(0.0002)
1914             )
1915         ),
1916         TOBRods = cms.PSet(
1917             dZlocal = cms.double(0.01),
1918             phiXlocal = cms.double(0.0001),
1919             dYlocal = cms.double(0.02),
1920             phiZlocal = cms.double(0.0001),
1921             dXlocal = cms.double(0.01),
1922             phiYlocal = cms.double(0.0002)
1923         ),
1924         TOBHalfBarrels = cms.PSet( # FIXME??
1925             dZlocal = cms.double(0.02),
1926             phiXlocal = cms.double(0.0001),
1927             dYlocal = cms.double(0.01),
1928             phiZlocal = cms.double(0.0001),
1929             dXlocal = cms.double(0.01),
1930             phiYlocal = cms.double(0.0001)
1931         ),
1932         distribution = cms.string('gaussian'),
1933         TOBLayer3_4_5_6 = cms.PSet(
1934             DetUnits = cms.PSet(
1935                 dZlocal = cms.double(0.01),
1936                 phiXlocal = cms.double(0.0002),
1937                 dYlocal = cms.double(0.003),
1938                 phiZlocal = cms.double(0.0002),
1939                 dXlocal = cms.double(0.003),
1940                 phiYlocal = cms.double(0.0002)
1941             )
1942         )
1943     ),
1944     TECEndcaps = cms.PSet(
1945         scale = cms.double(1.0),
1946         TECDisk9 = cms.PSet(
1947             TECRing2 = cms.PSet(
1948                 TECRingsTrackerNoKnowledge_2D
1949             ),
1950             TECRing1_3_4 = cms.PSet(
1951                 TECRingsTrackerNoKnowledge_1D
1952             )
1953         ),
1954         TECDisk1_2_3 = cms.PSet(
1955             TECRing3_4_6_7 = cms.PSet(
1956                 TECRingsTrackerNoKnowledge_1D
1957             ),
1958             TECRing1_2_5 = cms.PSet(
1959                 TECRingsTrackerNoKnowledge_2D
1960             )
1961         ),
1962         scaleError = cms.double(1.0),
1963         TECEndcaps = cms.PSet( # FIXME??
1964             dZlocal = cms.double(0.0316),
1965             phiXlocal = cms.double(0.001),
1966             dYlocal = cms.double(0.05),
1967             phiZlocal = cms.double(0.001),
1968             dXlocal = cms.double(0.0316),
1969             phiYlocal = cms.double(0.001)
1970         ),
1971         TECDisk4_5_6 = cms.PSet(
1972             TECRing2_3_5_6 = cms.PSet(
1973                 TECRingsTrackerNoKnowledge_1D
1974             ),
1975             TECRing1_4 = cms.PSet(
1976                 TECRingsTrackerNoKnowledge_2D
1977             )
1978         ),
1979         TECPetals = cms.PSet(
1980             dZlocal = cms.double(0.0158),
1981             phiXlocal = cms.double(0.0005),
1982             dYlocal = cms.double(0.0086),
1983             phiZlocal = cms.double(0.0003),
1984             dXlocal = cms.double(0.0086),
1985             phiYlocal = cms.double(0.0005)
1986         ),
1987         TECDisks = cms.PSet(
1988             dZlocal = cms.double(0.0112),
1989             phiXlocal = cms.double(0.0002),
1990             dYlocal = cms.double(0.0206),
1991             phiZlocal = cms.double(0.0001),
1992             dXlocal = cms.double(0.0112),
1993             phiYlocal = cms.double(0.0001)
1994         ),
1995         TECDisk7_8 = cms.PSet(
1996             TECRing3 = cms.PSet(
1997                 TECRingsTrackerNoKnowledge_2D
1998             ),
1999             TECRing1_2_4_5 = cms.PSet(
2000                 TECRingsTrackerNoKnowledge_1D
2001             )
2002         ),
2003         distribution = cms.string('gaussian')
2004     ),
2005     TPEEndcaps = cms.PSet(
2006         TPEPanels = cms.PSet(
2007             dZlocal = cms.double(0.005),
2008             phiXlocal = cms.double(0.002),
2009             dYlocal = cms.double(0.01),
2010             phiZlocal = cms.double(0.002),
2011             dXlocal = cms.double(0.01),
2012             phiYlocal = cms.double(0.002)
2013         ),
2014         scale = cms.double(1.0),
2015         scaleError = cms.double(1.0),
2016         TPEHalfDisks = cms.PSet(
2017             dZlocal = cms.double(0.02),
2018             phiXlocal = cms.double(0.001),
2019             dYlocal = cms.double(0.02),
2020             phiZlocal = cms.double(0.001),
2021             dXlocal = cms.double(0.02),
2022             phiYlocal = cms.double(0.001)
2023         ),
2024         TPEEndcaps = cms.PSet( # FIXME??
2025             dZlocal = cms.double(0.1),
2026             phiXlocal = cms.double(0.0017),
2027             dYlocal = cms.double(0.1),
2028             phiZlocal = cms.double(0.0017),
2029             dXlocal = cms.double(0.1),
2030             phiYlocal = cms.double(0.0017)
2031         ),
2032         TPEHalfCylinders = cms.PSet(
2033             dZlocal = cms.double(0.05),
2034             phiXlocal = cms.double(0.0004),
2035             dYlocal = cms.double(0.05),
2036             phiZlocal = cms.double(0.0004),
2037             dXlocal = cms.double(0.05),
2038             phiYlocal = cms.double(0.0004)
2039         ),
2040         DetUnits = cms.PSet(
2041             dZlocal = cms.double(0.003),
2042             phiXlocal = cms.double(0.001),
2043             dYlocal = cms.double(0.005),
2044             phiZlocal = cms.double(0.001),
2045             dXlocal = cms.double(0.005),
2046             phiYlocal = cms.double(0.001)
2047         ),
2048         TPEBlades = cms.PSet(
2049             dZlocal = cms.double(0.01),
2050             phiXlocal = cms.double(0.001),
2051             dYlocal = cms.double(0.01),
2052             phiZlocal = cms.double(0.001),
2053             dXlocal = cms.double(0.01),
2054             phiYlocal = cms.double(0.001)
2055         ),
2056         distribution = cms.string('gaussian')
2057     ),
2058     TIDEndcaps = cms.PSet(
2059         TIDSides = cms.PSet(
2060             dZlocal = cms.double(0.005),
2061             phiXlocal = cms.double(0.0001),
2062             dYlocal = cms.double(0.005),
2063             phiZlocal = cms.double(0.0001),
2064             dXlocal = cms.double(0.005),
2065             phiYlocal = cms.double(0.0001)
2066         ),
2067         scale = cms.double(1.0),
2068         scaleError = cms.double(1.0),
2069         TIDEndcaps = cms.PSet( # FIXME??
2070             dZlocal = cms.double(0.1),
2071             phiXlocal = cms.double(0.0013),
2072             dYlocal = cms.double(0.1),
2073             phiZlocal = cms.double(0.0013),
2074             dXlocal = cms.double(0.1),
2075             phiYlocal = cms.double(0.0013)
2076         ),
2077         TIDRings = cms.PSet(
2078             dZlocal = cms.double(0.01),
2079             phiXlocal = cms.double(0.0001),
2080             dYlocal = cms.double(0.01),
2081             phiZlocal = cms.double(0.0001),
2082             dXlocal = cms.double(0.01),
2083             phiYlocal = cms.double(0.0001)
2084         ),
2085         TIDRing1_2 = cms.PSet(
2086             Dets = cms.PSet(
2087                 dZlocal = cms.double(0.005),
2088                 phiXlocal = cms.double(0.0005),
2089                 dYlocal = cms.double(0.005),
2090                 phiZlocal = cms.double(0.0005),
2091                 dXlocal = cms.double(0.005),
2092                 phiYlocal = cms.double(0.0005)
2093             )
2094         ),
2095         TIDDisks = cms.PSet(
2096             dZlocal = cms.double(0.05),
2097             phiXlocal = cms.double(0.0004),
2098             dYlocal = cms.double(0.05),
2099             phiZlocal = cms.double(0.0004),
2100             dXlocal = cms.double(0.05),
2101             phiYlocal = cms.double(0.0004)
2102         ),
2103         distribution = cms.string('gaussian'),
2104         TIDRing3 = cms.PSet(
2105             DetUnits = cms.PSet(
2106                 dZlocal = cms.double(0.005),
2107                 phiXlocal = cms.double(0.0005),
2108                 dYlocal = cms.double(0.005),
2109                 phiZlocal = cms.double(0.0005),
2110                 dXlocal = cms.double(0.005),
2111                 phiYlocal = cms.double(0.0005)
2112             )
2113         )
2114     )
2115 )
2116 
2117 
2118 
2119 # -----------------------------------------------------------------------
2120 # TrackerAfterCRAFTScenario
2121 # ----------------------------------------
2122 # ----------------- NOTE -----------------
2123 # This scenario is a simple merge of scenarios above:
2124 # It seems that after CRAFT alignment we have aligned TIB and TOB
2125 # as good as foreseen after 100 pb^-1 (at least what concerns residuals [DMR]),
2126 # while the rest of the tracker is at the level of the 10 pb^-1 scenario
2127 # or even still at that of SurveyLASOnlyScenario.
2128 # ------------- NOTE ends ----------------
2129 # ----------------------------------------
2130 TrackerCRAFTScenario = copy.deepcopy(Tracker10pbScenario)
2131 TrackerCRAFTScenario.TIBHalfBarrels = copy.deepcopy(Tracker100pbScenario.TIBHalfBarrels)
2132 TrackerCRAFTScenario.TOBHalfBarrels = copy.deepcopy(Tracker100pbScenario.TOBHalfBarrels)
2133 TrackerCRAFTScenario.TPEEndcaps = copy.deepcopy(TrackerSurveyLASOnlyScenario.TPEEndcaps)
2134 
2135 # -----------------------------------------------------------------------
2136 # Pixel Tracker Only z Shifts and Rotations
2137 # ----------------------------------------------------------------------
2138 PixelTrackerOnlyZShift = cms.PSet(MisalignmentScenarioSettings,
2139                                   TPBHalfBarrel1 = cms.PSet(distribution = cms.string('fixed'),
2140                                                             DetUnits = cms.PSet(dZ = cms.double(0.0015))
2141                                                             ),
2142                                   TPBHalfBarrel2 = cms.PSet(distribution = cms.string('fixed'),
2143                                                             DetUnits = cms.PSet(dZ = cms.double(-0.0015))
2144                                                             )
2145                                   )
2146 
2147 # -----------------------------------------------------------------------
2148 # Pixel Tracker Fixed Shifts and Rotations
2149 # ----------------------------------------------------------------------
2150 PixelTrackerFixedShiftsAndRotations = cms.PSet(MisalignmentScenarioSettings,
2151                                           TPBHalfBarrel1 = cms.PSet(distribution = cms.string('fixed'),
2152                                                                     DetUnits = cms.PSet(dX = cms.double(0.0005),
2153                                                                                         dY = cms.double(0.0010),
2154                                                                                         dZ = cms.double(0.0015),
2155                                                                                         phiX = cms.double(30e-6),
2156                                                                                         phiY = cms.double(30e-06),
2157                                                                                         phiZ = cms.double(30e-06)
2158                                                                                         )
2159                                                                     ),
2160                                           TPBHalfBarrel2 = cms.PSet(distribution = cms.string('fixed'),
2161                                                                     DetUnits = cms.PSet(dX = cms.double(-0.0005),
2162                                                                                         dY = cms.double(-0.0010),
2163                                                                                         dZ = cms.double(-0.0015),
2164                                                                                         phiX = cms.double(-30e-6),
2165                                                                                         phiY = cms.double(-30e-06),
2166                                                                                         phiZ = cms.double(-30e-06)
2167                                                                                         )
2168                                                                     )
2169                                           )
2170 
2171 
2172 # -----------------------------------------------------------------------
2173 # Pixel Tracker Random Shifts and Rotations
2174 # ----------------------------------------------------------------------
2175 
2176 PixelTrackerDicedShiftsAndRotations = cms.PSet(MisalignmentScenarioSettings,
2177                                                TPBBarrels = cms.PSet(distribution = cms.string('gaussian'),
2178                                                                      scale = cms.double(1.0),
2179                                                                      scaleError = cms.double(1.0),
2180                                                                      TPBHalfBarrels = cms.PSet(distribution = cms.string('flat'),
2181                                                                                                dX = cms.double(0.0005),
2182                                                                                                dY = cms.double(0.0010),
2183                                                                                                dZ = cms.double(0.0015),
2184                                                                                                phiX = cms.double(30e-6),
2185                                                                                                phiY = cms.double(30e-06),
2186                                                                                                phiZ = cms.double(30e-06)
2187                                                                                                )
2188                                                                      )
2189                                                )
2190 
2191 
2192 
2193 MisalignmentScenario_5mu = MisalignmentScenarioSettings.clone(
2194   setError = cms.bool(False),
2195   scale = cms.double(0.01), # shifts in 100um
2196 
2197   TPBHalfBarrels = cms.PSet(
2198     DetUnits = cms.PSet(
2199       dXlocal = cms.double(0.05),
2200       dYlocal = cms.double(0.05),
2201     ),
2202   ),
2203 
2204   TIBHalfBarrels = cms.PSet(
2205     DetUnits = cms.PSet(
2206       dXlocal = cms.double(0.05),
2207     ),
2208   ),
2209 
2210   TOBHalfBarrels = cms.PSet(
2211     DetUnits = cms.PSet(
2212       dXlocal = cms.double(0.05),
2213     ),
2214   ),
2215 
2216   TPEEndcaps = cms.PSet(
2217     DetUnits = cms.PSet(
2218       dXlocal = cms.double(0.05),
2219       dYlocal = cms.double(0.05),
2220     ),
2221   ),
2222 
2223   TIDEndcaps = cms.PSet(
2224     DetUnits = cms.PSet(
2225       dXlocal = cms.double(0.05),
2226     ),
2227   ),
2228 
2229   TECEndcaps = cms.PSet(
2230     DetUnits = cms.PSet(
2231       dXlocal = cms.double(0.05),
2232     ),
2233   ),
2234 )
2235 
2236 MisalignmentScenario_10mu = MisalignmentScenarioSettings.clone(
2237   setError = cms.bool(False),
2238   scale = cms.double(0.01), # shifts in 100um
2239 
2240   TPBHalfBarrels = cms.PSet(
2241     DetUnits = cms.PSet(
2242       dXlocal = cms.double(0.1),
2243       dYlocal = cms.double(0.1),
2244     ),
2245   ),
2246 
2247   TIBHalfBarrels = cms.PSet(
2248     DetUnits = cms.PSet(
2249       dXlocal = cms.double(0.1),
2250     ),
2251   ),
2252 
2253   TOBHalfBarrels = cms.PSet(
2254     DetUnits = cms.PSet(
2255       dXlocal = cms.double(0.1),
2256     ),
2257   ),
2258 
2259   TPEEndcaps = cms.PSet(
2260     DetUnits = cms.PSet(
2261       dXlocal = cms.double(0.1),
2262       dYlocal = cms.double(0.1),
2263     ),
2264   ),
2265 
2266   TIDEndcaps = cms.PSet(
2267     DetUnits = cms.PSet(
2268       dXlocal = cms.double(0.1),
2269     ),
2270   ),
2271 
2272   TECEndcaps = cms.PSet(
2273     DetUnits = cms.PSet(
2274       dXlocal = cms.double(0.1),
2275     ),
2276   ),
2277 )
2278 
2279 MisalignmentScenario_15mu = MisalignmentScenarioSettings.clone(
2280   setError = cms.bool(False),
2281   scale = cms.double(0.01), # shifts in 100um
2282 
2283   TPBHalfBarrels = cms.PSet(
2284     DetUnits = cms.PSet(
2285       dXlocal = cms.double(0.15),
2286       dYlocal = cms.double(0.15),
2287     ),
2288   ),
2289 
2290   TIBHalfBarrels = cms.PSet(
2291     DetUnits = cms.PSet(
2292       dXlocal = cms.double(0.15),
2293     ),
2294   ),
2295 
2296   TOBHalfBarrels = cms.PSet(
2297     DetUnits = cms.PSet(
2298       dXlocal = cms.double(0.15),
2299     ),
2300   ),
2301 
2302   TPEEndcaps = cms.PSet(
2303     DetUnits = cms.PSet(
2304       dXlocal = cms.double(0.15),
2305       dYlocal = cms.double(0.15),
2306     ),
2307   ),
2308 
2309   TIDEndcaps = cms.PSet(
2310     DetUnits = cms.PSet(
2311       dXlocal = cms.double(0.15),
2312     ),
2313   ),
2314 
2315   TECEndcaps = cms.PSet(
2316     DetUnits = cms.PSet(
2317       dXlocal = cms.double(0.15),
2318     ),
2319   ),
2320 )
2321 
2322 MisalignmentScenario_20mu = MisalignmentScenarioSettings.clone(
2323   setError = cms.bool(False),
2324   scale = cms.double(0.01), # shifts in 100um
2325 
2326   TPBHalfBarrels = cms.PSet(
2327     DetUnits = cms.PSet(
2328       dXlocal = cms.double(0.2),
2329       dYlocal = cms.double(0.2),
2330     ),
2331   ),
2332 
2333   TIBHalfBarrels = cms.PSet(
2334     DetUnits = cms.PSet(
2335       dXlocal = cms.double(0.2),
2336     ),
2337   ),
2338 
2339   TOBHalfBarrels = cms.PSet(
2340     DetUnits = cms.PSet(
2341       dXlocal = cms.double(0.2),
2342     ),
2343   ),
2344 
2345   TPEEndcaps = cms.PSet(
2346     DetUnits = cms.PSet(
2347       dXlocal = cms.double(0.2),
2348       dYlocal = cms.double(0.2),
2349     ),
2350   ),
2351 
2352   TIDEndcaps = cms.PSet(
2353     DetUnits = cms.PSet(
2354       dXlocal = cms.double(0.2),
2355     ),
2356   ),
2357 
2358   TECEndcaps = cms.PSet(
2359     DetUnits = cms.PSet(
2360       dXlocal = cms.double(0.2),
2361     ),
2362   ),
2363 )
2364 
2365 MisalignmentScenario_20muGlobalX = MisalignmentScenarioSettings.clone(
2366   setError = cms.bool(False),
2367   scale = cms.double(0.01), # shifts in 100um
2368 
2369   TPBHalfBarrels = cms.PSet(
2370     DetUnits = cms.PSet(
2371       dX = cms.double(0.2),
2372     ),
2373   ),
2374 
2375   TIBHalfBarrels = cms.PSet(
2376     DetUnits = cms.PSet(
2377       dX = cms.double(0.2),
2378     ),
2379   ),
2380 
2381   TOBHalfBarrels = cms.PSet(
2382     DetUnits = cms.PSet(
2383       dX = cms.double(0.2),
2384     ),
2385   ),
2386 
2387   TPEEndcaps = cms.PSet(
2388     DetUnits = cms.PSet(
2389       dX = cms.double(0.2),
2390     ),
2391   ),
2392 
2393   TIDEndcaps = cms.PSet(
2394     DetUnits = cms.PSet(
2395       dX = cms.double(0.2),
2396     ),
2397   ),
2398 
2399   TECEndcaps = cms.PSet(
2400     DetUnits = cms.PSet(
2401       dX = cms.double(0.2),
2402     ),
2403   ),
2404 )
2405 
2406 MisalignmentScenario_20muLocalX = MisalignmentScenarioSettings.clone(
2407   setError = cms.bool(False),
2408   scale = cms.double(0.01), # shifts in 100um
2409 
2410   TPBHalfBarrels = cms.PSet(
2411     DetUnits = cms.PSet(
2412       dXlocal = cms.double(0.2),
2413     ),
2414   ),
2415 
2416   TIBHalfBarrels = cms.PSet(
2417     DetUnits = cms.PSet(
2418       dXlocal = cms.double(0.2),
2419     ),
2420   ),
2421 
2422   TOBHalfBarrels = cms.PSet(
2423     DetUnits = cms.PSet(
2424       dXlocal = cms.double(0.2),
2425     ),
2426   ),
2427 
2428   TPEEndcaps = cms.PSet(
2429     DetUnits = cms.PSet(
2430       dXlocal = cms.double(0.2),
2431     ),
2432   ),
2433 
2434   TIDEndcaps = cms.PSet(
2435     DetUnits = cms.PSet(
2436       dXlocal = cms.double(0.2),
2437     ),
2438   ),
2439 
2440   TECEndcaps = cms.PSet(
2441     DetUnits = cms.PSet(
2442       dXlocal = cms.double(0.2),
2443     ),
2444   ),
2445 )
2446 
2447 MisalignmentScenario_20muGlobalY = MisalignmentScenarioSettings.clone(
2448   scale = cms.double(0.01), # shifts in 100um
2449 
2450   TPBHalfBarrels = cms.PSet(
2451     DetUnits = cms.PSet(
2452       dY = cms.double(0.2),
2453     ),
2454   ),
2455 
2456   TIBHalfBarrels = cms.PSet(
2457     DetUnits = cms.PSet(
2458       dY = cms.double(0.2),
2459     ),
2460   ),
2461 
2462   TOBHalfBarrels = cms.PSet(
2463     DetUnits = cms.PSet(
2464       dY = cms.double(0.2),
2465     ),
2466   ),
2467 
2468   TPEEndcaps = cms.PSet(
2469     DetUnits = cms.PSet(
2470       dY = cms.double(0.2),
2471     ),
2472   ),
2473 
2474   TIDEndcaps = cms.PSet(
2475     DetUnits = cms.PSet(
2476       dY = cms.double(0.2),
2477     ),
2478   ),
2479 
2480   TECEndcaps = cms.PSet(
2481     DetUnits = cms.PSet(
2482       dY = cms.double(0.2),
2483     ),
2484   ),
2485 )
2486 
2487 MisalignmentScenario_20muLocalY = MisalignmentScenarioSettings.clone(
2488   setError = cms.bool(False),
2489   scale = cms.double(0.01), # shifts in 100um
2490 
2491   TPBHalfBarrels = cms.PSet(
2492     DetUnits = cms.PSet(
2493       dYlocal = cms.double(0.2),
2494     ),
2495   ),
2496 
2497   TIBHalfBarrels = cms.PSet(
2498     DetUnits = cms.PSet(
2499       dYlocal = cms.double(0.2),
2500     ),
2501   ),
2502 
2503   TOBHalfBarrels = cms.PSet(
2504     DetUnits = cms.PSet(
2505       dYlocal = cms.double(0.2),
2506     ),
2507   ),
2508 
2509   TPEEndcaps = cms.PSet(
2510     DetUnits = cms.PSet(
2511       dYlocal = cms.double(0.2),
2512     ),
2513   ),
2514 
2515   TIDEndcaps = cms.PSet(
2516     DetUnits = cms.PSet(
2517       dYlocal = cms.double(0.2),
2518     ),
2519   ),
2520 
2521   TECEndcaps = cms.PSet(
2522     DetUnits = cms.PSet(
2523       dYlocal = cms.double(0.2),
2524     ),
2525   ),
2526 )
2527 
2528 MisalignmentScenario_20muGlobalZ = MisalignmentScenarioSettings.clone(
2529   setError = cms.bool(False),
2530   scale = cms.double(0.01), # shifts in 100um
2531 
2532   TPBHalfBarrels = cms.PSet(
2533     DetUnits = cms.PSet(
2534       dZ = cms.double(0.2),
2535     ),
2536   ),
2537 
2538   TIBHalfBarrels = cms.PSet(
2539     DetUnits = cms.PSet(
2540       dZ = cms.double(0.2),
2541     ),
2542   ),
2543 
2544   TOBHalfBarrels = cms.PSet(
2545     DetUnits = cms.PSet(
2546       dZ = cms.double(0.2),
2547     ),
2548   ),
2549 
2550   TPEEndcaps = cms.PSet(
2551     DetUnits = cms.PSet(
2552       dZ = cms.double(0.2),
2553     ),
2554   ),
2555 
2556   TIDEndcaps = cms.PSet(
2557     DetUnits = cms.PSet(
2558       dZ = cms.double(0.2),
2559     ),
2560   ),
2561 
2562   TECEndcaps = cms.PSet(
2563     DetUnits = cms.PSet(
2564       dZ = cms.double(0.2),
2565     ),
2566   ),
2567 )
2568 
2569 MisalignmentScenario_20muLocalZ = MisalignmentScenarioSettings.clone(
2570   setError = cms.bool(False),
2571   scale = cms.double(0.01), # shifts in 100um
2572 
2573   TPBHalfBarrels = cms.PSet(
2574     DetUnits = cms.PSet(
2575       dZlocal = cms.double(0.2),
2576     ),
2577   ),
2578 
2579   TIBHalfBarrels = cms.PSet(
2580     DetUnits = cms.PSet(
2581       dZlocal = cms.double(0.2),
2582     ),
2583   ),
2584 
2585   TOBHalfBarrels = cms.PSet(
2586     DetUnits = cms.PSet(
2587       dZlocal = cms.double(0.2),
2588     ),
2589   ),
2590 
2591   TPEEndcaps = cms.PSet(
2592     DetUnits = cms.PSet(
2593       dZlocal = cms.double(0.2),
2594     ),
2595   ),
2596 
2597   TIDEndcaps = cms.PSet(
2598     DetUnits = cms.PSet(
2599       dZlocal = cms.double(0.2),
2600     ),
2601   ),
2602 
2603   TECEndcaps = cms.PSet(
2604     DetUnits = cms.PSet(
2605       dZlocal = cms.double(0.2),
2606     ),
2607   ),
2608 )
2609 
2610 MisalignmentScenario_20muGlobalXY = MisalignmentScenarioSettings.clone(
2611   scale = cms.double(0.01), # shifts in 100um
2612 
2613   TPBHalfBarrels = cms.PSet(
2614     DetUnits = cms.PSet(
2615       dX = cms.double(0.2),
2616       dY = cms.double(0.2),
2617     ),
2618   ),
2619 
2620   TIBHalfBarrels = cms.PSet(
2621     DetUnits = cms.PSet(
2622       dX = cms.double(0.2),
2623       dY = cms.double(0.2),
2624     ),
2625   ),
2626 
2627   TOBHalfBarrels = cms.PSet(
2628     DetUnits = cms.PSet(
2629       dX = cms.double(0.2),
2630       dY = cms.double(0.2),
2631     ),
2632   ),
2633 
2634   TPEEndcaps = cms.PSet(
2635     DetUnits = cms.PSet(
2636       dX = cms.double(0.2),
2637       dY = cms.double(0.2),
2638     ),
2639   ),
2640 
2641   TIDEndcaps = cms.PSet(
2642     DetUnits = cms.PSet(
2643       dX = cms.double(0.2),
2644       dY = cms.double(0.2),
2645     ),
2646   ),
2647 
2648   TECEndcaps = cms.PSet(
2649     DetUnits = cms.PSet(
2650       dX = cms.double(0.2),
2651       dY = cms.double(0.2),
2652     ),
2653   ),
2654 )
2655 
2656 MisalignmentScenario_20muLocalXY = MisalignmentScenarioSettings.clone(
2657   setError = cms.bool(False),
2658   scale = cms.double(0.01), # shifts in 100um
2659 
2660   TPBHalfBarrels = cms.PSet(
2661     DetUnits = cms.PSet(
2662       dXlocal = cms.double(0.2),
2663       dYlocal = cms.double(0.2),
2664     ),
2665   ),
2666 
2667   TIBHalfBarrels = cms.PSet(
2668     DetUnits = cms.PSet(
2669       dXlocal = cms.double(0.2),
2670       dYlocal = cms.double(0.2),
2671     ),
2672   ),
2673 
2674   TOBHalfBarrels = cms.PSet(
2675     DetUnits = cms.PSet(
2676       dXlocal = cms.double(0.2),
2677       dYlocal = cms.double(0.2),
2678     ),
2679   ),
2680 
2681   TPEEndcaps = cms.PSet(
2682     DetUnits = cms.PSet(
2683       dXlocal = cms.double(0.2),
2684       dYlocal = cms.double(0.2),
2685     ),
2686   ),
2687 
2688   TIDEndcaps = cms.PSet(
2689     DetUnits = cms.PSet(
2690       dXlocal = cms.double(0.2),
2691       dYlocal = cms.double(0.2),
2692     ),
2693   ),
2694 
2695   TECEndcaps = cms.PSet(
2696     DetUnits = cms.PSet(
2697       dXlocal = cms.double(0.2),
2698       dYlocal = cms.double(0.2),
2699     ),
2700   ),
2701 )
2702 
2703 MisalignmentScenario_20muGlobalXYZ = MisalignmentScenarioSettings.clone(
2704   setError = cms.bool(False),
2705   scale = cms.double(0.01), # shifts in 100um
2706 
2707   TPBHalfBarrels = cms.PSet(
2708     DetUnits = cms.PSet(
2709       dX = cms.double(0.2),
2710       dY = cms.double(0.2),
2711       dZ = cms.double(0.2),
2712     ),
2713   ),
2714 
2715   TIBHalfBarrels = cms.PSet(
2716     DetUnits = cms.PSet(
2717       dX = cms.double(0.2),
2718       dY = cms.double(0.2),
2719       dZ = cms.double(0.2),
2720     ),
2721   ),
2722 
2723   TOBHalfBarrels = cms.PSet(
2724     DetUnits = cms.PSet(
2725       dX = cms.double(0.2),
2726       dY = cms.double(0.2),
2727       dZ = cms.double(0.2),
2728     ),
2729   ),
2730 
2731   TPEEndcaps = cms.PSet(
2732     DetUnits = cms.PSet(
2733       dX = cms.double(0.2),
2734       dY = cms.double(0.2),
2735       dZ = cms.double(0.2),
2736     ),
2737   ),
2738 
2739   TIDEndcaps = cms.PSet(
2740     DetUnits = cms.PSet(
2741       dX = cms.double(0.2),
2742       dY = cms.double(0.2),
2743       dZ = cms.double(0.2),
2744     ),
2745   ),
2746 
2747   TECEndcaps = cms.PSet(
2748     DetUnits = cms.PSet(
2749       dX = cms.double(0.2),
2750       dY = cms.double(0.2),
2751       dZ = cms.double(0.2),
2752     ),
2753   ),
2754 )
2755 
2756 MisalignmentScenario_20muLocalXYZ = MisalignmentScenarioSettings.clone(
2757   setError = cms.bool(False),
2758   scale = cms.double(0.01), # shifts in 100um
2759 
2760   TPBHalfBarrels = cms.PSet(
2761     DetUnits = cms.PSet(
2762       dXlocal = cms.double(0.2),
2763       dYlocal = cms.double(0.2),
2764       dZlocal = cms.double(0.2),
2765     ),
2766   ),
2767 
2768   TIBHalfBarrels = cms.PSet(
2769     DetUnits = cms.PSet(
2770       dXlocal = cms.double(0.2),
2771       dYlocal = cms.double(0.2),
2772       dZlocal = cms.double(0.2),
2773     ),
2774   ),
2775 
2776   TOBHalfBarrels = cms.PSet(
2777     DetUnits = cms.PSet(
2778       dXlocal = cms.double(0.2),
2779       dYlocal = cms.double(0.2),
2780       dZlocal = cms.double(0.2),
2781     ),
2782   ),
2783 
2784   TPEEndcaps = cms.PSet(
2785     DetUnits = cms.PSet(
2786       dXlocal = cms.double(0.2),
2787       dYlocal = cms.double(0.2),
2788       dZlocal = cms.double(0.2),
2789     ),
2790   ),
2791 
2792   TIDEndcaps = cms.PSet(
2793     DetUnits = cms.PSet(
2794       dXlocal = cms.double(0.2),
2795       dYlocal = cms.double(0.2),
2796       dZlocal = cms.double(0.2),
2797     ),
2798   ),
2799 
2800   TECEndcaps = cms.PSet(
2801     DetUnits = cms.PSet(
2802       dXlocal = cms.double(0.2),
2803       dYlocal = cms.double(0.2),
2804       dZlocal = cms.double(0.2),
2805     ),
2806   ),
2807 )
2808 
2809 MisalignmentScenario_BPIX20muGlobalX = MisalignmentScenarioSettings.clone(
2810   setError = cms.bool(False),
2811   scale = cms.double(0.01), # shifts in 100um
2812 
2813   TPBHalfBarrels = cms.PSet(
2814     DetUnits = cms.PSet(
2815       dX = cms.double(0.2),
2816     ),
2817   ),
2818 )
2819 
2820 MisalignmentScenario_BPIX20muGlobalY = MisalignmentScenarioSettings.clone(
2821   setError = cms.bool(False),
2822   scale = cms.double(0.01), # shifts in 100um
2823 
2824   TPBHalfBarrels = cms.PSet(
2825     DetUnits = cms.PSet(
2826       dY = cms.double(0.2),
2827     ),
2828   ),
2829 )
2830 
2831 MisalignmentScenario_BPIX20muGlobalZ = MisalignmentScenarioSettings.clone(
2832   setError = cms.bool(False),
2833   scale = cms.double(0.01), # shifts in 100um
2834 
2835   TPBHalfBarrels = cms.PSet(
2836     DetUnits = cms.PSet(
2837       dZ = cms.double(0.2),
2838     ),
2839   ),
2840 )
2841 
2842 MisalignmentScenario_BPIX20muLocalX = MisalignmentScenarioSettings.clone(
2843   setError = cms.bool(False),
2844   scale = cms.double(0.01), # shifts in 100um
2845 
2846   TPBHalfBarrels = cms.PSet(
2847     DetUnits = cms.PSet(
2848       dXlocal = cms.double(0.2),
2849     ),
2850   ),
2851 )
2852 
2853 MisalignmentScenario_BPIX20muLocalY = MisalignmentScenarioSettings.clone(
2854   setError = cms.bool(False),
2855   scale = cms.double(0.01), # shifts in 100um
2856 
2857   TPBHalfBarrels = cms.PSet(
2858     DetUnits = cms.PSet(
2859       dYlocal = cms.double(0.2),
2860     ),
2861   ),
2862 )
2863 
2864 MisalignmentScenario_BPIX20muLocalZ = MisalignmentScenarioSettings.clone(
2865   setError = cms.bool(False),
2866   scale = cms.double(0.01), # shifts in 100um
2867 
2868   TPBHalfBarrels = cms.PSet(
2869     DetUnits = cms.PSet(
2870       dZlocal = cms.double(0.2),
2871     ),
2872   ),
2873 )
2874 
2875 MisalignmentScenario_NonMisalignedBPIX = MisalignmentScenarioSettings.clone(
2876   setError = cms.bool(False),
2877   scale = cms.double(0.01), # shifts in 100um
2878 
2879   TPBHalfBarrels = cms.PSet(
2880     DetUnits = cms.PSet(
2881       #~ dYLocal = cms.double(0.1),
2882     ),
2883   ),
2884 
2885   TIBHalfBarrels = cms.PSet(
2886     DetUnits = cms.PSet(
2887       dXlocal = cms.double(0.25),
2888       dYlocal = cms.double(0.25),
2889       dZlocal = cms.double(0.25),
2890     ),
2891   ),
2892 
2893   TOBHalfBarrels = cms.PSet(
2894     DetUnits = cms.PSet(
2895       dXlocal = cms.double(0.25),
2896       dYlocal = cms.double(0.25),
2897       dZlocal = cms.double(0.25),
2898     ),
2899   ),
2900 
2901   TPEEndcaps = cms.PSet(
2902     DetUnits = cms.PSet(
2903       dXlocal = cms.double(0.25),
2904       dYlocal = cms.double(0.25),
2905       dZlocal = cms.double(0.25),
2906     ),
2907   ),
2908 
2909   TIDEndcaps = cms.PSet(
2910     DetUnits = cms.PSet(
2911       dXlocal = cms.double(0.25),
2912       dYlocal = cms.double(0.25),
2913       dZlocal = cms.double(0.25),
2914     ),
2915   ),
2916 
2917   TECEndcaps = cms.PSet(
2918     DetUnits = cms.PSet(
2919       dXlocal = cms.double(0.25),
2920       dYlocal = cms.double(0.25),
2921       dZlocal = cms.double(0.25),
2922     ),
2923   ),
2924 )
2925 
2926 MisalignmentScenarioDifferentSubdetectors = MisalignmentScenarioSettings.clone(
2927   setError = cms.bool(False),
2928   scale = cms.double(0.01), # shifts in 100um
2929 
2930   TPBHalfBarrels = cms.PSet(
2931     DetUnits = cms.PSet(
2932       #~ dYLocal = cms.double(0.1),
2933     ),
2934   ),
2935 
2936   TIBHalfBarrels = cms.PSet(
2937     DetUnits = cms.PSet(
2938       dYlocal = cms.double(0.5),
2939       dZlocal = cms.double(0.5),
2940     ),
2941   ),
2942 
2943   TOBHalfBarrels = cms.PSet(
2944     DetUnits = cms.PSet(
2945       dXlocal = cms.double(0.05),
2946     ),
2947   ),
2948 
2949   TPEEndcaps = cms.PSet(
2950     DetUnits = cms.PSet(
2951       dZlocal = cms.double(0.4),
2952     ),
2953   ),
2954 
2955   TIDEndcaps = cms.PSet(
2956     DetUnits = cms.PSet(
2957       dXlocal = cms.double(0.1),
2958       dYlocal = cms.double(0.5),
2959       dZlocal = cms.double(0.5),
2960     ),
2961   ),
2962 
2963   TECEndcaps = cms.PSet(
2964     DetUnits = cms.PSet(
2965       dXlocal = cms.double(0.3),
2966     ),
2967   ),
2968 )
2969 
2970 MisalignmentScenarioDifferentSubdetectorsLarge = MisalignmentScenarioSettings.clone(
2971   setError = cms.bool(False),
2972   scale = cms.double(0.01), # shifts in 100um
2973 
2974   TPBHalfBarrels = cms.PSet(
2975     DetUnits = cms.PSet(
2976       #~ dYLocal = cms.double(0.1),
2977     ),
2978   ),
2979 
2980   TIBHalfBarrels = cms.PSet(
2981     DetUnits = cms.PSet(
2982       dYlocal = cms.double(0.5),
2983       dZlocal = cms.double(0.5),
2984     ),
2985   ),
2986 
2987   TOBHalfBarrels = cms.PSet(
2988     DetUnits = cms.PSet(
2989       dXlocal = cms.double(0.25),
2990     ),
2991   ),
2992 
2993   TPEEndcaps = cms.PSet(
2994     DetUnits = cms.PSet(
2995       dZlocal = cms.double(0.4),
2996     ),
2997   ),
2998 
2999   TIDEndcaps = cms.PSet(
3000     DetUnits = cms.PSet(
3001       dXlocal = cms.double(0.15),
3002       dYlocal = cms.double(0.5),
3003       dZlocal = cms.double(0.5),
3004     ),
3005   ),
3006 
3007   TECEndcaps = cms.PSet(
3008     DetUnits = cms.PSet(
3009       dXlocal = cms.double(0.3),
3010     ),
3011   ),
3012 )
3013 
3014 MisalignmentScenarioDifferentSubdetectorsLocal = MisalignmentScenarioSettings.clone(
3015   setError = cms.bool(False),
3016   #~ scale = cms.double(0.01), # shifts in 100um
3017 
3018   TPBHalfBarrels = cms.PSet(
3019     DetUnits = cms.PSet(
3020       dYlocal = cms.double(0.001),
3021     ),
3022   ),
3023 
3024   TIBHalfBarrels = cms.PSet(
3025     DetUnits = cms.PSet(
3026       dZlocal = cms.double(0.002),
3027     ),
3028   ),
3029 
3030   TOBHalfBarrels = cms.PSet(
3031     DetUnits = cms.PSet(
3032       phiYlocal = cms.double(0.01),
3033     ),
3034   ),
3035 
3036   TPEEndcaps = cms.PSet(
3037     DetUnits = cms.PSet(
3038       dXlocal = cms.double(0.002),
3039     ),
3040   ),
3041 
3042   TIDEndcaps = cms.PSet(
3043     DetUnits = cms.PSet(
3044       phiXlocal = cms.double(0.02),
3045     ),
3046   ),
3047 
3048   TECEndcaps = cms.PSet(
3049     DetUnits = cms.PSet(
3050       phiZlocal = cms.double(0.01),
3051     ),
3052   ),
3053 )
3054 
3055 MisalignmentScenario10Mu = MisalignmentScenarioSettings.clone(
3056   setError = cms.bool(False),
3057   scale = cms.double(0.01), # shifts in 100um
3058 
3059   TPBHalfBarrels = cms.PSet(
3060     DetUnits = cms.PSet(
3061       dYlocal = cms.double(0.1),
3062       dXlocal = cms.double(0.1),
3063     ),
3064   ),
3065 
3066   TIBHalfBarrels = cms.PSet(
3067     DetUnits = cms.PSet(
3068       dYlocal = cms.double(0.1),
3069       dXlocal = cms.double(0.1),
3070     ),
3071   ),
3072 
3073   TOBHalfBarrels = cms.PSet(
3074     DetUnits = cms.PSet(
3075       dYlocal = cms.double(0.1),
3076       dXlocal = cms.double(0.1),
3077     ),
3078   ),
3079 
3080   TPEEndcaps = cms.PSet(
3081     DetUnits = cms.PSet(
3082       dYlocal = cms.double(0.1),
3083       dXlocal = cms.double(0.1),
3084     ),
3085   ),
3086 
3087   TIDEndcaps = cms.PSet(
3088     DetUnits = cms.PSet(
3089       dYlocal = cms.double(0.1),
3090       dXlocal = cms.double(0.1),
3091     ),
3092   ),
3093 
3094   TECEndcaps = cms.PSet(
3095     DetUnits = cms.PSet(
3096       dYlocal = cms.double(0.1),
3097       dXlocal = cms.double(0.1),
3098     ),
3099   ),
3100 )
3101 
3102 MisalignmentScenario100Mu = MisalignmentScenarioSettings.clone(
3103   setError = cms.bool(False),
3104   scale = cms.double(0.01), # shifts in 100um
3105 
3106   TPBHalfBarrels = cms.PSet(
3107     DetUnits = cms.PSet(
3108       dZlocal = cms.double(1),
3109       dYlocal = cms.double(1),
3110       dXlocal = cms.double(1),
3111     ),
3112   ),
3113 
3114   TIBHalfBarrels = cms.PSet(
3115     DetUnits = cms.PSet(
3116       dZlocal = cms.double(1),
3117       dYlocal = cms.double(1),
3118       dXlocal = cms.double(1),
3119     ),
3120   ),
3121 
3122   TOBHalfBarrels = cms.PSet(
3123     DetUnits = cms.PSet(
3124       dZlocal = cms.double(1),
3125       dYlocal = cms.double(1),
3126       dXlocal = cms.double(1),
3127     ),
3128   ),
3129 
3130   TPEEndcaps = cms.PSet(
3131     DetUnits = cms.PSet(
3132       dZlocal = cms.double(1),
3133       dYlocal = cms.double(1),
3134       dXlocal = cms.double(1),
3135     ),
3136   ),
3137 
3138   TIDEndcaps = cms.PSet(
3139     DetUnits = cms.PSet(
3140       dZlocal = cms.double(1),
3141       dYlocal = cms.double(1),
3142       dXlocal = cms.double(1),
3143     ),
3144   ),
3145 
3146   TECEndcaps = cms.PSet(
3147     DetUnits = cms.PSet(
3148       dZlocal = cms.double(1),
3149       dYlocal = cms.double(1),
3150       dXlocal = cms.double(1),
3151     ),
3152   ),
3153 )
3154 
3155 
3156 MisalignmentScenario200Mu = MisalignmentScenarioSettings.clone(
3157   setError = cms.bool(False),
3158   scale = cms.double(0.01),# shifts in 100mum
3159 
3160   TPBHalfBarrels = cms.PSet(
3161     DetUnits = cms.PSet(
3162       dZlocal = cms.double(2),
3163       dYlocal = cms.double(2),
3164       dXlocal = cms.double(2),
3165     ),
3166   ),
3167 
3168   TIBHalfBarrels = cms.PSet(
3169     DetUnits = cms.PSet(
3170       dZlocal = cms.double(2),
3171       dYlocal = cms.double(2),
3172       dXlocal = cms.double(2),
3173     ),
3174   ),
3175 
3176   TOBHalfBarrels = cms.PSet(
3177     DetUnits = cms.PSet(
3178       dZlocal = cms.double(2),
3179       dYlocal = cms.double(2),
3180       dXlocal = cms.double(2),
3181     ),
3182   ),
3183 
3184   TPEEndcaps = cms.PSet(
3185     DetUnits = cms.PSet(
3186       dZlocal = cms.double(2),
3187       dYlocal = cms.double(2),
3188       dXlocal = cms.double(2),
3189     ),
3190   ),
3191 
3192   TIDEndcaps = cms.PSet(
3193     DetUnits = cms.PSet(
3194       dZlocal = cms.double(2),
3195       dYlocal = cms.double(2),
3196       dXlocal = cms.double(2),
3197     ),
3198   ),
3199 
3200   TECEndcaps = cms.PSet(
3201     DetUnits = cms.PSet(
3202       dZlocal = cms.double(2),
3203       dYlocal = cms.double(2),
3204       dXlocal = cms.double(2),
3205     ),
3206   ),
3207 )
3208 
3209 
3210 MisalignmentScenario300Mu = MisalignmentScenarioSettings.clone(
3211   setError = cms.bool(False),
3212   scale = cms.double(0.01),# shifts in 100mum
3213 
3214   TPBHalfBarrels = cms.PSet(
3215     DetUnits = cms.PSet(
3216       dZlocal = cms.double(3),
3217       dYlocal = cms.double(3),
3218       dXlocal = cms.double(3),
3219     ),
3220   ),
3221 
3222   TIBHalfBarrels = cms.PSet(
3223     DetUnits = cms.PSet(
3224       dZlocal = cms.double(3),
3225       dYlocal = cms.double(3),
3226       dXlocal = cms.double(3),
3227     ),
3228   ),
3229 
3230   TOBHalfBarrels = cms.PSet(
3231     DetUnits = cms.PSet(
3232       dZlocal = cms.double(3),
3233       dYlocal = cms.double(3),
3234       dXlocal = cms.double(3),
3235     ),
3236   ),
3237 
3238   TPEEndcaps = cms.PSet(
3239     DetUnits = cms.PSet(
3240       dZlocal = cms.double(3),
3241       dYlocal = cms.double(3),
3242       dXlocal = cms.double(3),
3243     ),
3244   ),
3245 
3246   TIDEndcaps = cms.PSet(
3247     DetUnits = cms.PSet(
3248       dZlocal = cms.double(3),
3249       dYlocal = cms.double(3),
3250       dXlocal = cms.double(3),
3251     ),
3252   ),
3253 
3254   TECEndcaps = cms.PSet(
3255     DetUnits = cms.PSet(
3256       dZlocal = cms.double(3),
3257       dYlocal = cms.double(3),
3258       dXlocal = cms.double(3),
3259     ),
3260   ),
3261 )
3262 
3263 
3264 
3265 MisalignmentScenarioBPIX100Mu = MisalignmentScenarioSettings.clone(
3266   setError = cms.bool(False),
3267   scale = cms.double(0.01),# shifts in 100mum
3268 
3269   TPBHalfBarrels = cms.PSet(
3270     DetUnits = cms.PSet(
3271       dZlocal = cms.double(1),
3272       dYlocal = cms.double(1),
3273       dXlocal = cms.double(1),
3274     ),
3275   ),
3276 )
3277 
3278 
3279 MisalignedTPB = MisalignmentScenarioSettings.clone(
3280   setError = cms.bool(False),
3281   scale = cms.double(0.01), # shifts in 100um
3282 
3283   TPBHalfBarrels = cms.PSet(
3284     DetUnits = cms.PSet(
3285       dZlocal = cms.double(1),
3286       dYlocal = cms.double(1),
3287       dXlocal = cms.double(1),
3288     )
3289   )
3290 )
3291 
3292 MisalignedTPE = MisalignmentScenarioSettings.clone(
3293   setError = cms.bool(False),
3294   scale = cms.double(0.01), # shifts in 100um
3295 
3296   TPEEndcaps = cms.PSet(
3297     DetUnits = cms.PSet(
3298       dZlocal = cms.double(1),
3299       dYlocal = cms.double(1),
3300       dXlocal = cms.double(1),
3301     )
3302   )
3303 )
3304 
3305 MisalignedTIB = MisalignmentScenarioSettings.clone(
3306   setError = cms.bool(False),
3307   scale = cms.double(0.01), # shifts in 100um
3308 
3309   TIBHalfBarrels = cms.PSet(
3310     DetUnits = cms.PSet(
3311       dZlocal = cms.double(1),
3312       dYlocal = cms.double(1),
3313       dXlocal = cms.double(1),
3314     )
3315   )
3316 )
3317 
3318 MisalignedTOB = MisalignmentScenarioSettings.clone(
3319   setError = cms.bool(False),
3320   scale = cms.double(0.01), # shifts in 100um
3321 
3322   TOBHalfBarrels = cms.PSet(
3323     DetUnits = cms.PSet(
3324       dZlocal = cms.double(1),
3325       dYlocal = cms.double(1),
3326       dXlocal = cms.double(1),
3327     )
3328   )
3329 )
3330 
3331 MisalignedTID = MisalignmentScenarioSettings.clone(
3332   setError = cms.bool(False),
3333   scale = cms.double(0.01), # shifts in 100um
3334 
3335   TIDEndcaps = cms.PSet(
3336     DetUnits = cms.PSet(
3337       dZlocal = cms.double(1),
3338       dYlocal = cms.double(1),
3339       dXlocal = cms.double(1),
3340     )
3341   )
3342 )
3343 
3344 MisalignedTEC = MisalignmentScenarioSettings.clone(
3345   setError = cms.bool(False),
3346   scale = cms.double(0.01), # shifts in 100um
3347 
3348   TECEndcaps = cms.PSet(
3349     DetUnits = cms.PSet(
3350       dZlocal = cms.double(1),
3351       dYlocal = cms.double(1),
3352       dXlocal = cms.double(1),
3353     )
3354   )
3355 )
3356 
3357 
3358 MisalignmentAPEScenarioBase = MisalignmentScenarioSettings.clone(
3359   # Sigma in mum
3360   #   BPIX:   20
3361   #   BPIX-y: 10
3362   #   FPIX:   10
3363   #   FPIX-y: 20
3364   #   TEC:    20
3365   #   TIB:    10
3366   #   TID:    10
3367   #   TOB:    10
3368   setError = cms.bool(False),
3369   scale = cms.double(0.0001), # shifts in 1um
3370 
3371   TPBHalfBarrels = cms.PSet(
3372     DetUnits = cms.PSet(
3373       dZlocal = cms.double(20),
3374       dYlocal = cms.double(10),
3375       dXlocal = cms.double(20),
3376     ),
3377   ),
3378 
3379   TIBHalfBarrels = cms.PSet(
3380     DetUnits = cms.PSet(
3381       dZlocal = cms.double(10),
3382       dYlocal = cms.double(10),
3383       dXlocal = cms.double(10),
3384     ),
3385   ),
3386 
3387   TOBHalfBarrels = cms.PSet(
3388     DetUnits = cms.PSet(
3389       dZlocal = cms.double(10),
3390       dYlocal = cms.double(10),
3391       dXlocal = cms.double(10),
3392     ),
3393   ),
3394 
3395   TPEEndcaps = cms.PSet(
3396     DetUnits = cms.PSet(
3397       dZlocal = cms.double(20),
3398       dYlocal = cms.double(20),
3399       dXlocal = cms.double(10),
3400     ),
3401   ),
3402 
3403   TIDEndcaps = cms.PSet(
3404     DetUnits = cms.PSet(
3405       dZlocal = cms.double(10),
3406       dYlocal = cms.double(10),
3407       dXlocal = cms.double(10),
3408     ),
3409   ),
3410 
3411   TECEndcaps = cms.PSet(
3412     DetUnits = cms.PSet(
3413       dZlocal = cms.double(20),
3414       dYlocal = cms.double(20),
3415       dXlocal = cms.double(20),
3416     ),
3417   ),
3418 )