Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:20:25

0001 #ifndef MACRO_G4PARTICLEFLOW_C
0002 #define MACRO_G4PARTICLEFLOW_C
0003 
0004 #include <GlobalVariables.C>
0005 
0006 #include <jetbase/FastJetAlgo.h>
0007 #include <jetbase/JetReco.h>
0008 
0009 #include <particleflowreco/ParticleFlowJetInput.h>
0010 #include <particleflowreco/ParticleFlowReco.h>
0011 
0012 #include <fun4all/Fun4AllServer.h>
0013 
0014 R__LOAD_LIBRARY(libfun4all.so)
0015 R__LOAD_LIBRARY(libjetbase.so)
0016 R__LOAD_LIBRARY(libparticleflow.so)
0017 
0018 namespace Enable
0019 {
0020   bool PARTICLEFLOW = false;
0021   int PARTICLEFLOW_VERBOSITY = 0;
0022 }  // namespace Enable
0023 
0024 void ParticleFlow()
0025 {
0026   int verbosity = max(Enable::VERBOSITY, Enable::PARTICLEFLOW_VERBOSITY);
0027   //---------------
0028   // Fun4All server
0029   //---------------
0030 
0031   Fun4AllServer *se = Fun4AllServer::instance();
0032 
0033   // note: assumes topoCluster input already configured
0034   ParticleFlowReco *pfr = new ParticleFlowReco();
0035   pfr->set_energy_match_Nsigma(1.5);
0036   pfr->Verbosity(verbosity);
0037   se->registerSubsystem(pfr);
0038 
0039   JetReco *particleflowjetreco = new JetReco("PARTICLEFLOWJETRECO");
0040   particleflowjetreco->add_input(new ParticleFlowJetInput());
0041   particleflowjetreco->add_algo(new FastJetAlgo(Jet::ANTIKT, 0.2), "AntiKt_ParticleFlow_r02");
0042   particleflowjetreco->add_algo(new FastJetAlgo(Jet::ANTIKT, 0.3), "AntiKt_ParticleFlow_r03");
0043   particleflowjetreco->add_algo(new FastJetAlgo(Jet::ANTIKT, 0.4), "AntiKt_ParticleFlow_r04");
0044   particleflowjetreco->add_algo(new FastJetAlgo(Jet::ANTIKT, 0.3), "AntiKt_ParticleFlow_r03");
0045   particleflowjetreco->set_algo_node("ANTIKT");
0046   particleflowjetreco->set_input_node("PARTICLEFLOW");
0047   particleflowjetreco->Verbosity(verbosity);
0048   se->registerSubsystem(particleflowjetreco);
0049 
0050   return;
0051 }
0052 #endif