Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:15:00

0001 /// ---------------------------------------------------------------------------
0002 /*! \file   LambdaJetHunterOptions.h
0003  *  \author Derek Anderson
0004  *  \date   01.25.2024
0005  *
0006  *  Options for the SLambdaJetHunter module.
0007  */
0008 /// ---------------------------------------------------------------------------
0009 
0010 #ifndef LAMBDAJETHUNTEROPTIONS_H
0011 #define LAMBDAJETHUNTEROPTIONS_H 
0012 
0013 // c++ utilities
0014 #include <string>
0015 #include <utility>
0016 // analysis utilities
0017 #include <scorrelatorutilities/Types.h>
0018 #include <scorrelatorutilities/Constants.h>
0019 // module configuration
0020 #include <slambdajethunter/SLambdaJetHunter.h>
0021 #include <slambdajethunter/SLambdaJetHunterConfig.h>
0022 
0023 // make common namespacs implicit
0024 using namespace std;
0025 using namespace SColdQcdCorrelatorAnalysis;
0026 
0027 
0028 
0029 namespace LambdaJetHunterOptions {
0030 
0031   // acceptance cuts ==========================================================
0032 
0033   // event acceptance
0034   const pair<float, float> vzEvtRange = {-10., 10.};
0035   const pair<float, float> vrEvtRange = {0.0,  0.418};
0036 
0037   // particle acceptance
0038   const pair<float, float> ptParRange  = {0.,   100.};
0039   const pair<float, float> etaParRange = {-1.1, 1.1};
0040 
0041   // jet acceptance
0042   const pair<float, float> ptJetRange  = {0.1, 100.};
0043   const pair<float, float> etaJetRange = {-0.7, 0.7};
0044 
0045 
0046 
0047   // bundle acceptances into pairs ============================================
0048 
0049   // --------------------------------------------------------------------------
0050   //! Bundle particle acceptance cuts into a pair
0051   // --------------------------------------------------------------------------
0052   pair<Types::ParInfo, Types::ParInfo> GetParAccept() {
0053 
0054     // create maximal range
0055     pair<Types::ParInfo, Types::ParInfo> parAccept = {
0056       Types::ParInfo(Const::Init::Minimize),
0057       Types::ParInfo(Const::Init::Maximize)
0058     };
0059 
0060     // set specific bounds
0061     parAccept.first.SetPT( ptParRange.first );
0062     parAccept.first.SetEta( etaParRange.first );
0063     parAccept.second.SetPT( ptParRange.second );
0064     parAccept.second.SetEta( etaParRange.second );
0065     return parAccept;
0066 
0067   }  // end 'GetParAccept()'
0068 
0069 
0070 
0071   // --------------------------------------------------------------------------
0072   //! Bundle jet acceptance cuts into a pair
0073   // --------------------------------------------------------------------------
0074   pair<Types::JetInfo, Types::JetInfo> GetJetAccept() {
0075 
0076     // create maximal range
0077     pair<Types::JetInfo, Types::JetInfo> jetAccept = {
0078       Types::JetInfo(Const::Init::Minimize),
0079       Types::JetInfo(Const::Init::Maximize)
0080     };
0081 
0082     // set specific bounds
0083     jetAccept.first.SetPT( ptJetRange.first );
0084     jetAccept.first.SetEta( etaJetRange.first );
0085     jetAccept.second.SetPT( ptJetRange.second );
0086     jetAccept.second.SetEta( etaJetRange.second );
0087     return jetAccept;
0088 
0089   }  // end 'GetJetAccept()'
0090 
0091 
0092 
0093   // set up configuration =====================================================
0094 
0095   // --------------------------------------------------------------------------
0096   //! Generate lambda-jet hunter configuration 
0097   // --------------------------------------------------------------------------
0098   SLambdaJetHunterConfig GetConfig(const int verbosity, const string outFile) {
0099 
0100     SLambdaJetHunterConfig cfg {
0101       .verbosity   = verbosity,
0102       .isDebugOn   = true,
0103       .isEmbed     = false,
0104       .moduleName  = "SLambdaJetHunter",
0105       .outTreeName = "LambdaJetTree",
0106       .outFileName = outFile,
0107       .associator  = SLambdaJetHunter::Associator::Barcode,
0108       .isCharged   = false,
0109       .rJet        = 0.4,
0110       .jetAlgo     = "antikt_algorithm",
0111       .jetRecomb   = "pt_scheme",
0112       .vzAccept    = vzEvtRange,
0113       .vrAccept    = vrEvtRange,
0114       .parAccept   = GetParAccept(),
0115       .jetAccept   = GetJetAccept()
0116     };
0117     return cfg;
0118 
0119   }  // end 'GetConfig(int, string&)'
0120 
0121 }  // end LambdaJetHunterOptions namespace
0122 
0123 #endif
0124 
0125 // end ------------------------------------------------------------------------