Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:31:08

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from SimG4Core.Application.hectorParameter_cfi import *
0004 
0005 baseHectorParameters = cms.PSet(
0006                 TransportMethod = cms.string('Hector'),
0007                 ApplyZShift = cms.bool(True)
0008 )
0009 
0010 Totem_PreTS2_2016 = cms.PSet(
0011         #TotemBeamLine = cms.bool(True),
0012         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.40_6.5TeV_CR191.541_PreTS2_TOTEM.tfs'),
0013         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.40_6.5TeV_CR179.394_PreTS2_TOTEM.tfs'),
0014         halfCrossingAngleXSector45  = cms.double(191.541), #in mrad / Beam 1
0015         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0016         halfCrossingAngleXSector56  = cms.double(179.394), #in mrad / Beam 2
0017         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0018         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0019         BeamDivergenceX = cms.double(135.071),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0020         BeamDivergenceY = cms.double(135.071),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0021         BeamSigmaX  = cms.double(54.03),
0022         BeamSigmaY  = cms.double(54.03),
0023         BeamEnergy = cms.double(6500.0)
0024 )
0025 Validated_PreTS2_2016 = cms.PSet(
0026         #TotemBeamLine = cms.bool(False),
0027         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.40_6.5TeV_CR191.541_PreTS2.tfs'),
0028         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.40_6.5TeV_CR179.394_PreTS2.tfs'),
0029         halfCrossingAngleXSector45  = cms.double(191.541), #in mrad / Beam 1
0030         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0031         halfCrossingAngleXSector56  = cms.double(179.394), #in mrad / Beam 2
0032         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0033         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0034         BeamDivergenceX = cms.double(135.071),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0035         BeamDivergenceY = cms.double(135.071),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0036         BeamSigmaX  = cms.double(54.03),
0037         BeamSigmaY  = cms.double(54.03),
0038         BeamEnergy = cms.double(6500.0)
0039 )
0040 # Beam parametes for Nominal 2016
0041 Nominal_2016 = cms.PSet(
0042         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.40_6.5TeV_CR185_Nominal_2016.tfs'),
0043         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.40_6.5TeV_CR185_Nominal_2016.tfs'),
0044         halfCrossingAngleXSector45  = cms.double(185.), #in mrad / Beam 1
0045         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0046         halfCrossingAngleXSector56  = cms.double(185.), #in mrad / Beam 2
0047         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0048         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0049         BeamDivergenceX = cms.double(35.54),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0050         BeamDivergenceY = cms.double(35.54),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0051         BeamSigmaX  = cms.double(14.22),
0052         BeamSigmaY  = cms.double(14.22),
0053         BeamEnergy = cms.double(6500.0)
0054 )
0055 
0056 # Beam parameter for Nominal 2017 optics
0057 Nominal_2017_beta40cm = cms.PSet(
0058         #TotemBeamLine = cms.bool(False),
0059         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.40_6.5TeV_CR150_Nominal_2017.tfs'),
0060         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.40_6.5TeV_CR150_Nominal_2017.tfs'),
0061         halfCrossingAngleXSector45  = cms.double(150.), #in mrad / Beam 1
0062         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0063         halfCrossingAngleXSector56  = cms.double(150.), #in mrad / Beam 2
0064         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0065         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0066         BeamDivergenceX = cms.double(30.04),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0067         BeamDivergenceY = cms.double(30.04),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0068         BeamSigmaX  = cms.double(12.01),
0069         BeamSigmaY  = cms.double(12.01),
0070         BeamEnergy = cms.double(6500.0)
0071 )
0072 #
0073 Nominal_2017_beta30cm = cms.PSet(
0074         #TotemBeamLine = cms.bool(False),
0075         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.30_6.5TeV_CR175_Nominal_2017.tfs'),
0076         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.30_6.5TeV_CR175_Nominal_2017.tfs'),
0077         halfCrossingAngleXSector45  = cms.double(175.), #in mrad / Beam 1
0078         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0079         halfCrossingAngleXSector56  = cms.double(175.), #in mrad / Beam 2
0080         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0081         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0082         BeamDivergenceX = cms.double(34.68),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0083         BeamDivergenceY = cms.double(34.68),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0084         BeamSigmaX  = cms.double(10.40),
0085         BeamSigmaY  = cms.double(10.40),
0086         BeamEnergy = cms.double(6500.0)
0087 )
0088 
0089 Nominal_2018_beta30cm = cms.PSet(
0090         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.30_6.5TeV_CR129.8_Nominal_2018.tfs'),
0091         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.30_6.5TeV_CR129.8_Nominal_2018.tfs'),
0092         halfCrossingAngleXSector45  = cms.double(129.8), #in mrad / Beam 1
0093         halfCrossingAngleYSector45  = cms.double(0.290), #in mrad / Beam 1
0094         halfCrossingAngleXSector56  = cms.double(129.8), #in mrad / Beam 2
0095         halfCrossingAngleYSector56  = cms.double(0.210), #in mrad / Beam 2
0096         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0097         BeamDivergenceX = cms.double(34.71),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0098         BeamDivergenceY = cms.double(34.67),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0099         BeamSigmaX  = cms.double(10.40),
0100         BeamSigmaY  = cms.double(10.41),
0101         BeamEnergy = cms.double(6500.0)
0102 )
0103 
0104 Nominal_2018_beta27cm = cms.PSet(
0105         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.27_6.5TeV_CR130_Nominal_2018.tfs'),
0106         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.27_6.5TeV_CR130_Nominal_2018.tfs'),
0107         halfCrossingAngleXSector45  = cms.double(130.0), #in mrad / Beam 1
0108         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0109         halfCrossingAngleXSector56  = cms.double(130.0), #in mrad / Beam 2
0110         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0111         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0112         BeamDivergenceX = cms.double(36.56),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0113         BeamDivergenceY = cms.double(36.56),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0114         BeamSigmaX  = cms.double(9.87),
0115         BeamSigmaY  = cms.double(9.87),
0116         BeamEnergy = cms.double(6500.0)
0117 )
0118 
0119 Nominal_2018_beta25cm = cms.PSet(
0120         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.25_6.5TeV_CR130_Nominal_2018.tfs'),
0121         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.25_6.5TeV_CR130_Nominal_2018.tfs'),
0122         halfCrossingAngleXSector45  = cms.double(130.0), #in mrad / Beam 1
0123         halfCrossingAngleYSector45  = cms.double(0.), #in mrad / Beam 1
0124         halfCrossingAngleXSector56  = cms.double(130.0), #in mrad / Beam 2
0125         halfCrossingAngleYSector56  = cms.double(0.), #in mrad / Beam 2
0126         BeamEnergyDispersion = cms.double(1.11e-4),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0127         BeamDivergenceX = cms.double(37.99),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0128         BeamDivergenceY = cms.double(37.98),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0129         BeamSigmaX  = cms.double(9.50),
0130         BeamSigmaY  = cms.double(9.50),
0131         BeamEnergy = cms.double(6500.0)
0132 )
0133 
0134 Nominal_RunIII =  cms.PSet(
0135         #TotemBeamLine = cms.bool(False),
0136         Beam1Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB1_Beta0.15_7TeV_CR250_HLLHCv1.4.tfs'),
0137         Beam2Filename = cms.string('SimTransport/PPSProtonTransport/data/LHCB2_Beta0.15_7TeV_CR250_HLLHCv1.4.tfs'),
0138         halfCrossingAngleXSector45  = cms.double(0.04), #in mrad / Beam 1
0139         halfCrossingAngleYSector45  = cms.double(250.1), #in mrad / Beam 1
0140         halfCrossingAngleXSector56  = cms.double(0.150), #in mrad / Beam 2
0141         halfCrossingAngleYSector56  = cms.double(-250.), #in mrad / Beam 2
0142         BeamEnergyDispersion = cms.double(1.e-3),     ## beam energy dispersion (GeV); if =0.0 the default(=0.79) is used
0143         BeamDivergenceX = cms.double(47.32),     ## x angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0144         BeamDivergenceY = cms.double(47.25),      ## y angle dispersion at IP (urad); if =0.0 the default(=30.23) is used
0145         BeamSigmaX  = cms.double(7.08),
0146         BeamSigmaY  = cms.double(7.09),
0147         BeamEnergy = cms.double(7000.0)
0148 )
0149 
0150 # choose default optics for each year
0151 
0152 hector_2016 = cms.PSet(
0153               baseHectorParameters,
0154               Nominal_2016
0155 )
0156 
0157 hector_2017 = cms.PSet(
0158               baseHectorParameters,
0159               Nominal_2017_beta40cm
0160 )
0161 
0162 hector_2018 = cms.PSet(
0163               baseHectorParameters,
0164               Nominal_2018_beta25cm  # CHANGE THIS WHEN THE PROPER ONE GET READY
0165 )
0166 
0167 hector_2021 = cms.PSet(
0168               baseHectorParameters,
0169               Nominal_RunIII
0170 )