Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:45

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("TEST")
0004 
0005 # process.source = cms.Source(
0006 #     "PoolSource",
0007 #     fileNames = cms.untracked.vstring(
0008 #       "file:/home/demattia/MuScleFit/PatMuons/onia2MuMuPAT_Summer10-DESIGN_36_V8-X0MAX-v2.root"
0009 #     )
0010 # )
0011 # process.maxEvents = cms.untracked.PSet(
0012 #     input = cms.untracked.int32(-1)
0013 # )
0014 
0015 # Use this when running on a tree
0016 process.source = cms.Source("EmptySource")
0017 process.maxEvents = cms.untracked.PSet(
0018     input = cms.untracked.int32(0)
0019 )
0020 
0021 process.looper = cms.Looper(
0022     "MuScleFit",
0023 
0024     # Only used when reading events from a root tree
0025     MaxEventsFromRootTree = cms.int32(-1),
0026     # Specify a file if you want to read events from a root tree in a local file.
0027     # In this case the input source should be an empty source with 0 events.
0028 
0029     #InputRootTreeFileName = cms.string("/home/castello/7TeV/CMSSW_3_8_5_patch3/src/Tree/Tree_2010AB_INNtk_EOYgeom_BS.root"),
0030     InputRootTreeFileName = cms.string("SubSample.root"),
0031     #InputRootTreeFileName = cms.string("/home/castello/7TeV/CMSSW_3_8_5_patch3/src/Tree/Tree_Run2010AB_INNtk_ICHEP.root"),
0032     
0033     # Specify the file name where you want to save a root tree with the muon pairs.
0034     # Leave empty if no file should be written.
0035     OutputRootTreeFileName = cms.string(""), #Tree_38X_INNtk_resol42_test7.root
0036 
0037     # Choose the kind of muons you want to run on
0038     # -------------------------------------------
0039     MuonLabel = cms.InputTag("patMuons"),
0040     # Defines what type of muons to use:
0041     # -1 = onia guys selection
0042     # -2 = onia guys selection - only GG
0043     # -3 = onia guys selection - only GT
0044     # -4 = onia guys selection - only TT
0045     # Note that the above samples are independent and represent the composition of the inclusive sample
0046     # 1 = global muon
0047     # 2 = standalone muon
0048     # 3 = tracker muon
0049     # 4 = calo muon
0050     # 10 = innerTrack of global muon
0051     MuonType = cms.int32(-1),
0052 
0053     # This line allows to switch to PAT muons. Default is false.
0054     # Note that the onia selection works only with onia patTuples.
0055     PATmuons = cms.untracked.bool(True),
0056 
0057     # ---------------- #
0058     # Select resonance #
0059     # ---------------- #
0060     # The resonances are to be specified in this order:
0061     # Z0, Y(3S), Y(2S), Y(1S), Psi(2S), J/Psi
0062     # -------------------------------------------------
0063     resfind = cms.vint32(1, 0, 0, 0, 0, 0),
0064 
0065     # Likelihood settings
0066     # -------------------
0067     maxLoopNumber = cms.untracked.int32(4),
0068     # Select which fits to do in which loop (0 = do not, 1 = do)
0069     doResolFit =        cms.vint32(1,0,1,0),
0070     doScaleFit =        cms.vint32(0,1,0,0),
0071     doBackgroundFit =   cms.vint32(0,0,0,0),
0072     doCrossSectionFit = cms.vint32(0,0,0,0),
0073     
0074    
0075     
0076 
0077     # Use the probability file or not. If not it will perform a simpler selection taking the muon pair with
0078     # invariant mass closer to the pdf value and will crash if some fit is attempted.
0079     UseProbsFile = cms.untracked.bool(True),
0080 
0081     # False = use also MC information
0082     speedup = cms.bool(True),
0083     # Set this to false if you do not want to use simTracks.
0084     # (Note that this is skipped anyway if speedup == True).
0085     compareToSimTracks = cms.bool(False),
0086 
0087     # Output settings
0088     # ---------------
0089     OutputFileName = cms.untracked.string("MuScleFit.root"),
0090     # 'MuScleFit_38X_INNtk_resol42_separatedFull.root'),
0091 
0092 
0093     # Fit parameters and fix flags (1 = use par)
0094     # ==========================================
0095 
0096 
0097     # BiasType=0 means no bias to muon momenta
0098     # ----------------------------------------
0099     BiasType = cms.int32(0),
0100     parBias = cms.vdouble(),
0101 
0102     # SmearType=0 means no smearing applied to muon momenta
0103     # -----------------------------------------------------
0104     SmearType = cms.int32(0),
0105     parSmear = cms.vdouble(),
0106 
0107     ### taken from J/Psi #########################
0108     ResolFitType = cms.int32(42),
0109     parResol = cms.vdouble(0.005812,#2.05219e-07,
0110                            0.0001838, #0.000394753,#0.000316648, # pt
0111                            0., # 8.59264e-06,
0112                            0.0058,#0.00478851,
0113                            
0114                            0.0091978,
0115                            0.01,#0.
0116                            0.05,#0.00621708,#0.00552989,
0117                            -1.25,#-0.935824,##-0.418045,##7 (orig)
0118                            
0119                            0., #8
0120                            0.01,
0121                            0.032953,
0122                            1.47347,##11
0123 
0124                            -1.25,## -1.99988,## orig
0125                            1.2,
0126                            0.
0127                            ),
0128 
0129     
0130     parResolFix = cms.vint32(0, 0, 1, 0,
0131                              1, 0, 0, 0,
0132                              1, 0, 0, 0,
0133                              0, 0, 1),
0134     parResolOrder = cms.vint32(0, 0, 0, 0,
0135                                0, 0, 0, 0,
0136                                0, 0, 0, 0,
0137                                0, 0, 0),
0138 
0139     # -------------------- #
0140     # Scale fit parameters #
0141     # -------------------- #
0142 
0143     # -----------------------------------------------------------------------------------
0144     ScaleFitType = cms.int32(29),
0145     parScaleOrder = cms.vint32( 0, 0, 0, 0, 0),
0146     parScaleFix =   cms.vint32(0, 1, 0, 0, 0),
0147     parScale = cms.vdouble(0., 0., 0., 0., 0.),
0148 
0149     # ---------------------------- #
0150     # Cross section fit parameters #
0151     # ---------------------------- #
0152     # Note that the cross section fit works differently than the others, it
0153     # fits ratios of parameters. Fix and Order should not be used as is, they
0154     # are there mainly for compatibility.
0155     parCrossSectionOrder = cms.vint32(0, 0, 0, 0, 0, 0),
0156     parCrossSectionFix =   cms.vint32(0, 0, 0, 0, 0, 0),
0157     parCrossSection = cms.vdouble(1.233, 2.07, 6.33, 13.9, 2.169, 127.2),
0158 
0159     # ------------------------- #
0160     # Background fit parameters #
0161     # ------------------------- #
0162 
0163     # Window factors for: Z, Upsilons and (J/Psi,Psi2S) regions
0164     LeftWindowBorder = cms.vdouble(70., 8., 1.391495),
0165     RightWindowBorder = cms.vdouble(110., 12., 5.391495),
0166 
0167     # The two parameters of BgrFitType=2 are respectively:
0168     # bgr fraction, (negative of) bgr exp. slope, bgr constant
0169     # --------------------------------------------------------
0170     # The function types for resonances in a region must be the same
0171     BgrFitType = cms.vint32(2, 2, 2), # regions
0172     # These empty parameters should be used when there is no background
0173     parBgr = cms.vdouble(0., 0.,   0., 0.,   0., 0.,
0174                          0., 0.,   0., 0.,   0., 0.,   0.,0.,   0.,0.,   0.,0.),
0175     parBgrFix = cms.vint32(0, 0,   0, 0,   0, 0,
0176                            # The rest of the parameters is used for the resonance regions. They are automatically fixed in the code
0177                            # because they are never used to fit the background, but only after the rescaling.
0178                            1, 1,   1, 1,   1, 1,   1, 1,   1, 1,   1, 1),
0179     parBgrOrder = cms.vint32(0, 0,   0, 0,   0, 0,
0180                              0, 0,   0, 0,   0, 0,   0, 0,   0, 0,   0, 0),
0181 
0182 
0183     # ----------------------- #
0184 
0185     # Set Minuit fit strategy
0186     FitStrategy = cms.int32(2),
0187 
0188     # Fit accuracy and debug parameters
0189     StartWithSimplex = cms.bool(True),
0190     ComputeMinosErrors = cms.bool(False),
0191     MinimumShapePlots = cms.bool(True),
0192 
0193     # Set the cuts on muons to be used in the fit
0194 
0195     ##    MaxMuonPt = cms.untracked.double(50.),
0196     #MinMuonPt = cms.untracked.double(50.),
0197  ##    MinMuonEtaFirstRange = cms.untracked.double(-0.8),
0198 ##     MaxMuonEtaFirstRange = cms.untracked.double(0.8),
0199 ##     MinMuonEtaSecondRange = cms.untracked.double(-0.8),
0200 ##     MaxMuonEtaSecondRange = cms.untracked.double(0.8),
0201     
0202     # ProbabilitiesFileInPath = cms.untracked.string("MuonAnalysis/MomentumScaleCalibration/test/Probs_merge.root"),
0203     ProbabilitiesFile = cms.untracked.string("/afs/cern.ch/user/d/demattia/scratch0/MuScleFit/CMSSW_3_11_0/src/MuonAnalysis/MomentumScaleCalibration/test/StatisticalErrors/Probs_merge.root"),
0204 
0205     # The following parameters can be used to filter events
0206     TriggerResultsLabel = cms.untracked.string("TriggerResults"),
0207     TriggerResultsProcess = cms.untracked.string("HLT"),
0208     # TriggerPath: "" = No trigger requirements, "All" = No specific path
0209     #TriggerPath = cms.untracked.string("HLT_L1MuOpen"),
0210     TriggerPath = cms.untracked.string("All"),
0211     # Negate the result of the trigger
0212     NegateTrigger = cms.untracked.bool(False),
0213 
0214     debug = cms.untracked.int32(0),
0215 )