File indexing completed on 2025-08-05 08:13:22
0001 #pragma once
0002 #if ROOT_VERSION_CODE >= ROOT_VERSION(6,00,0)
0003 #include <fun4all/SubsysReco.h>
0004 #include <fun4all/Fun4AllServer.h>
0005 #include <fun4all/Fun4AllInputManager.h>
0006 #include <fun4all/Fun4AllDstInputManager.h>
0007
0008 #include <fun4all/Fun4AllDstOutputManager.h>
0009 #include <fun4all/Fun4AllOutputManager.h>
0010 #include <fun4all/Fun4AllServer.h>
0011
0012 #include <phool/PHRandomSeed.h>
0013 #include <phool/recoConsts.h>
0014
0015 #include <g4centrality/PHG4CentralityReco.h>
0016
0017 #include "HIJetReco_softdrop.C"
0018 #include <G4_TopoClusterReco.C>
0019 #include <caloreco/RawClusterBuilderTopo.h>
0020 #include <jetvalidation/JetValidationTC.h>
0021
0022 R__LOAD_LIBRARY(libfun4all.so)
0023 R__LOAD_LIBRARY(libg4jets.so)
0024 R__LOAD_LIBRARY(libjetbackground.so)
0025 R__LOAD_LIBRARY(libJetValidationTC.so)
0026 R__LOAD_LIBRARY(libg4centrality.so)
0027 R__LOAD_LIBRARY(libcalo_reco.so)
0028 R__LOAD_LIBRARY(libg4dst.so)
0029
0030
0031 #endif
0032 void Fun4All_JetVal(const char *filelisttruth = "dst_truth_jet.list",
0033 const char *filelistcalo = "dst_calo_cluster.list",
0034 const char *filelistglobal = "dst_global.list",
0035 const char *outname = "outputest.root", float minJetPt = 0.)
0036 {
0037
0038 std::string jetNode = "AntiKt_TopoCluster_Unsubtracted_r04";
0039 Fun4AllServer *se = Fun4AllServer::instance();
0040 int verbosity = 5;
0041
0042 se->Verbosity(verbosity);
0043 recoConsts *rc = recoConsts::instance();
0044
0045 PHG4CentralityReco *cent = new PHG4CentralityReco();
0046 cent->Verbosity(verbosity);
0047 cent->GetCalibrationParameters().ReadFromFile("centrality", "xml", 0, 0, string(getenv("CALIBRATIONROOT")) + string("/Centrality/"));
0048 se->registerSubsystem( cent );
0049
0050 Enable::VERBOSITY = verbosity;
0051
0052
0053 RawClusterBuilderTopo* ClusterBuilder1 = new RawClusterBuilderTopo("HcalRawClusterBuilderTopo1");
0054 ClusterBuilder1->Verbosity(verbosity);
0055 ClusterBuilder1->set_nodename("TOPOCLUSTER_EMCAL");
0056 ClusterBuilder1->set_enable_HCal(false);
0057 ClusterBuilder1->set_enable_EMCal(true);
0058 ClusterBuilder1->set_noise(0.02, 0.03, 0.03);
0059 ClusterBuilder1->set_significance(4.0, 2.0, 1.0);
0060 ClusterBuilder1->allow_corner_neighbor(true);
0061 ClusterBuilder1->set_do_split(true);
0062 ClusterBuilder1->set_minE_local_max(1.0, 2.0, 0.5);
0063 ClusterBuilder1->set_R_shower(0.025);
0064 se->registerSubsystem(ClusterBuilder1);
0065
0066 RawClusterBuilderTopo* ClusterBuilder2 = new RawClusterBuilderTopo("HcalRawClusterBuilderTopo2");
0067 ClusterBuilder2->Verbosity(verbosity);
0068 ClusterBuilder2->set_nodename("TOPOCLUSTER_HCAL");
0069 ClusterBuilder2->set_enable_HCal(true);
0070 ClusterBuilder2->set_enable_EMCal(false);
0071 ClusterBuilder2->set_noise(0.01, 0.03, 0.03);
0072 ClusterBuilder2->set_significance(4.0, 2.0, 1.0);
0073 ClusterBuilder2->allow_corner_neighbor(true);
0074 ClusterBuilder2->set_do_split(true);
0075 ClusterBuilder2->set_minE_local_max(1.0, 2.0, 0.5);
0076 ClusterBuilder2->set_R_shower(0.025);
0077 se->registerSubsystem(ClusterBuilder2);
0078
0079
0080
0081
0082
0083
0084
0085
0086
0087
0088
0089
0090
0091
0092
0093
0094 HIJetReco_softdrop();
0095
0096 JetValidationTC *myJetVal = new JetValidationTC(jetNode, "AntiKt_Truth_r04", outname);
0097
0098 myJetVal->setPtRange(5, 100);
0099 myJetVal->setEtaRange(-0.7, 0.7);
0100 myJetVal->doUnsub(0);
0101 myJetVal->doTruth(0);
0102 myJetVal->doSeeds(1);
0103 myJetVal->doClusters(1);
0104 myJetVal->setJetPtThreshold(minJetPt);
0105 myJetVal->setMinClusterE(0.8);
0106 myJetVal->setMinClusterDeltaR(0.08);
0107 myJetVal->setMinPhotonProb(0.1);
0108 myJetVal->setMaxdR(0.4);
0109 myJetVal->setClusterType("CLUSTERINFO_POS_COR_CEMC");
0110 myJetVal->removeClustersInJets(1);
0111 se->registerSubsystem(myJetVal);
0112
0113
0114
0115
0116
0117
0118
0119
0120 Fun4AllInputManager *in2 = new Fun4AllDstInputManager("DSTcalo");
0121 in2->AddFile(filelistcalo);
0122 se->registerInputManager(in2);
0123
0124
0125
0126
0127
0128
0129
0130 se->run(1200);
0131 se->End();
0132
0133 gSystem->Exit(0);
0134 return 0;
0135 }