page Todo List

Member BACKEND_REQ (prospino_run,(libprospino), map_str_dbl,(const PID_pair &, const Options &)) BACKEND_REQ(prospino_read_slha1_input

  • Extend to also allow models ColliderBit_SLHA_file_model, ColliderBit_SLHA_scan_model

Member Gambit::ColliderBit::Analysis::add (Analysis *other)

  • Access by name, including merging disjoint region sets?

Member Gambit::ColliderBit::Analysis_ATLAS_13TeV_0LEP_139invfb::run (const Event *event)

  • Drop b-tag if pT < 50 GeV or |eta| > 2.5? Apply a random 9% loss / 0.91 reweight for jet quality criteria? And tight ID for high purity… used where? And tight ID for high purity… used where? Use weighting instead Compute from hard objects instead?

Member Gambit::ColliderBit::Analysis_ATLAS_13TeV_0LEP_13invfb::run (const Event *event)

  • Drop b-tag if pT < 50 GeV or |eta| > 2.5? Unless b-tagged (and pT > 50 && abseta < 2.5) Actually only within 0.2–0.4… Actually only within 0.2–0.4…

Member Gambit::ColliderBit::Analysis_ATLAS_13TeV_0LEP_36invfb::run (const Event *event)

  • Actually only within 0.2–0.4… Actually only within 0.2–0.4… Unless b-tagged (and pT > 50 && abseta < 2.5) Drop b-tag if pT < 50 GeV or |eta| > 2.5?

Member Gambit::ColliderBit::Analysis_ATLAS_13TeV_MultiLEP_strong_139invfb::run (const Event *event)

  • Drop b-tag if |eta| > 2.5? Use applyElectronIsolationEfficiency2019 or something similar? Compute from hard objects instead?

Member Gambit::ColliderBit::Analysis_CMS_13TeV_0LEP_137invfb::run (const Event *event)

  • Sum should actually be over all non-e/mu calo particles Sum should actually be over all calo particles Sum should actually be over all non-e/mu calo particles

Member Gambit::ColliderBit::Analysis_CMS_13TeV_0LEP_13invfb::run (const Event *event)

  • Sum should actually be over all non-e/mu calo particles Sum should actually be over all non-e/mu calo particles Need access to charged hadrons to do this isolation

Member Gambit::ColliderBit::Analysis_CMS_13TeV_0LEP_36invfb::run (const Event *event)

  • Sum should actually be over all non-e/mu calo particles Sum should actually be over all non-e/mu calo particles Need access to charged hadrons to do this isolation

Class Gambit::ColliderBit::Analysis_CMS_13TeV_MONOJET_36invfb

  • Add W/Z region with AKT8 jets and 2/1 n-subjettiness ratio cut

Member Gambit::ColliderBit::Analysis_CMS_13TeV_MONOJET_36invfb::analysis_specific_reset ()

  • Need to also clear/reset cutflow, but it currently has no method for that

Member Gambit::ColliderBit::Analysis_CMS_8TeV_1LEPDMTOP_20invfb::loglikelihood ()

  • Implement!

Member Gambit::ColliderBit::Analysis_CMS_8TeV_2LEPDMTOP_20invfb::loglikelihood ()

  • Implement!

Member Gambit::ColliderBit::AnalysisContainer::clear ()

  • Storing smart ptrs to Analysis would make this way easier

Class Gambit::ColliderBit::AnalysisData

  • Access by name? Guarantee ordering? How to combine covariance matrices – require?

Member Gambit::ColliderBit::AnalysisData::add (const SignalRegionData &srd)

  • Allow naming the SRs?

Member Gambit::ColliderBit::AnalysisData::clear ()

  • It’d be good to not have to re-enter most of the SRData and the covariance on every point: they don’t change

Member Gambit::ColliderBit::ATLAS::applyLooseIDElectronSelectionR2 (std::vector< const HEPUtils::Particle * > &electrons)

  • What about faking by jets or non-electrons?

Member Gambit::ColliderBit::ATLAS::applyMediumIDElectronSelection (std::vector< const HEPUtils::Particle * > &electrons)

  • This is an exact duplication of the below filtering code – split into a single util fn (in unnamed namespace?) when binned fns are static

Member Gambit::ColliderBit::ATLAS::applyTauEfficiencyR1 (std::vector< const HEPUtils::Particle * > &taus)

Member Gambit::ColliderBit::ATLAS::applyTightIDElectronSelection (std::vector< const HEPUtils::Particle * > &electrons)

  • This is an exact duplication of the above filtering code – split into a single util fn (in unnamed namespace?) when binned fns are static

Member Gambit::ColliderBit::ATLAS::smearJets (std::vector< HEPUtils::Jet * > &jets)

  • Is this the best way to smear? Should we preserve the mean jet energy, or pT, or direction?

Member Gambit::ColliderBit::ATLAS::smearTaus (std::vector< HEPUtils::Particle * > &taus)

  • Is this the best way to smear? Should we preserve the mean jet energy, or pT, or direction?

Member Gambit::ColliderBit::BuckFast::processEvent (HEPUtils::Event &) const

  • Run-dependence? Run-dependence?

Member Gambit::ColliderBit::calc_LHC_LogLikes (map_str_AnalysisLogLikes &result)

  • Needs more sophistication once we add analyses that don’t use event generation.

Member Gambit::ColliderBit::calc_LHC_LogLikes_full (map_str_AnalysisLogLikes &result)

  • Needs more sophistication once we add analyses that don’t use event generation.

Member Gambit::ColliderBit::CMS::smearJets (std::vector< HEPUtils::Jet * > &jets)

Member Gambit::ColliderBit::CMS::smearTaus (std::vector< HEPUtils::Particle * > &taus)

  • Is this the best way to smear? Should we preserve the mean jet energy, or pT, or direction? Update cf. Matthias study for ATLAS

Member Gambit::ColliderBit::convertParticleEvent (const EventT &pevt, HEPUtils::Event &result, std::vector< jet_collection_settings > all_jet_collection_settings, str jetcollection_taus, double jet_pt_min)

  • Hard-coded radius!!! Replace with HEPUtils::any(bhadrons, [&](const auto& pb){ pj.delta_R(pb) < 0.4 }) Use ghost tagging? Move out-of-acceptance MET contribution to BuckFast What’s wrong with having a W daughter? Doesn’t that just mark a final tau? Temporarily using quark-based tagging instead – fix Temporarily using quark-based tagging instead – fix Overlap between jets and prompt containers: need some isolation in MET calculation Hard-coded radius!!! Hard-coded radius from ATLAS-CONF-2021-022, make selectable? Hard-coded radius from ATLAS-CONF-2021-022, make selectable? Hard-coded radius from ATLAS-CONF-2021-022, make selectable? Hard-coded radius!!!

Member Gambit::ColliderBit::convertPartonEvent (const EventT &pevt, HEPUtils::Event &result, std::vector< jet_collection_settings > all_jet_collection_settings, str jetcollection_taus, double jet_pt_min)

  • Lepton dressing Only include hadronic tau fraction? We should leave this for the detector sim / analysis to deal with Some photons should be included in jets!!! Ignore for now since no FSR

Member Gambit::ColliderBit::Cutflows::normalize (double norm, size_t icut=0)

  • Provide a version that takes a vector of norms?

Member Gambit::ColliderBit::fill_analysis_loglikes (const AnalysisData &, AnalysisLogLikes &, bool, bool, bool, bool, bool(*FullLikes_FileExists)(const str &), int(*FullLikes_ReadIn)(const str &, const str &), double(*FullLikes_Evaluate)(std::map< str, double > &, const str &), const std::string)

  • Only compute this once per run Only compute this once per run Use newer (?) one-step Eigen constructors for (const) single-element arrays Only compute this once per run Compute the background-only covariance decomposition and likelihood only once Unify this for both cov and no-cov, feeding in one-element Eigen blocks as Ref<>s for the latter?

Member Gambit::ColliderBit::filter_reject (const JetPtrs &jets, std::function< bool(const Jet *)> rejfn, bool do_delete=true)

  • Optimise by only copying those which are selected (filter_select is canonical)

Member Gambit::ColliderBit::filter_reject (const ParticlePtrs &particles, std::function< bool(const Particle *)> rejfn, bool do_delete=true)

  • Optimise by only copying those which are selected (filter_select is canonical)

Member Gambit::ColliderBit::fromBottom (int n, const EventT &evt)

  • What about partonic decays? Rewrite using the Pythia > 8.176 particle-based methods

Member Gambit::ColliderBit::fromHadron (int n, const EventT &evt)

  • Rewrite using the Pythia > 8.176 particle-based methods

Member Gambit::ColliderBit::fromTau (int n, const EventT &evt)

  • Rewrite using the Pythia > 8.176 particle-based methods

Member Gambit::ColliderBit::get_LHC_LogLike_SR_indices (map_str_dbl &result)

  • Switch result type to map_str_int once we have implemented a printer for this type

Member Gambit::ColliderBit::getAndReplaceSLHAContent (pair_str_SLHAstruct &result)

  • Add option to save the new SLHA content to file

Member Gambit::ColliderBit::has_tag (const HEPUtils::BinnedFn2D< double > &effmap, double eta, double pt)

  • Also need 1D? Sampling in what variable?

Member Gambit::ColliderBit::marg_loglike_cov (const Eigen::ArrayXd &n_preds, const Eigen::ArrayXd &n_obss, const Eigen::ArrayXd &sqrtevals, const Eigen::MatrixXd &evecs)

  • Should also implement a check of relative difference

Member Gambit::ColliderBit::mkAnalysis (const str &name)

  • Move to a separate file

Member Gambit::ColliderBit::profile_loglike_cov (const Eigen::ArrayXd &n_preds, const Eigen::ArrayXd &n_obss, const Eigen::ArrayXd &sqrtevals, const Eigen::MatrixXd &evecs)

  • Pass in the cov, and compute the fixed evals, evecs, and corr matrix as fixed params in here? Via a helper function to reduce duplication

Member Gambit::ColliderBit::random_bool (double eff)

  • Handle out-of-range eff values

Member Gambit::ColliderBit::SignalRegionData::check () const

  • Add SR consistency checks

Updated on 2024-07-18 at 13:53:36 +0000