* @ingroup alihlt_jet
*/
+// ----------------------------------------------------------------------------
+// -- Pythia Parameter
+// ----------------------------------------------------------------------------
+
+enum PprRun_t {
+ kPythia6Jets20_24, kPythia6Jets24_29, kPythia6Jets29_35,
+ kPythia6Jets35_42, kPythia6Jets42_50, kPythia6Jets50_60,
+ kPythia6Jets60_72, kPythia6Jets72_86, kPythia6Jets86_104,
+ kPythia6Jets104_125, kPythia6Jets125_150, kPythia6Jets150_180,
+ kPyJetJet, kPyGammaJetPHOS, kRunMax
+};
+
+const Char_t* pprRunName[] = {
+ "kPythia6Jets20_24", "kPythia6Jets24_29", "kPythia6Jets29_35",
+ "kPythia6Jets35_42", "kPythia6Jets42_50", "kPythia6Jets50_60",
+ "kPythia6Jets60_72", "kPythia6Jets72_86", "kPythia6Jets86_104",
+ "kPythia6Jets104_125", "kPythia6Jets125_150", "kPythia6Jets150_180",
+ "kPyJetJet", "kPyGammaJetPHOS"
+};
+
+// ----------------------------------------------------------------------------
+// -- Jet Parameter
+// ----------------------------------------------------------------------------
+
+Float_t aConeRadius[] = { 0.4, 0.7 };
+Float_t aCutPtSeed[] = { 4.0, 7.0, 10.0 };
+Float_t aCutEtJet[] = { 4.0, 7.0, 10.0, 15.0 };
+
+// ----------------------------------------------------------------------------
+
+
/** HLTJetReconstruction test macro
* @param nEvents Number of events which should be processed
*/
-void HLTJetReconstruction(Int_t nEvents=1) {
+void HLTJetReconstruction(Int_t nEvents=1, Bool_t generate=kFALSE, PprRun_t runType = kPythia6Jets104_125 ) {
TString writerInput;
- TString arg;
+ TString analysisInput;
+ TString jetInput;
- // this is just a tool to switch the logging systems
+ // -- Switch Logging
+ // -------------------
+ AliLog::SetGlobalLogLevel( AliLog::kError );
AliHLTLogging log;
log.SwitchAliLog(0);
+ // -- Initialize HLT
+ // -------------------
AliHLTSystem gHLT;
- gHLT.SetGlobalLoggingLevel(0x7F);
- gHLT.LoadComponentLibraries("libAliHLTUtil.so");
- gHLT.LoadComponentLibraries("libAliHLTJET.so");
+ gHLT.SetGlobalLoggingLevel(0x7D);
+
+ if ( getenv("FASTJET") ) {
+ gHLT.LoadComponentLibraries("libCGAL.so");
+ gHLT.LoadComponentLibraries("libfastjet.so");
+ gHLT.LoadComponentLibraries("libSISConePlugin.so");
+ }
gHLT.LoadComponentLibraries("libESD.so");
gHLT.LoadComponentLibraries("libSTEER.so");
gHLT.LoadComponentLibraries("libANALYSIS.so");
gHLT.LoadComponentLibraries("libANALYSISalice.so");
gHLT.LoadComponentLibraries("libJETAN.so");
- gHLT.LoadComponentLibraries("libJETANMC.so");
+
+ gHLT.LoadComponentLibraries("libAliHLTUtil.so");
+ gHLT.LoadComponentLibraries("libAliHLTJET.so");
+
+ gHLT.LoadComponentLibraries("liblhapdf.so");
+ gHLT.LoadComponentLibraries("libEGPythia6.so");
+ gHLT.LoadComponentLibraries("libpythia6.so");
+ gHLT.LoadComponentLibraries("libAliPythia6.so");
// ----------------------------//
// - - //
- // -- Publisher Components -- //
+ // -- Parameters -- //
// - - //
// ----------------------------//
- arg.Form("-entrytype MCFAST -dataspec 0x0000001F -datapath /home/jthaeder/jet/data/HEAD_2009-03-17/FastGen/kPythia6Jets104_125_14TeV/JET-ETA=-0.2,0.2_JET-ET=50,1000_R=0.4_10ev");
+ Float_t coneRadius = aConeRadius[0];
+ Float_t cutPtSeed = aCutPtSeed[0];
+ Float_t cutEtJet = aCutEtJet[1];
+ Int_t seed = 12345;
+ // ----------------------------//
+ // - - //
+ // -- Publisher Components -- //
+ // - - //
+ // ----------------------------//
-// jet/data/v4-16-Rev-01/FastGen/kPythia6Jets104_125_14TeV/JET-ETA=-0.2,0.2_JET-ET=50,1000_R=0.4_10ev");
-
- // -- The ESDMCEventPublisher
- AliHLTConfiguration ESDMCEventPublisher("ESDMCEventPublisher", "ESDMCEventPublisher",
- NULL, arg.Data() );
-
- if (!writerInput.IsNull()) writerInput+=" ";
- writerInput+="ESDMCEventPublisher";
+ if ( ! generate ) {
+ // ------------------------------------------
+ // -- The ESDMCEventPublisher
+ // ------------------------------------------
+ TString publisherId("ESDMCEventPublisher");
+ // ------------------------------------------
+ // MCFAST - MC - ESD
+ TString publisherArg("-entrytype ESD -dataspec 0x0000001F -datapath /lustre/alice/jthaeder/data/HEAD_2010-07-09/7TeV/pp_Perugia0/014000");
+
+ AliHLTConfiguration ESDMCEventPublisher(publisherId.Data(), "ESDMCEventPublisher", NULL, publisherArg.Data() );
+
+ if (!analysisInput.IsNull()) analysisInput+=" ";
+ analysisInput += publisherId;
+
+ if (!jetInput.IsNull()) jetInput+=" ";
+ jetInput += publisherId;
+ }
+
+ else {
+ // ------------------------------------------
+ // -- The MCGenerator
+ // ------------------------------------------
+ TString generatorId( Form("MCGenerator_%s", pprRunName[runType]) );
+ // ------------------------------------------
+
+ TString generatorArg( Form("-seed %d -nevents %d -runtype %d -coneRadius %.1f -jetCutMinEt %.1f",
+ seed, nEvents, runType, coneRadius, cutEtJet));
+
+ AliHLTConfiguration mcGenerator(generatorId.Data(), "MCGenerator", NULL, generatorArg.Data() );
+
+ if (!analysisInput.IsNull()) analysisInput+=" ";
+ analysisInput += generatorId;
+
+ if (!jetInput.IsNull()) jetInput+=" ";
+ jetInput += generatorId;
+ }
// ----------------------------//
// - - //
// - - //
// ----------------------------//
+#if 1
+
+ // ------------------------------------------
// -- ConeJetFinder
-
- AliHLTConfiguration jetFinder("JETConeJet", "JETConeJetFinder",
- "ESDMCEventPublisher","");
+ // ------------------------------------------
+ TString jetId("JETConeJet");
+ // ------------------------------------------
+
+ TString jetArg(
+ Form("-algorithm FSCSquareCell -leading 1 -coneRadius %.1f -trackCutMinPt 0.0 -seedCutMinPt %.1f -jetCutMinEt %.1f", coneRadius, cutPtSeed, cutEtJet)
+ );
- if (!writerInput.IsNull()) writerInput+=" ";
- writerInput+="JETConeJet";
+ AliHLTConfiguration jetCone(jetId.Data(), "JETConeJetFinder", jetInput.Data(), jetArg.Data());
+ if (!analysisInput.IsNull()) analysisInput+=" ";
+ analysisInput += jetId;
+
+#else
+ // ------------------------------------------
// -- FastJetFinder
- /*
- AliHLTConfiguration jetFinder("JETFastJet", "JETFastJetFinder",
- "ESDMCEventPublisher","");
+ // ------------------------------------------
+
+ AliHLTConfiguration jetFinder("JETFastJet_Kt", "JETFastJetFinder", jetInput.Data(),"-finderType kt");
+
+ if (!writerInput.IsNull()) writerInput+=" ";
+ writerInput+="JETFastJet_Kt";
+
+ AliHLTConfiguration jetFinder("JETFastJet_AntiKt", "JETFastJetFinder", jetInput.Data(),"-finderType antikt");
+
+ if (!writerInput.IsNull()) writerInput+=" ";
+ writerInput+="JETFastJet_AntiKt";
+#endif
+
+ // ------------------------------------------
+ // -- Jet Analysis
+ // ------------------------------------------
+ TString analysisId("JETAnalysis");
+ // ------------------------------------------
+
+ TString analysisArg("");
+
+ AliHLTConfiguration jetAnalysis(analysisId.Data(), "JETAnalysis", analysisInput.Data(), analysisArg.Data() );
if (!writerInput.IsNull()) writerInput+=" ";
- writerInput+="JETFastJet";
- */
+ writerInput += analysisId;
+
// ----------------------------//
// - - //
// -- Sink Components -- //
// - - //
// ----------------------------//
+
+ TString writerArg( Form("-directory analysis -datafile analyze_%d_%s -write-all-events", nEvents, pprRunName[runType] ));
// -- The RootFileWriter
- AliHLTConfiguration rootWriter("RootWriter", "ROOTFileWriter",
- writerInput.Data(), "-datafile event");
-
-
+ AliHLTConfiguration rootWriter("RootWriter", "ROOTFileWriter", writerInput.Data(), writerArg.Data() );
+
+ // --------------------------- //
// - - //
// -- Run -- //
// - - //
+ // --------------------------- //
gHLT.BuildTaskList("RootWriter");
gHLT.Run(nEvents);
+ return;
}