Fork me on GitHub

Changes in / [5a69ba1d:ae061c1] in git


Ignore:
Files:
3 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • cards/FCC/FCChh.tcl

    r5a69ba1d rae061c1  
    44#  Main authors:  Michele Selvaggi (CERN)
    55#
    6 #  Released on: Dec. 1st, 2017
     6#  Released on: Apr. 6th, 2017
    77#
    88#  Configuration: FCC-hh baseline detector
     
    1313
    1414set ExecutionPath {
    15  
     15
    1616  ParticlePropagator
    1717
     
    2424  MuonMomentumSmearing
    2525
    26   DenseProp
    27   DenseMergeTracks
    28   TrackMergerProp 
    2926  TrackMerger
    3027
     
    5148  GenMissingET
    5249
    53   GenJetFinder02
    54   GenJetFinder04
    55   GenJetFinder08
    56 
    57   FastJetFinder02
    58   FastJetFinder04
    59   FastJetFinder08
    60 
    61   CaloJetFinder02
    62   CaloJetFinder04
    63   CaloJetFinder08
    64 
    65   TrackJetFinder02
    66   TrackJetFinder04
    67   TrackJetFinder08
     50  GenJetFinder
     51  FastJetFinder
     52  FatJetFinder
    6853
    6954  JetEnergyScale
     
    8267}
    8368
    84 #
    8569#################################
    8670# Propagate particles in cylinder
     
    8973module ParticlePropagator ParticlePropagator {
    9074  set InputArray Delphes/stableParticles
     75
    9176  set OutputArray stableParticles
    9277  set ChargedHadronOutputArray chargedHadrons
     
    202187}
    203188
    204 
    205189##############
    206190# Track merger
    207191##############
    208192
    209 module Merger TrackMergerProp {
     193module Merger TrackMerger {
    210194# add InputArray InputArray
    211195  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
     
    214198  set OutputArray tracks
    215199}
    216 
    217 
    218 #################################
    219 # Dense Track propagation
    220 #################################
    221 
    222 module ParticlePropagator DenseProp {
    223   set InputArray Delphes/stableParticles
    224 
    225   set OutputArray stableParticles
    226   set NeutralOutputArray neutralParticles
    227   set ChargedHadronOutputArray chargedHadrons
    228   set ElectronOutputArray electrons
    229   set MuonOutputArray muons
    230 
    231   # radius of the magnetic field coverage, in m
    232   set Radius 0.45
    233   set RadiusMax 1.5
    234   # half-length of the magnetic field coverage, in m
    235   set HalfLength 0.8
    236   set HalfLengthMax 5
    237 
    238   # magnetic field
    239   set Bz 4.0
    240 }
    241 
    242 ####################
    243 # Dense Track merger
    244 ###################
    245 
    246 module Merger DenseMergeTracks {
    247 # add InputArray InputArray
    248   add InputArray DenseProp/chargedHadrons
    249   add InputArray DenseProp/electrons
    250   add InputArray DenseProp/muons
    251   set OutputArray tracks
    252 }
    253 
    254 
    255 ######################
    256 #   Dense Track Filter
    257 ######################
    258 
    259 module DenseTrackFilter TrackMerger {
    260   set TrackInputArray TrackMergerProp/tracks
    261   set DenseChargedInputArray DenseMergeTracks/tracks
    262 
    263   set TrackOutputArray tracks
    264 
    265   set EtaPhiRes 0.001
    266   set EtaMax 6.0
    267 
    268   set pi [expr {acos(-1)}]
    269 
    270   set nbins_phi [expr {$pi/$EtaPhiRes} ]
    271   set nbins_phi [expr {int($nbins_phi)} ]
    272 
    273   set PhiBins {}
    274   for {set i -$nbins_phi} {$i <= $nbins_phi} {incr i} {
    275     add PhiBins [expr {$i * $pi/$nbins_phi}]
    276   }
    277 
    278   set nbins_eta [expr {$EtaMax/$EtaPhiRes} ]
    279   set nbins_eta [expr {int($nbins_eta)} ]
    280 
    281   for {set i -$nbins_eta} {$i <= $nbins_eta} {incr i} {
    282     set eta [expr {$i * $EtaPhiRes}]
    283     add EtaPhiBins $eta $PhiBins
    284   }
    285 }
    286 
    287 
    288200
    289201#############
     
    488400  add InputArray ECal/ecalTowers
    489401  add InputArray HCal/hcalTowers
    490   add InputArray MuonMomentumSmearing/muons
    491402  set OutputArray towers
    492403}
     
    562473
    563474
     475#####################
     476# MC truth jet finder
     477#####################
     478
     479# TBC: is jet radius fine?
     480
     481module FastJetFinder GenJetFinder {
     482#  set InputArray NeutrinoFilter/filteredParticles
     483  set InputArray Delphes/stableParticles
     484
     485  set OutputArray jets
     486
     487  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
     488  set JetAlgorithm 6
     489  set ParameterR 0.4
     490
     491  set JetPTMin 5.0
     492}
     493
    564494#########################
    565495# Gen Missing ET merger
     
    574504
    575505
    576 #####################
    577 # MC truth jet finder
    578 #####################
    579 
    580 # TBC: is jet radius fine?
    581 
    582 module FastJetFinder GenJetFinder02 {
    583   set InputArray NeutrinoFilter/filteredParticles
     506
     507############
     508# Jet finder
     509############
     510
     511# TBC need to include jet substructure variables
     512# TBC is jet radius fine?
     513
     514module FastJetFinder FastJetFinder {
     515#  set InputArray Calorimeter/towers
     516  set InputArray EFlowMerger/eflow
     517
     518  set OutputArray jets
     519
     520  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
     521  # 7: anti-kt with winner-take-all axis (for N-subjettiness), 8 N-jettiness
     522
     523  set JetAlgorithm 6
     524  set ParameterR 0.4
     525
     526  set JetPTMin 30.0
     527}
     528
     529##################
     530# Fat Jet finder
     531##################
     532
     533module FastJetFinder FatJetFinder {
     534  set InputArray EFlowMerger/eflow
    584535
    585536  set OutputArray jets
     
    587538  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    588539  set JetAlgorithm 6
    589   set ParameterR 0.2
     540  set ParameterR 0.8
    590541
    591542  set ComputeNsubjettiness 1
     
    593544  set AxisMode 4
    594545
    595   set ComputeSoftDrop 1
    596   set BetaSoftDrop 0.0
    597   set SymmetryCutSoftDrop 0.1
    598   set R0SoftDrop 0.2
    599 
    600   set JetPTMin 25.0
    601 }
    602 
    603 
    604 #####################
    605 # MC truth jet finder
    606 #####################
    607 
    608 # TBC: is jet radius fine?
    609 
    610 module FastJetFinder GenJetFinder04 {
    611   set InputArray NeutrinoFilter/filteredParticles
    612 
    613   set OutputArray jets
    614 
    615   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    616   set JetAlgorithm 6
    617   set ParameterR 0.4
    618 
    619   set ComputeNsubjettiness 1
    620   set Beta 1.0
    621   set AxisMode 4
    622 
    623   set ComputeSoftDrop 1
    624   set BetaSoftDrop 0.0
    625   set SymmetryCutSoftDrop 0.1
    626   set R0SoftDrop 0.4
    627 
    628   set JetPTMin 25.0
    629 }
    630 #####################
    631 # MC truth jet finder
    632 #####################
    633 
    634 # TBC: is jet radius fine?
    635 
    636 module FastJetFinder GenJetFinder08 {
    637   set InputArray NeutrinoFilter/filteredParticles
    638 
    639   set OutputArray jets
    640 
    641   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    642   set JetAlgorithm 6
    643   set ParameterR 0.8
    644 
    645   set ComputeNsubjettiness 1
    646   set Beta 1.0
    647   set AxisMode 4
     546  set ComputeTrimming 1
     547  set RTrim 0.2
     548  set PtFracTrim 0.05
     549
     550  set ComputePruning 1
     551  set ZcutPrun 0.1
     552  set RcutPrun 0.5
     553  set RPrun 0.8
    648554
    649555  set ComputeSoftDrop 1
     
    652558  set R0SoftDrop 0.8
    653559
    654   set JetPTMin 25.0
    655 }
    656 
    657 
    658 ##################
    659 # Fast Jet finder
    660 ##################
    661 
    662 module FastJetFinder FastJetFinder02 {
    663   set InputArray EFlowMerger/eflow
    664 
    665   set OutputArray jets
    666 
    667   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    668   set JetAlgorithm 6
    669   set ParameterR 0.2
    670 
    671   set ComputeNsubjettiness 1
    672   set Beta 1.0
    673   set AxisMode 4
    674 
    675   set ComputeSoftDrop 1
    676   set BetaSoftDrop 0.0
    677   set SymmetryCutSoftDrop 0.1
    678   set R0SoftDrop 0.2
    679 
    680   set JetPTMin 25.0
    681 }
    682 
    683 ##################
    684 # Fast Jet finder
    685 ##################
    686 
    687 module FastJetFinder FastJetFinder04 {
    688   set InputArray EFlowMerger/eflow
    689 
    690   set OutputArray jets
    691 
    692   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    693   set JetAlgorithm 6
    694   set ParameterR 0.4
    695 
    696   set ComputeNsubjettiness 1
    697   set Beta 1.0
    698   set AxisMode 4
    699 
    700   set ComputeSoftDrop 1
    701   set BetaSoftDrop 0.0
    702   set SymmetryCutSoftDrop 0.1
    703   set R0SoftDrop 0.4
    704 
    705   set JetPTMin 25.0
    706 }
    707 
    708 
    709 ##################
    710 # Fast Jet finder
    711 ##################
    712 
    713 module FastJetFinder FastJetFinder08 {
    714   set InputArray EFlowMerger/eflow
    715 
    716   set OutputArray jets
    717 
    718   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    719   set JetAlgorithm 6
    720   set ParameterR 0.8
    721 
    722   set ComputeNsubjettiness 1
    723   set Beta 1.0
    724   set AxisMode 4
    725 
    726   set ComputeSoftDrop 1
    727   set BetaSoftDrop 0.0
    728   set SymmetryCutSoftDrop 0.1
    729   set R0SoftDrop 0.8
    730 
    731   set JetPTMin 25.0
    732 }
    733 
    734 
    735 
    736 ##################
    737 # Fast Jet finder
    738 ##################
    739 
    740 module FastJetFinder CaloJetFinder02 {
    741   set InputArray Calorimeter/towers
    742 
    743   set OutputArray jets
    744 
    745   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    746   set JetAlgorithm 6
    747   set ParameterR 0.2
    748 
    749   set ComputeNsubjettiness 1
    750   set Beta 1.0
    751   set AxisMode 4
    752 
    753   set ComputeSoftDrop 1
    754   set BetaSoftDrop 0.0
    755   set SymmetryCutSoftDrop 0.1
    756   set R0SoftDrop 0.2
    757 
    758   set JetPTMin 25.0
    759 }
    760 
    761 ##################
    762 # Fast Jet finder
    763 ##################
    764 
    765 module FastJetFinder CaloJetFinder04 {
    766   set InputArray Calorimeter/towers
    767 
    768   set OutputArray jets
    769 
    770   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    771   set JetAlgorithm 6
    772   set ParameterR 0.4
    773 
    774   set ComputeNsubjettiness 1
    775   set Beta 1.0
    776   set AxisMode 4
    777 
    778   set ComputeSoftDrop 1
    779   set BetaSoftDrop 0.0
    780   set SymmetryCutSoftDrop 0.1
    781   set R0SoftDrop 0.4
    782 
    783   set JetPTMin 25.0
    784 }
    785 
    786 
    787 ##################
    788 # Fast Jet finder
    789 ##################
    790 
    791 module FastJetFinder CaloJetFinder08 {
    792   set InputArray Calorimeter/towers
    793 
    794   set OutputArray jets
    795 
    796   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    797   set JetAlgorithm 6
    798   set ParameterR 0.8
    799 
    800   set ComputeNsubjettiness 1
    801   set Beta 1.0
    802   set AxisMode 4
    803 
    804   set ComputeSoftDrop 1
    805   set BetaSoftDrop 0.0
    806   set SymmetryCutSoftDrop 0.1
    807   set R0SoftDrop 0.8
    808 
    809   set JetPTMin 25.0
    810 }
    811 
    812 
    813 ##################
    814 # Fast Jet finder
    815 ##################
    816 
    817 module FastJetFinder TrackJetFinder02 {
    818   set InputArray TrackMerger/tracks
    819 
    820   set OutputArray jets
    821 
    822   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    823   set JetAlgorithm 6
    824   set ParameterR 0.2
    825 
    826   set ComputeNsubjettiness 1
    827   set Beta 1.0
    828   set AxisMode 4
    829 
    830   set ComputeSoftDrop 1
    831   set BetaSoftDrop 0.0
    832   set SymmetryCutSoftDrop 0.1
    833   set R0SoftDrop 0.2
    834 
    835   set JetPTMin 25.0
    836 }
    837 
    838 ##################
    839 # Fast Jet finder
    840 ##################
    841 
    842 module FastJetFinder TrackJetFinder04 {
    843   set InputArray TrackMerger/tracks
    844 
    845   set OutputArray jets
    846 
    847   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    848   set JetAlgorithm 6
    849   set ParameterR 0.4
    850 
    851   set ComputeNsubjettiness 1
    852   set Beta 1.0
    853   set AxisMode 4
    854 
    855   set ComputeSoftDrop 1
    856   set BetaSoftDrop 0.0
    857   set SymmetryCutSoftDrop 0.1
    858   set R0SoftDrop 0.4
    859 
    860   set JetPTMin 25.0
    861 }
    862 
    863 
    864 ##################
    865 # Fast Jet finder
    866 ##################
    867 
    868 module FastJetFinder TrackJetFinder08 {
    869   set InputArray TrackMerger/tracks
    870 
    871   set OutputArray jets
    872 
    873   # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
    874   set JetAlgorithm 6
    875   set ParameterR 0.8
    876 
    877   set ComputeNsubjettiness 1
    878   set Beta 1.0
    879   set AxisMode 4
    880 
    881   set ComputeSoftDrop 1
    882   set BetaSoftDrop 0.0
    883   set SymmetryCutSoftDrop 0.1
    884   set R0SoftDrop 0.8
    885 
    886   set JetPTMin 25.0
     560  set JetPTMin 200.0
    887561}
    888562
     
    894568
    895569module EnergyScale JetEnergyScale {
    896   set InputArray FastJetFinder04/jets
     570  set InputArray FastJetFinder/jets
    897571  set OutputArray jets
    898572
     
    1006680
    1007681
    1008 
    1009682###########
    1010683# b-tagging
     
    1019692
    1020693  (pt <= 10.0)                       * (0.00) +
    1021   (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.01) + \
    1022   (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 15000.0) * (0.01)*(1.0 - pt/15000.) + \
    1023   (abs(eta) < 2.5)                   * (pt > 15000.0)               * (0.00) + \
    1024   (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.0075) + \
    1025   (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.0075)*(1.0 - pt/15000.) + \
    1026   (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) + \
     694  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.001) + \
     695  (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 20000.0) * (0.001)*(1.0 - pt/20000.) + \
     696  (abs(eta) < 2.5)                   * (pt > 20000.0)               * (0.000) + \
     697  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.00075) + \
     698  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 20000.0) * (0.00075)*(1.0 - pt/20000.) + \
     699  (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 20000.0)               * (0.000) + \
    1027700  (abs(eta) > 4.0) * (0.00)}
    1028701
     
    1030703
    1031704  (pt <= 10.0)                       * (0.00) +
    1032   (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.05) + \
    1033   (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 15000.0) * (0.05)*(1.0 - pt/15000.) + \
    1034   (abs(eta) < 2.5)                   * (pt > 15000.0)               * (0.000) + \
     705  (abs(eta) < 2.5)                   * (pt > 10.0 && pt < 500)      * (0.04) + \
     706  (abs(eta) < 2.5)                   * (pt > 500.0 && pt < 20000.0) * (0.04)*(1.0 - pt/20000.) + \
     707  (abs(eta) < 2.5)                   * (pt > 20000.0)               * (0.000) + \
    1035708  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.03) + \
    1036   (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.03)*(1.0 - pt/15000.) + \
    1037   (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) + \
     709  (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 20000.0) * (0.03)*(1.0 - pt/20000.) + \
     710  (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 20000.0)               * (0.000) + \
    1038711  (abs(eta) > 4.0) * (0.00)}
    1039712
     
    1042715  (pt <= 10.0)                                                       * (0.00) +
    1043716  (abs(eta) < 2.5)                    * (pt > 10.0 && pt < 500)      * (0.85) +
    1044   (abs(eta) < 2.5)                    * (pt > 500.0 && pt < 15000.0) * (0.85)*(1.0 - pt/15000.) +
    1045   (abs(eta) < 2.5)                    * (pt > 15000.0)               * (0.000) +
     717  (abs(eta) < 2.5)                    * (pt > 500.0 && pt < 20000.0) * (0.85)*(1.0 - pt/20000.) +
     718  (abs(eta) < 2.5)                    * (pt > 20000.0)               * (0.000) +
    1046719  (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500)      * (0.64) +
    1047   (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.64)*(1.0 - pt/15000.) +
    1048   (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 15000.0)               * (0.000) +
     720  (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 20000.0) * (0.64)*(1.0 - pt/20000.) +
     721  (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 20000.0)               * (0.000) +
    1049722  (abs(eta) >= 4.0) * (0.00)}
    1050723
     
    1069742
    1070743  (pt <= 10.0)     * (0.00) +
     744  (abs(eta) < 4.0) * (pt > 10.0) * (0.10) + \
     745  (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
     746
     747  add EfficiencyFormula {5} {
     748
     749  (pt <= 10.0)     * (0.00) +
    1071750  (abs(eta) < 4.0) * (pt > 10.0) * (0.25) + \
    1072   (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
    1073 
    1074   add EfficiencyFormula {5} {
    1075 
    1076   (pt <= 10.0)     * (0.00) +
    1077   (abs(eta) < 4.0) * (pt > 10.0) * (0.03) + \
    1078751  (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
    1079752
     
    1156829  add Branch Delphes/allParticles Particle GenParticle
    1157830
     831  add Branch GenJetFinder/jets GenJet Jet
    1158832  add Branch GenMissingET/momentum GenMissingET MissingET
    1159   add Branch GenJetFinder02/jets GenJet Jet
    1160833
    1161834  add Branch TrackMerger/tracks Track Track
     
    1171844  add Branch UniqueObjectFinder/jets Jet Jet
    1172845
    1173   add Branch GenJetFinder02/jets GenJet02 Jet
    1174   add Branch GenJetFinder04/jets GenJet04 Jet
    1175   add Branch GenJetFinder08/jets GenJet08 Jet
    1176 
    1177   add Branch FastJetFinder02/jets ParticleFlowJet02 Jet
    1178   add Branch FastJetFinder04/jets ParticleFlowJet04 Jet
    1179   add Branch FastJetFinder08/jets ParticleFlowJet08 Jet
    1180 
    1181   add Branch CaloJetFinder02/jets CaloJet02 Jet
    1182   add Branch CaloJetFinder04/jets CaloJet04 Jet
    1183   add Branch CaloJetFinder08/jets CaloJet08 Jet
    1184 
    1185   add Branch TrackJetFinder02/jets TrackJet02 Jet
    1186   add Branch TrackJetFinder04/jets TrackJet04 Jet
    1187   add Branch TrackJetFinder08/jets TrackJet08 Jet
     846  add Branch FatJetFinder/jets FatJet Jet
    1188847
    1189848  add Branch MissingET/momentum MissingET MissingET
  • cards/delphes_card_CMS.tcl

    r5a69ba1d rae061c1  
    169169
    170170  # resolution formula for electrons
    171   # based on arXiv:1502.02701
     171  # based on arXiv:1405.6569
    172172  set ResolutionFormula {                  (abs(eta) <= 0.5) * (pt > 0.1) * sqrt(0.03^2 + pt^2*1.3e-3^2) +
    173173                         (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1) * sqrt(0.05^2 + pt^2*1.7e-3^2) +
  • classes/DelphesClasses.cc

    r5a69ba1d rae061c1  
    179179  Tau[3] = 0.0;
    180180  Tau[4] = 0.0;
    181 
    182   SoftDroppedJet.SetXYZT(0.0, 0.0, 0.0, 0.0);
    183   SoftDroppedSubJet1.SetXYZT(0.0, 0.0, 0.0, 0.0);
    184   SoftDroppedSubJet2.SetXYZT(0.0, 0.0, 0.0, 0.0);
    185 
    186181  for(i = 0; i < 5; ++i)
    187182  {
     
    360355  object.NSubJetsSoftDropped = NSubJetsSoftDropped;
    361356
    362   object.SoftDroppedJet =SoftDroppedJet;
    363   object.SoftDroppedSubJet1 = SoftDroppedSubJet1;
    364   object.SoftDroppedSubJet2 = SoftDroppedSubJet2;
    365 
    366357  object.fFactory = fFactory;
    367358  object.fArray = 0;
     
    470461  Tau[4] = 0.0;
    471462
    472   SoftDroppedJet.SetXYZT(0.0, 0.0, 0.0, 0.0);
    473   SoftDroppedSubJet1.SetXYZT(0.0, 0.0, 0.0, 0.0);
    474   SoftDroppedSubJet2.SetXYZT(0.0, 0.0, 0.0, 0.0);
    475 
    476 
    477463  for(i = 0; i < 5; ++i)
    478464  {
  • classes/DelphesClasses.h

    r5a69ba1d rae061c1  
    388388  Float_t Tau[5]; // N-subjettiness
    389389
    390   TLorentzVector SoftDroppedJet;
    391   TLorentzVector SoftDroppedSubJet1;
    392   TLorentzVector SoftDroppedSubJet2;
    393 
    394390  TLorentzVector TrimmedP4[5]; // first entry (i = 0) is the total Trimmed Jet 4-momenta and from i = 1 to 4 are the trimmed subjets 4-momenta
    395391  TLorentzVector PrunedP4[5]; // first entry (i = 0) is the total Pruned Jet 4-momenta and from i = 1 to 4 are the pruned subjets 4-momenta
     
    635631  // Other Substructure variables
    636632
    637   TLorentzVector SoftDroppedJet;
    638   TLorentzVector SoftDroppedSubJet1;
    639   TLorentzVector SoftDroppedSubJet2;
    640 
    641633  TLorentzVector TrimmedP4[5]; // first entry (i = 0) is the total Trimmed Jet 4-momenta and from i = 1 to 4 are the trimmed subjets 4-momenta
    642634  TLorentzVector PrunedP4[5]; // first entry (i = 0) is the total Pruned Jet 4-momenta and from i = 1 to 4 are the pruned subjets 4-momenta
  • modules/DenseTrackFilter.cc

    r5a69ba1d rae061c1  
    5454
    5555DenseTrackFilter::DenseTrackFilter() :
    56   fItTrackInputArray(0),   fItDenseChargedInputArray(0)
     56  fItTrackInputArray(0)
    5757{
    5858}
     
    111111
    112112  // Eta x Phi smearing to be applied
    113   fEtaPhiRes = GetDouble("EtaPhiRes", 0.003);
    114 
    115   fTrackInputArray = ImportArray(GetString("TrackInputArray", "TrackMergerProp/tracks"));
     113  fEtaPhiRes = GetDouble("EtaPhiRes", 0.005);
     114
     115  fTrackInputArray = ImportArray(GetString("TrackInputArray", "ParticlePropagator/tracks"));
    116116  fItTrackInputArray = fTrackInputArray->MakeIterator();
    117 
    118   fDenseChargedInputArray = ImportArray(GetString("DenseChargedInputArray", "DenseMergeTracks/tracks"));
    119   fItDenseChargedInputArray = fDenseChargedInputArray->MakeIterator();
    120117
    121118  fTrackOutputArray = ExportArray(GetString("TrackOutputArray", "tracks"));
     
    128125  vector< vector< Double_t >* >::iterator itPhiBin;
    129126  if(fItTrackInputArray) delete fItTrackInputArray;
    130   if(fItDenseChargedInputArray) delete fItDenseChargedInputArray;
    131127  for(itPhiBin = fPhiBins.begin(); itPhiBin != fPhiBins.end(); ++itPhiBin)
    132128  {
     
    139135void DenseTrackFilter::Process()
    140136{
    141   Candidate *track;
     137  Candidate *candidate, *track, *bestTrack, *mother;
    142138  TLorentzVector position, momentum;
    143139  Short_t etaBin, phiBin, flags;
    144   Int_t number;
     140  Int_t number, towerTrackHits;
    145141  Long64_t towerHit, towerEtaPhi, hitEtaPhi;
    146   Double_t ptmax;
     142
     143  Double_t pt, ptmax, eta, phi;
    147144
    148145  vector< Double_t >::iterator itEtaBin;
     
    155152
    156153  // loop over all tracks
    157   fItDenseChargedInputArray->Reset();
     154  fItTrackInputArray->Reset();
    158155  number = -1;
    159   while((track = static_cast<Candidate*>(fItDenseChargedInputArray->Next())))
     156  while((track = static_cast<Candidate*>(fItTrackInputArray->Next())))
    160157  {
    161158    const TLorentzVector &trackPosition = track->Position;
     
    189186  // loop over all hits
    190187  towerEtaPhi = 0;
    191   fBestTrack = 0;
     188  bestTrack = 0;
     189  fTower = 0;
    192190  ptmax = 0.0;
    193   fTowerTrackHits = 0;
     191  towerTrackHits = 0;
    194192
    195193  for(itTowerHits = fTowerHits.begin(); itTowerHits != fTowerHits.end(); ++itTowerHits)
     
    199197    number = (towerHit) & 0x0000000000FFFFFFLL;
    200198    hitEtaPhi = towerHit >> 32;
    201 
    202199    if(towerEtaPhi != hitEtaPhi)
    203200    {
    204201      // switch to next tower
    205202      towerEtaPhi = hitEtaPhi;
    206      
     203      
    207204      // saving track with highest pT that hit the tower
    208       FillTrack();
     205      if(towerTrackHits > 0)
     206      {
     207         mother = bestTrack;
     208         candidate = static_cast<Candidate*>(bestTrack->Clone());
     209         pt = candidate->Momentum.Pt();
     210         eta = candidate->Momentum.Eta();
     211         phi = candidate->Momentum.Phi();
     212         eta = gRandom->Gaus(eta, fEtaPhiRes);
     213         phi = gRandom->Gaus(phi, fEtaPhiRes);
     214         candidate->Momentum.SetPtEtaPhiE(pt, eta, phi, pt*TMath::CosH(eta));
     215         candidate->AddCandidate(mother);
     216         fTrackOutputArray->Add(candidate);
     217      }
    209218
    210219      ptmax = 0.0;
    211       fTowerTrackHits = 0;
    212       fBestTrack = 0;
     220      towerTrackHits = 0;
     221      bestTrack = 0;
    213222    }
    214223    // check for track hits
     
    216225    if(flags & 1)
    217226    {
    218       ++fTowerTrackHits;
    219       track = static_cast<Candidate*>(fDenseChargedInputArray->At(number));
     227      ++towerTrackHits;
     228      track = static_cast<Candidate*>(fTrackInputArray->At(number));
    220229      momentum = track->Momentum;
    221230
    222231      if (momentum.Pt() > ptmax)
    223232      {
    224         ptmax = momentum.Pt();
    225         fBestTrack = track;
     233        ptmax = momentum.Pt();
     234        bestTrack = track;
    226235      }
    227236      continue;
    228237    }
    229  
    230   }
    231  
    232   // here fill last tower
    233   FillTrack();
    234  
    235 }
    236 
    237 
    238 
    239 //------------------------------------------------------------------------------
    240 
    241 void DenseTrackFilter::FillTrack()
    242 {
    243  
    244   Candidate *candidate, *track, *mother, *trackRef, *bestTrackRef;
    245   Double_t pt, eta, phi;
    246   Bool_t matched;
    247  
    248   // saving track with highest pT that hit the tower
    249   if(fTowerTrackHits > 0)
    250   {
    251      bestTrackRef = static_cast<Candidate*>(fBestTrack->GetCandidates()->At(0));
    252 
    253      // find corresponding track in properly propagated tracks
    254      fItTrackInputArray->Reset();
    255      matched = kFALSE;
    256      int ntrack = 0;
    257      while((track = static_cast<Candidate*>(fItTrackInputArray->Next())))
    258      {
    259        ntrack++;
    260        trackRef = static_cast<Candidate*>(track->GetCandidates()->At(0));
    261 
    262        if (trackRef->GetUniqueID() == bestTrackRef->GetUniqueID())
    263        {
    264          mother = track;
    265          candidate = static_cast<Candidate*>(track->Clone());
    266          pt = candidate->Momentum.Pt();
    267          eta = candidate->Momentum.Eta();
    268          phi = candidate->Momentum.Phi();
    269          eta = gRandom->Gaus(eta, fEtaPhiRes);
    270          phi = gRandom->Gaus(phi, fEtaPhiRes);
    271          candidate->Momentum.SetPtEtaPhiE(pt, eta, phi, pt*TMath::CosH(eta));
    272          candidate->AddCandidate(mother);
    273          fTrackOutputArray->Add(candidate);
    274          matched = kTRUE;
    275        }
    276        if (matched) break;
    277      }
    278   }
    279 
    280 
    281 }
     238  }
     239}
  • modules/DenseTrackFilter.h

    r5a69ba1d rae061c1  
    5353  typedef std::map< Double_t, std::set< Double_t > > TBinMap; //!
    5454
    55   Candidate *fBestTrack;
    56 
    57   Int_t fTowerTrackHits;
     55  Candidate *fTower;
    5856
    5957  Double_t fEtaPhiRes;
     
    7270  TObjArray *fTrackOutputArray; //!
    7371
    74 
    75   const TObjArray *fDenseChargedInputArray;
    76   TIterator *fItDenseChargedInputArray;
    77  
    78   void FillTrack();
    7972  ClassDef(DenseTrackFilter, 1)
    8073};
  • modules/FastJetFinder.cc

    r5a69ba1d rae061c1  
    539539      candidate->NSubJetsSoftDropped = softdrop_jet.pieces().size();
    540540
    541       candidate->SoftDroppedJet = candidate->SoftDroppedP4[0];
    542 
    543541      for (size_t i = 0; i < subjets.size()  and i < 4; i++)
    544542      {
    545543            if(subjets.at(i).pt() < 0) continue ;
    546544            candidate->SoftDroppedP4[i+1].SetPtEtaPhiM(subjets.at(i).pt(), subjets.at(i).eta(), subjets.at(i).phi(), subjets.at(i).m());
    547             if(i==0) candidate->SoftDroppedSubJet1 = candidate->SoftDroppedP4[i+1];
    548             if(i==1) candidate->SoftDroppedSubJet2 = candidate->SoftDroppedP4[i+1];
    549545      }
    550546    }
  • modules/TimeSmearing.cc

    r5a69ba1d rae061c1  
    108108    tf_smeared = gRandom->Gaus(tf, fTimeResolution);
    109109    ti = ti + tf_smeared - tf;
    110     tf = tf_smeared;
    111    
     110
    112111    mother = candidate;
    113112    candidate = static_cast<Candidate*>(candidate->Clone());
  • modules/TreeWriter.cc

    r5a69ba1d rae061c1  
    681681    entry->NSubJetsSoftDropped = candidate->NSubJetsSoftDropped;
    682682
    683     entry->SoftDroppedJet     = candidate->SoftDroppedJet ;
    684     entry->SoftDroppedSubJet1 = candidate->SoftDroppedSubJet1 ;
    685     entry->SoftDroppedSubJet2 = candidate->SoftDroppedSubJet2;
    686 
    687 
    688683    for(i = 0; i < 5; i++)
    689684    {
Note: See TracChangeset for help on using the changeset viewer.