ATLAS Offline Software
Loading...
Searching...
No Matches
CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass Class Reference
Collaboration diagram for CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass:

Public Member Functions

 EfficiencyMethodBJetBasedClass (const nlohmann::json &jsonConfig)
double getPIneff (const int b_jet_count, const int N_missed, const double SF_eff) const

Private Attributes

std::map< std::string, doublem_bjetEfficiencyMap {}
int m_upperboundNbjets = -999

Detailed Description

Definition at line 123 of file SSVWeightsAlg.h.

Constructor & Destructor Documentation

◆ EfficiencyMethodBJetBasedClass()

CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass::EfficiencyMethodBJetBasedClass ( const nlohmann::json & jsonConfig)

Definition at line 614 of file SSVWeightsAlg.cxx.

615 : m_bjetEfficiencyMap(jsonConfig["efficiency_bjet_based"])
616 {
617 // Extract information from JSON file for EfficiencyMethodBJetBased
618 std::map<std::string, double>::iterator lastItem = std::prev(m_bjetEfficiencyMap.end());
619 std::string lastItemKey = lastItem->first;
620 m_upperboundNbjets = std::stoi(lastItemKey);
621 }
std::map< std::string, double > m_bjetEfficiencyMap

Member Function Documentation

◆ getPIneff()

double CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass::getPIneff ( const int b_jet_count,
const int N_missed,
const double SF_eff ) const

Definition at line 625 of file SSVWeightsAlg.cxx.

628 {
629
630 double P_ineff = 1;
631
632 // Get the value
633 double epsilon = 1;
634
635 //retrieve efficiency and average number of fake SSV depending on number of jets in event
636 if (b_jet_count < m_upperboundNbjets){
637 // Build the bjets key string
638 std::string bjets_key = std::to_string(b_jet_count) + "_bjets";
639 epsilon = m_bjetEfficiencyMap.at(bjets_key);
640 }
641 else{
642 std::string bjets_key = std::to_string(m_upperboundNbjets) + "p_bjets";
643 epsilon = m_bjetEfficiencyMap.at(bjets_key);
644 }
645
646 P_ineff = std::pow((1-SF_eff*epsilon)/(1-epsilon), N_missed);
647
648 return P_ineff;
649 }

Member Data Documentation

◆ m_bjetEfficiencyMap

std::map<std::string, double> CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass::m_bjetEfficiencyMap {}
private

Definition at line 131 of file SSVWeightsAlg.h.

131{};

◆ m_upperboundNbjets

int CP::SSVWeightsAlg::EfficiencyMethodBJetBasedClass::m_upperboundNbjets = -999
private

Definition at line 132 of file SSVWeightsAlg.h.


The documentation for this class was generated from the following files: