Skip to content

Commit

Permalink
Merge pull request #22 from LeonardoPalombini/music10Tev
Browse files Browse the repository at this point in the history
LP: fake jet removal in regional tracking filter
  • Loading branch information
gianelle authored Feb 5, 2025
2 parents 74100ae + 130c4ba commit 9e6615c
Show file tree
Hide file tree
Showing 2 changed files with 526 additions and 0 deletions.
92 changes: 92 additions & 0 deletions source/Utils/include/FilterJetConeHits.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
#ifndef FilterJetConeHits_h
#define FilterJetConeHits_h 1

#include "marlin/Processor.h"
#include "lcio.h"
#include <string>
#include <vector>

#include <TH1F.h>

#include <EVENT/MCParticle.h>
#include <EVENT/ReconstructedParticle.h>
#include "IMPL/ReconstructedParticleImpl.h"

using namespace lcio ;
using namespace marlin ;


/** Utility processor that selects and saves the tracker hits that are included in
* a DeltaR cone around the jet direction direction along with the corresponding
* sim hits and the reco-sim relations.
*
* @parameter MCParticleCollection name of the MCParticle collection
* @parameter TrackerHitInputCollections name of the tracker hit input collections
* @parameter TrackerSimHitInputCollections name of the tracker simhit input collections
* @parameter TrackerHitInputRelations name of the tracker hit relation input collections
* @parameter TrackerHitOutputCollections name of the tracker hit output collections
* @parameter TrackerSimHitOutputCollections name of the tracker simhit output collections
* @parameter TrackerHitOutputRelations name of the tracker hit relation output collections
* @parameter DeltaRCut maximum angular distance between the hits and the particle direction
* @parameter FillHistograms flag to fill the diagnostic histograms
*
* @author L. Sestini, INFN Padova
* @date 18 March 2021
* @version $Id: $
*/

class FilterJetConeHits : public Processor {

public:

virtual Processor* newProcessor() { return new FilterJetConeHits ; }


FilterJetConeHits() ;

virtual void init() ;

virtual void processRunHeader( LCRunHeader* run ) ;

virtual void processEvent( LCEvent * evt ) ;

virtual void check( LCEvent * evt ) ;

virtual void end() ;

bool filterJetBib(ReconstructedParticle* jet);


protected:

// --- Input/output collection names:
std::string m_inputJetCaloCollName{} ;
std::vector<std::string> m_inputTrackerHitsCollNames{} ;
std::vector<std::string> m_inputTrackerSimHitsCollNames{} ;
std::vector<std::string> m_inputTrackerHitRelNames{} ;
std::vector<std::string> m_outputTrackerHitsCollNames{} ;
std::vector<std::string> m_outputTrackerSimHitsCollNames{} ;
std::vector<std::string> m_outputTrackerHitRelNames{} ;


// --- Processor parameters:
bool m_fillHistos{} ;
double m_deltaRCut{} ;

// Jet filter parameters with BIB:
double m_minDaughterMaxPt{} ;
int m_minNTracks{} ;

// --- Diagnostic histograms:
TH1F* m_dist = nullptr ;

// --- Run and event counters:
int _nRun{} ;
int _nEvt{} ;

} ;

#endif



Loading

0 comments on commit 9e6615c

Please sign in to comment.