Fork me on GitHub

Ignore:
Timestamp:
Apr 17, 2014, 10:23:04 AM (10 years ago)
Author:
Michele Selvaggi
Message:

committed delphes_card_FCC_basic.tcl

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/delphes_card_TLEP.tcl

    r1358 r1370  
    1515
    1616  TrackMerger
    17   Calorimeter
     17  ImpactParameterSmearing
     18 
     19  Ecal
     20  Hcal
     21 
     22  TowerMerger
    1823  EFlowMerger
    1924
     
    2429
    2530  JetEnergyScale
    26 
    27   BTagging
     31 
     32  TrackCountingBTagging
    2833  TauTagging
    2934
     
    187192}
    188193
     194################################
     195# Track impact parameter smearing
     196################################
     197
     198module ImpactParameterSmearing ImpactParameterSmearing {
     199  set InputArray TrackMerger/tracks
     200  set OutputArray tracks
     201
     202
     203# absolute impact parameter smearing formula (in mm) as a function of pt and eta
     204set ResolutionFormula {(pt > 0.1  && pt <= 5.0)   * (0.010) + \
     205                       (pt > 5.0)                 * (0.005)}
     206
     207}
     208
    189209#############
    190 # Calorimeter
     210#   ECAL
    191211#############
    192212
    193 module Calorimeter Calorimeter {
     213module SimpleCalorimeter Ecal {
    194214  set ParticleInputArray ParticlePropagator/stableParticles
    195   set TrackInputArray TrackMerger/tracks
    196 
    197   set TowerOutputArray towers
    198   set PhotonOutputArray photons
    199 
    200   set EFlowTrackOutputArray eflowTracks
    201   set EFlowPhotonOutputArray eflowPhotons
    202   set EFlowNeutralHadronOutputArray eflowNeutralHadrons
     215  set TrackInputArray ImpactParameterSmearing/tracks
     216
     217  set TowerOutputArray ecalTowers
     218  set EFlowTowerOutputArray eflowPhotons
    203219 
    204220  set pi [expr {acos(-1)}]
     
    234250    add EtaPhiBins $eta $PhiBins
    235251  }
    236 
     252  # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
     253 
     254  add EnergyFraction {0} {0.0}
     255  # energy fractions for e, gamma and pi0
     256  add EnergyFraction {11} {1.0}
     257  add EnergyFraction {22} {1.0}
     258  add EnergyFraction {111} {1.0}
     259  # energy fractions for muon, neutrinos and neutralinos
     260  add EnergyFraction {12} {0.0}
     261  add EnergyFraction {13} {0.0}
     262  add EnergyFraction {14} {0.0}
     263  add EnergyFraction {16} {0.0}
     264  add EnergyFraction {1000022} {0.0}
     265  add EnergyFraction {1000023} {0.0}
     266  add EnergyFraction {1000025} {0.0}
     267  add EnergyFraction {1000035} {0.0}
     268  add EnergyFraction {1000045} {0.0}
     269  # energy fractions for K0short and Lambda
     270  add EnergyFraction {310} {0.3}
     271  add EnergyFraction {3122} {0.3}
     272
     273  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
     274  set ResolutionFormula {                     (abs(eta) <= 4.0) * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
     275                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2  + energy*1.00^2)}
     276
     277 
     278}
     279
     280#############
     281#   HCAL
     282#############
     283
     284module SimpleCalorimeter Hcal {
     285  set ParticleInputArray ParticlePropagator/stableParticles
     286  set TrackInputArray ImpactParameterSmearing/tracks
     287
     288  set TowerOutputArray hcalTowers
     289  set EFlowTowerOutputArray eflowNeutralHadrons
     290 
     291  set pi [expr {acos(-1)}]
     292
     293  # lists of the edges of each tower in eta and phi
     294  # each list starts with the lower edge of the first tower
     295  # the list ends with the higher edged of the last tower
     296
     297  # 5 degrees towers
     298  set PhiBins {}
     299  for {set i -36} {$i <= 36} {incr i} {
     300    add PhiBins [expr {$i * $pi/36.0}]
     301  }
     302  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
     303    add EtaPhiBins $eta $PhiBins
     304  }
     305
     306  # 10 degrees towers
     307  set PhiBins {}
     308  for {set i -18} {$i <= 18} {incr i} {
     309    add PhiBins [expr {$i * $pi/18.0}]
     310  }
     311  foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
     312    add EtaPhiBins $eta $PhiBins
     313  }
     314
     315  # 20 degrees towers
     316  set PhiBins {}
     317  for {set i -9} {$i <= 9} {incr i} {
     318    add PhiBins [expr {$i * $pi/9.0}]
     319  }
     320  foreach eta {6 -5.6 -5.3 -5 -4.7 -4.525 4.7 5 5.3 5.6 6} {
     321    add EtaPhiBins $eta $PhiBins
     322  }
     323 
    237324  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
    238   add EnergyFraction {0} {0.0 1.0}
     325  add EnergyFraction {0} {1.0}
    239326  # energy fractions for e, gamma and pi0
    240   add EnergyFraction {11} {1.0 0.0}
    241   add EnergyFraction {22} {1.0 0.0}
    242   add EnergyFraction {111} {1.0 0.0}
     327  add EnergyFraction {11} {0.0}
     328  add EnergyFraction {22} {0.0}
     329  add EnergyFraction {111} {0.0}
    243330  # energy fractions for muon, neutrinos and neutralinos
    244   add EnergyFraction {12} {0.0 0.0}
    245   add EnergyFraction {13} {0.0 0.0}
    246   add EnergyFraction {14} {0.0 0.0}
    247   add EnergyFraction {16} {0.0 0.0}
    248   add EnergyFraction {1000022} {0.0 0.0}
    249   add EnergyFraction {1000023} {0.0 0.0}
    250   add EnergyFraction {1000025} {0.0 0.0}
    251   add EnergyFraction {1000035} {0.0 0.0}
    252   add EnergyFraction {1000045} {0.0 0.0}
     331  add EnergyFraction {12} {0.0}
     332  add EnergyFraction {13} {0.0}
     333  add EnergyFraction {14} {0.0}
     334  add EnergyFraction {16} {0.0}
     335  add EnergyFraction {1000022} {0.0}
     336  add EnergyFraction {1000023} {0.0}
     337  add EnergyFraction {1000025} {0.0}
     338  add EnergyFraction {1000035} {0.0}
     339  add EnergyFraction {1000045} {0.0}
    253340  # energy fractions for K0short and Lambda
    254   add EnergyFraction {310} {0.3 0.7}
    255   add EnergyFraction {3122} {0.3 0.7}
    256 
    257   # set ECalResolutionFormula {resolution formula as a function of eta and energy}
    258   set ECalResolutionFormula {                 (abs(eta) <= 4.0) * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
    259                             (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2  + energy*1.00^2)}
    260 
    261   # set HCalResolutionFormula {resolution formula as a function of eta and energy}
    262   set HCalResolutionFormula {                 (abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
     341  add EnergyFraction {310} {0.7}
     342  add EnergyFraction {3122} {0.7}
     343
     344   # set HCalResolutionFormula {resolution formula as a function of eta and energy}
     345  set ResolutionFormula {                     (abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
    263346                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2 + energy*1.00^2)}
     347}
     348
     349
     350####################
     351# Tower Merger (in case not using e-flow algorithm)
     352####################
     353
     354module Merger TowerMerger {
     355# add InputArray InputArray
     356  add InputArray Ecal/ecalTowers
     357  add InputArray Hcal/hcalTowers
     358  set OutputArray towers
    264359}
    265360
     
    270365module Merger EFlowMerger {
    271366# add InputArray InputArray
    272   add InputArray Calorimeter/eflowTracks
    273   add InputArray Calorimeter/eflowPhotons
    274   add InputArray Calorimeter/eflowNeutralHadrons
     367  add InputArray ImpactParameterSmearing/tracks
     368  add InputArray Ecal/eflowPhotons
     369  add InputArray Hcal/eflowNeutralHadrons
    275370  set OutputArray eflow
    276371}
     372
    277373
    278374###################
     
    342438}
    343439
    344 ###########
    345 # b-tagging
    346 ###########
    347 
    348 module BTagging BTagging {
    349   set PartonInputArray Delphes/partons
     440##########################
     441# Track Counting b-tagging
     442##########################
     443
     444module TrackCountingBTagging TrackCountingBTagging {
     445  set TrackInputArray ImpactParameterSmearing/tracks
    350446  set JetInputArray JetEnergyScale/jets
    351447
    352448  set BitNumber 0
    353449
    354   set DeltaR 0.5
    355 
    356   set PartonPTMin 1.0
    357 
    358   set PartonEtaMax 4.0
    359 
    360   # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
    361   # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
    362   # gluon's PDG code has the lowest priority
    363 
    364   # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
    365   # default efficiency formula (misidentification rate)
    366   add EfficiencyFormula {0} {0.001}
    367 
    368   # efficiency formula for c-jets (misidentification rate)
    369   add EfficiencyFormula {4} {                                      (pt <= 15.0) * (0.000) + \
    370                                                 (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
    371                               (abs(eta) > 1.2 && abs(eta) <= 4.0) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
    372                               (abs(eta) > 4.0)                                  * (0.000)}
    373 
    374   # efficiency formula for b-jets
    375   add EfficiencyFormula {5} {                                      (pt <= 15.0) * (0.000) + \
    376                                                 (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
    377                               (abs(eta) > 1.2 && abs(eta) <= 4.0) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
    378                               (abs(eta) > 4.0)                                  * (0.000)}
    379 }
     450  # maximum distance between jet and track
     451  set DeltaR 0.3
     452 
     453  # minimum pt of tracks
     454  set TrackPTMin 1.0
     455 
     456  # minimum transverse impact parameter (in mm)
     457  set TrackIPMax 2.0
     458 
     459  # minimum ip significance for the track to be counted
     460  set SigMin 6.5
     461 
     462  # minimum number of tracks (high efficiency n=2, high purity n=3)
     463  set Ntracks 3
     464}
     465
     466
     467##########################
     468# tau-tagging
     469##########################
     470
    380471
    381472module TauTagging TauTagging {
     
    406497  add Branch Delphes/allParticles Particle GenParticle
    407498  add Branch GenJetFinder/jets GenJet Jet
    408   add Branch Calorimeter/eflowNeutralHadrons NeutralHadron Tower
     499 
     500  add Branch Hcal/eflowNeutralHadrons NeutralHadron Tower
     501  add Branch Ecal/eflowPhotons Photon Photon
    409502  add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
    410   add Branch Calorimeter/eflowPhotons Photon Photon
    411503  add Branch ElectronEnergySmearing/electrons Electron Electron
    412504  add Branch MuonMomentumSmearing/muons Muon Muon
Note: See TracChangeset for help on using the changeset viewer.