|  | ATLAS Offline Software
    | 
 
 
 
#include <TFCSParametrizationFloatSelectChain.h>
|  | 
|  | TFCSParametrizationFloatSelectChain (const char *name=nullptr, const char *title=nullptr) | 
|  | 
|  | TFCSParametrizationFloatSelectChain (const TFCSParametrizationFloatSelectChain &ref) | 
|  | 
| virtual int | push_back_in_bin (TFCSParametrizationBase *param, float low, float up) | 
|  | 
| virtual void | push_back_in_bin (TFCSParametrizationBase *param, unsigned int bin) override | 
|  | Should not be used unless the bin boundaries are already defined!  More... 
 | 
|  | 
| int | val_to_bin (float val) const | 
|  | 
| virtual double | get_bin_low_edge (int bin) const | 
|  | 
| virtual double | get_bin_up_edge (int bin) const | 
|  | 
| virtual void | push_before_first_bin (TFCSParametrizationBase *param) | 
|  | 
| virtual unsigned int | get_number_of_bins () const | 
|  | 
| virtual int | get_bin (TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const | 
|  | this method should determine in derived classes which bin to simulate, so that the simulate method can call the appropriate TFCSParametrizationBase simulations return -1 if no bin matches  More... 
 | 
|  | 
| virtual const std::string | get_variable_text (TFCSSimulationState &, const TFCSTruthState *, const TFCSExtrapolationState *) const | 
|  | 
| virtual const std::string | get_bin_text (int bin) const | 
|  | print the range of a bin; for bin -1, print the allowed range  More... 
 | 
|  | 
| virtual FCSReturnCode | simulate (TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const override | 
|  | Method in all derived classes to do some simulation.  More... 
 | 
|  | 
| void | Print (Option_t *option="") const override | 
|  | 
| bool | SplitChainObjects () const | 
|  | 
| void | set_SplitChainObjects () | 
|  | 
| void | reset_SplitChainObjects () | 
|  | 
| bool | RetryChainFromStart () const | 
|  | 
| void | set_RetryChainFromStart () | 
|  | 
| void | reset_RetryChainFromStart () | 
|  | 
| virtual unsigned int | size () const override | 
|  | Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operator[] methods give general access to these daughters.  More... 
 | 
|  | 
| virtual const TFCSParametrizationBase * | operator[] (unsigned int ind) const override | 
|  | Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operator[] methods give general access to these daughters.  More... 
 | 
|  | 
| virtual TFCSParametrizationBase * | operator[] (unsigned int ind) override | 
|  | Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operator[] methods give general access to these daughters.  More... 
 | 
|  | 
| virtual void | set_daughter (unsigned int ind, TFCSParametrizationBase *param) override | 
|  | Some derived classes have daughter instances of TFCSParametrizationBase objects The set_daughter method allows to change these daughters - expert use only! The original element at this position is not deleted.  More... 
 | 
|  | 
| const Chain_t & | chain () const | 
|  | 
| Chain_t & | chain () | 
|  | 
| void | push_back (const Chain_t::value_type ¶m) | 
|  | 
| virtual bool | is_match_Ekin_bin (int Ekin_bin) const override | 
|  | 
| virtual bool | is_match_calosample (int calosample) const override | 
|  | 
| void | clear () | 
|  | 
| virtual bool | is_match_pdgid (int id) const override | 
|  | 
| virtual bool | is_match_Ekin (float Ekin) const override | 
|  | 
| virtual bool | is_match_eta (float eta) const override | 
|  | 
| virtual bool | is_match_all_Ekin () const override | 
|  | 
| virtual bool | is_match_all_eta () const override | 
|  | 
| virtual bool | is_match_all_Ekin_bin () const override | 
|  | 
| virtual bool | is_match_all_calosample () const override | 
|  | 
| const std::set< int > & | pdgid () const override | 
|  | 
| double | Ekin_nominal () const override | 
|  | 
| double | Ekin_min () const override | 
|  | 
| double | Ekin_max () const override | 
|  | 
| double | eta_nominal () const override | 
|  | 
| double | eta_min () const override | 
|  | 
| double | eta_max () const override | 
|  | 
| virtual void | set_pdgid (int id) | 
|  | 
| virtual void | set_pdgid (const std::set< int > &ids) | 
|  | 
| virtual void | add_pdgid (int id) | 
|  | 
| virtual void | clear_pdgid () | 
|  | 
| virtual void | set_Ekin_nominal (double min) | 
|  | 
| virtual void | set_Ekin_min (double min) | 
|  | 
| virtual void | set_Ekin_max (double max) | 
|  | 
| virtual void | set_eta_nominal (double min) | 
|  | 
| virtual void | set_eta_min (double min) | 
|  | 
| virtual void | set_eta_max (double max) | 
|  | 
| virtual void | set_Ekin (const TFCSParametrizationBase &ref) | 
|  | 
| virtual void | set_eta (const TFCSParametrizationBase &ref) | 
|  | 
| virtual void | set_Ekin_eta (const TFCSParametrizationBase &ref) | 
|  | 
| virtual void | set_pdgid_Ekin_eta (const TFCSParametrizationBase &ref) | 
|  | 
| virtual bool | is_match_all_pdgid () const | 
|  | 
| virtual void | set_match_all_pdgid () | 
|  | 
| virtual void | reset_match_all_pdgid () | 
|  | 
| virtual void | set_geometry (ICaloGeometry *geo) | 
|  | Method to set the geometry access pointer.  More... 
 | 
|  | 
| virtual bool | operator== (const TFCSParametrizationBase &ref) const | 
|  | The == operator compares the content of instances.  More... 
 | 
|  | 
| virtual void | CleanAuxInfo (TFCSSimulationState &) const | 
|  | Method in all derived classes to delete objects stored in the simulstate AuxInfo.  More... 
 | 
|  | 
| void | FindDuplicates (FindDuplicateClasses_t &dup) | 
|  | 
| void | RemoveDuplicates () | 
|  | 
| void | RemoveNameTitle () | 
|  | 
| bool | msgLvl (const MSG::Level lvl) const | 
|  | Check whether the logging system is active at the provided verbosity level.  More... 
 | 
|  | 
| MsgStream & | msg () const | 
|  | Return a stream for sending messages directly (no decoration)  More... 
 | 
|  | 
| MsgStream & | msg (const MSG::Level lvl) const | 
|  | Return a decorated starting stream for sending messages.  More... 
 | 
|  | 
| MSG::Level | level () const | 
|  | Retrieve output level.  More... 
 | 
|  | 
| virtual void | setLevel (MSG::Level lvl) | 
|  | Update outputlevel.  More... 
 | 
|  | 
|  | 
| std::vector< float > | m_bin_low_edge | 
|  | 
| std::vector< unsigned int > | m_bin_start | 
|  | Contains the index where the TFCSParametrizationBase* instances to run for a given bin start.  More... 
 | 
|  | 
◆ Chain_t
◆ FindDuplicateClasses_t
◆ FindDuplicates_t
◆ FCSSplitChainObjects
Status bit for chain persistency. 
| Enumerator | 
|---|
| kSplitChainObjects | Set this bit in the TObject bit field if the TFCSParametrizationBase objects in the chain should be written as separate keys into the root file instead of directly writing the objects.  This is needed if the sum of all objects in the chain use >1GB of memory, which can't be handeled by TBuffer. Drawback is that identical objects will get stored as multiple instances  | 
| kRetryChainFromStart |  | 
Definition at line 20 of file TFCSParametrizationChain.h.
 
 
◆ FCSStatusBits
Status bit for FCS needs. 
| Enumerator | 
|---|
| kMatchAllPDGID | Set this bit in the TObject bit field if valid for all PDGID.  | 
Definition at line 52 of file TFCSParametrizationBase.h.
 
 
◆ TFCSParametrizationFloatSelectChain() [1/2]
  
  | 
        
          | TFCSParametrizationFloatSelectChain::TFCSParametrizationFloatSelectChain | ( | const char * | name = nullptr, |  
          |  |  | const char * | title = nullptr |  
          |  | ) |  |  |  | inline | 
 
 
◆ TFCSParametrizationFloatSelectChain() [2/2]
◆ add_pdgid()
  
  | 
        
          | void TFCSParametrization::add_pdgid | ( | int | id | ) |  |  | virtualinherited | 
 
 
◆ chain() [1/2]
  
  | 
        
          | Chain_t& TFCSParametrizationChain::chain | ( |  | ) |  |  | inlineinherited | 
 
 
◆ chain() [2/2]
◆ CleanAuxInfo()
◆ clear()
  
  | 
        
          | void TFCSParametrization::clear | ( |  | ) |  |  | inherited | 
 
 
◆ clear_pdgid()
  
  | 
        
          | void TFCSParametrization::clear_pdgid | ( |  | ) |  |  | virtualinherited | 
 
 
◆ compare()
Definition at line 78 of file TFCSParametrization.cxx.
   81                   << 
IsA()->GetName() << 
" != " << 
ref.IsA()->GetName());
 
   84   std::string 
name(GetName());
 
   87                                                 << 
" != " << 
ref.GetName());
 
   90   std::string 
title(GetTitle());
 
   93                                                  << 
" != " << 
ref.GetTitle());
 
 
 
 
◆ Ekin_max()
  
  | 
        
          | double TFCSParametrization::Ekin_max | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ Ekin_min()
  
  | 
        
          | double TFCSParametrization::Ekin_min | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ Ekin_nominal()
  
  | 
        
          | double TFCSParametrization::Ekin_nominal | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ eta_max()
  
  | 
        
          | double TFCSParametrization::eta_max | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ eta_min()
  
  | 
        
          | double TFCSParametrization::eta_min | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ eta_nominal()
  
  | 
        
          | double TFCSParametrization::eta_nominal | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ FindDuplicates()
Definition at line 90 of file TFCSParametrizationBase.cxx.
   92   for (
unsigned int i = 0; 
i < 
size(); ++
i)
 
   97       auto checkexist = dup.find(param);
 
   98       if (checkexist != dup.end()) {
 
  100                                                       << param->GetName());
 
  101         if (checkexist->second.replace) {
 
  104                         << refparam << 
"=" << refparam->GetName()
 
  105                         << 
", duplicate is " << param << 
"=" << param->GetName()
 
  106                         << 
" index " << 
i << 
" of " << 
this);
 
  107           dup[refparam].mother.push_back(
this);
 
  108           dup[refparam].index.push_back(
i);
 
  113       dup[param] = Duplicate_t();
 
  114       for (
auto &
ref : dup) {
 
  117         if (param == refparam)
 
  120         if (refparam == 
nullptr)
 
  123         if (
ref.second.replace)
 
  126         if (*param == *refparam) {
 
  128                         << refparam << 
"=" << refparam->GetName()
 
  129                         << 
", duplicate is " << param << 
"=" << param->GetName()
 
  130                         << 
" index " << 
i << 
" of " << 
this);
 
  131           dup[param].replace = refparam;
 
  132           dup[refparam].mother.push_back(
this);
 
  133           dup[refparam].index.push_back(
i);
 
 
 
 
◆ get_bin()
◆ get_bin_low_edge()
  
  | 
        
          | virtual double TFCSParametrizationFloatSelectChain::get_bin_low_edge | ( | int | bin | ) | const |  | inlinevirtual | 
 
 
◆ get_bin_text()
  
  | 
        
          | const std::string TFCSParametrizationBinnedChain::get_bin_text | ( | int | bin | ) | const |  | virtualinherited | 
 
 
◆ get_bin_up_edge()
  
  | 
        
          | virtual double TFCSParametrizationFloatSelectChain::get_bin_up_edge | ( | int | bin | ) | const |  | inlinevirtual | 
 
 
◆ get_number_of_bins()
  
  | 
        
          | virtual unsigned int TFCSParametrizationBinnedChain::get_number_of_bins | ( |  | ) | const |  | inlinevirtualinherited | 
 
 
◆ get_variable_text()
◆ is_match_all_calosample()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_all_calosample | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_all_Ekin()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_all_Ekin | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_all_Ekin_bin()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_all_Ekin_bin | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_all_eta()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_all_eta | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_all_pdgid()
  
  | 
        
          | virtual bool TFCSParametrizationBase::is_match_all_pdgid | ( |  | ) | const |  | inlinevirtualinherited | 
 
 
◆ is_match_calosample()
  
  | 
        
          | bool TFCSParametrizationChain::is_match_calosample | ( | int | calosample | ) | const |  | overridevirtualinherited | 
 
 
◆ is_match_Ekin()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_Ekin | ( | float | Ekin | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_Ekin_bin()
  
  | 
        
          | bool TFCSParametrizationChain::is_match_Ekin_bin | ( | int | Ekin_bin | ) | const |  | overridevirtualinherited | 
 
 
◆ is_match_eta()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_eta | ( | float | eta | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ is_match_pdgid()
  
  | 
        
          | virtual bool TFCSParametrization::is_match_pdgid | ( | int | id | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ level()
  
  | 
        
          | MSG::Level ISF_FCS::MLogging::level | ( |  | ) | const |  | inlineinherited | 
 
Retrieve output level. 
Definition at line 201 of file MLogging.h.
  201 { 
return msg().level(); }
 
 
 
◆ msg() [1/2]
  
  | 
        
          | MsgStream & ISF_FCS::MLogging::msg | ( |  | ) | const |  | inlineinherited | 
 
Return a stream for sending messages directly (no decoration) 
Definition at line 231 of file MLogging.h.
  232   MsgStream *
ms = m_msg_tls.get();
 
 
 
 
◆ msg() [2/2]
  
  | 
        
          | MsgStream & ISF_FCS::MLogging::msg | ( | const MSG::Level | lvl | ) | const |  | inlineinherited | 
 
Return a decorated starting stream for sending messages. 
Definition at line 240 of file MLogging.h.
 
 
◆ msgLvl()
  
  | 
        
          | bool ISF_FCS::MLogging::msgLvl | ( | const MSG::Level | lvl | ) | const |  | inlineinherited | 
 
Check whether the logging system is active at the provided verbosity level. 
Definition at line 222 of file MLogging.h.
 
 
◆ operator==()
◆ operator[]() [1/2]
  
  |  | inlineoverridevirtualinherited | 
 
 
◆ operator[]() [2/2]
  
  |  | inlineoverridevirtualinherited | 
 
 
◆ pdgid()
  
  | 
        
          | const std::set<int>& TFCSParametrization::pdgid | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ Print()
  
  | 
        
          | void TFCSParametrizationBinnedChain::Print | ( | Option_t * | option = "" | ) | const |  | overrideinherited | 
 
Definition at line 151 of file TFCSParametrizationBinnedChain.cxx.
  154   bool shortprint = 
opt.Index(
"short") >= 0;
 
  156   TString optprint = 
opt;
 
  157   optprint.ReplaceAll(
"short", 
"");
 
  160   for (
unsigned int ichain = 0; ichain < 
size(); ++ichain) {
 
  161     if (ichain == 0 && ichain != 
m_bin_start.front()) {
 
  171         prefix = Form(
"%-2d", ibin);
 
 
 
 
◆ push_back()
  
  | 
        
          | void TFCSParametrizationChain::push_back | ( | const Chain_t::value_type & | param | ) |  |  | inlineinherited | 
 
 
◆ push_back_in_bin() [1/2]
Definition at line 14 of file TFCSParametrizationFloatSelectChain.cxx.
   18     ATH_MSG_ERROR(
"Cannot add " << param->GetName() << 
": range [" << low << 
"," 
   19                                 << 
up << 
") not well defined");
 
   40   if (ilow < 0 && iup < 0) {
 
   42     ATH_MSG_ERROR(
"Cannot add " << param->GetName() << 
": range [" << low << 
"," 
   43                                 << 
up << 
") which is outside existing range [" 
   49   if (iup >= 0 && ilow >= 0 && iup - ilow == 1 && 
m_bin_low_edge[ilow] == low &&
 
   64     for (
int i = oldsize; 
i > newbin; --
i) {
 
   75                 << param->GetName() << 
": range [" << low << 
"," << 
up 
   76                 << 
") covers more than one bin in existing range [" 
   79                 << 
") or splits an existing bin");
 
 
 
 
◆ push_back_in_bin() [2/2]
◆ push_before_first_bin()
◆ recalc()
  
  | 
        
          | void TFCSParametrizationChain::recalc | ( |  | ) |  |  | protectedvirtualinherited | 
 
 
◆ recalc_Ekin_eta_intersect()
  
  | 
        
          | void TFCSParametrizationChain::recalc_Ekin_eta_intersect | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_Ekin_eta_union()
  
  | 
        
          | void TFCSParametrizationChain::recalc_Ekin_eta_union | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_Ekin_intersect()
  
  | 
        
          | void TFCSParametrizationChain::recalc_Ekin_intersect | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_Ekin_union()
  
  | 
        
          | void TFCSParametrizationChain::recalc_Ekin_union | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_eta_intersect()
  
  | 
        
          | void TFCSParametrizationChain::recalc_eta_intersect | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_eta_union()
  
  | 
        
          | void TFCSParametrizationChain::recalc_eta_union | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_pdgid_intersect()
  
  | 
        
          | void TFCSParametrizationChain::recalc_pdgid_intersect | ( |  | ) |  |  | protectedinherited | 
 
 
◆ recalc_pdgid_union()
  
  | 
        
          | void TFCSParametrizationChain::recalc_pdgid_union | ( |  | ) |  |  | protectedinherited | 
 
 
◆ RemoveDuplicates()
  
  | 
        
          | void TFCSParametrizationBase::RemoveDuplicates | ( |  | ) |  |  | inherited | 
 
Definition at line 142 of file TFCSParametrizationBase.cxx.
  146   std::set<TFCSParametrizationBase *> dellist;
 
  147   for (
auto &dupiter : dupclasses) {
 
  149     for (
auto onedup : dup) {
 
  150       if (onedup.second.mother.empty())
 
  154       for (
unsigned int i = 0; 
i < onedup.second.mother.size(); ++
i) {
 
  155         int index = onedup.second.index[
i];
 
  158         unsigned int delcount = dup[delparam].mother.
size();
 
  161                         << delparam << 
"=" << delparam->GetName() << 
" index " 
  162                         << 
index << 
" of " << mother << 
", has " << delcount
 
  163                         << 
" other replacements attached. Deleting");
 
  165           dellist.insert(delparam);
 
  168                           << delparam << 
"=" << delparam->GetName() << 
" index " 
  169                           << 
index << 
" of " << mother << 
", has " << delcount
 
  170                           << 
" other replacements attached. Skipping");
 
  180   std::map<std::string, int> ndel;
 
  181   for (
auto *delparam : dellist) {
 
  183     bool present = dup2.find(delparam) != dup2.end();
 
  186                                          << delparam->GetName()
 
  187                                          << 
" still referenced somewhere!");
 
  190                                        << delparam->GetName());
 
  191       ++ndel[delparam->ClassName()];
 
  195   for (
auto &del : ndel)
 
  196     ATH_MSG_INFO(
"Deleted " << del.second << 
" duplicate objects of class " 
 
 
 
◆ RemoveNameTitle()
  
  | 
        
          | void TFCSParametrizationBase::RemoveNameTitle | ( |  | ) |  |  | inherited | 
 
 
◆ reset_match_all_pdgid()
  
  | 
        
          | virtual void TFCSParametrizationBase::reset_match_all_pdgid | ( |  | ) |  |  | inlinevirtualinherited | 
 
 
◆ reset_RetryChainFromStart()
  
  | 
        
          | void TFCSParametrizationChain::reset_RetryChainFromStart | ( |  | ) |  |  | inlineinherited | 
 
 
◆ reset_SplitChainObjects()
  
  | 
        
          | void TFCSParametrizationChain::reset_SplitChainObjects | ( |  | ) |  |  | inlineinherited | 
 
 
◆ RetryChainFromStart()
  
  | 
        
          | bool TFCSParametrizationChain::RetryChainFromStart | ( |  | ) | const |  | inlineinherited | 
 
 
◆ set_daughter()
  
  |  | inlineoverridevirtualinherited | 
 
 
◆ set_Ekin()
◆ set_Ekin_eta()
◆ set_Ekin_max()
  
  | 
        
          | void TFCSParametrization::set_Ekin_max | ( | double | max | ) |  |  | virtualinherited | 
 
 
◆ set_Ekin_min()
  
  | 
        
          | void TFCSParametrization::set_Ekin_min | ( | double | min | ) |  |  | virtualinherited | 
 
 
◆ set_Ekin_nominal()
  
  | 
        
          | void TFCSParametrization::set_Ekin_nominal | ( | double | min | ) |  |  | virtualinherited | 
 
 
◆ set_eta()
◆ set_eta_max()
  
  | 
        
          | void TFCSParametrization::set_eta_max | ( | double | max | ) |  |  | virtualinherited | 
 
 
◆ set_eta_min()
  
  | 
        
          | void TFCSParametrization::set_eta_min | ( | double | min | ) |  |  | virtualinherited | 
 
 
◆ set_eta_nominal()
  
  | 
        
          | void TFCSParametrization::set_eta_nominal | ( | double | min | ) |  |  | virtualinherited | 
 
 
◆ set_geometry()
  
  | 
        
          | void TFCSParametrizationBase::set_geometry | ( | ICaloGeometry * | geo | ) |  |  | virtualinherited | 
 
 
◆ set_match_all_pdgid()
  
  | 
        
          | virtual void TFCSParametrizationBase::set_match_all_pdgid | ( |  | ) |  |  | inlinevirtualinherited | 
 
 
◆ set_pdgid() [1/2]
  
  | 
        
          | void TFCSParametrization::set_pdgid | ( | const std::set< int > & | ids | ) |  |  | virtualinherited | 
 
 
◆ set_pdgid() [2/2]
  
  | 
        
          | void TFCSParametrization::set_pdgid | ( | int | id | ) |  |  | virtualinherited | 
 
 
◆ set_pdgid_Ekin_eta()
◆ set_RetryChainFromStart()
  
  | 
        
          | void TFCSParametrizationChain::set_RetryChainFromStart | ( |  | ) |  |  | inlineinherited | 
 
 
◆ set_SplitChainObjects()
  
  | 
        
          | void TFCSParametrizationChain::set_SplitChainObjects | ( |  | ) |  |  | inlineinherited | 
 
 
◆ setLevel()
  
  | 
        
          | void ISF_FCS::MLogging::setLevel | ( | MSG::Level | lvl | ) |  |  | virtualinherited | 
 
 
◆ simulate()
Method in all derived classes to do some simulation. 
Result should be returned in simulstate.
Simulate all energies in calo layers for energy parametrizations. Simulate cells for shape simulation. 
Reimplemented from TFCSParametrizationChain.
Reimplemented in TFCSEnergyAndHitGAN, and TFCSEnergyAndHitGANV2.
Definition at line 64 of file TFCSParametrizationBinnedChain.cxx.
   68   Int_t retry_warning = 1;
 
   71   for (
int i = 0; 
i <= retry; 
i++) {
 
   72     if (
i >= retry_warning)
 
   74           "TFCSParametrizationBinnedChain::simulate(): Retry simulate call " 
   75           << 
i << 
"/" << retry);
 
   77     for (
unsigned int ichain = 0; ichain < 
m_bin_start[0]; ++ichain) {
 
   82         retry_warning = retry >> 1;
 
   83         if (retry_warning < 1)
 
  100                                << 
chain()[ichain]->GetName());
 
  105             retry_warning = retry >> 1;
 
  106             if (retry_warning < 1)
 
  123     for (
unsigned int ichain = 
m_bin_start.back(); ichain < 
size(); ++ichain) {
 
  128         retry_warning = retry >> 1;
 
  129         if (retry_warning < 1)
 
  142     ATH_MSG_FATAL(
"TFCSParametrizationBinnedChain::simulate(): Simulate call " 
  144                   << retry << 
" retries");
 
 
 
 
◆ simulate_and_retry()
◆ size()
  
  | 
        
          | virtual unsigned int TFCSParametrizationChain::size | ( |  | ) | const |  | inlineoverridevirtualinherited | 
 
 
◆ SplitChainObjects()
  
  | 
        
          | bool TFCSParametrizationChain::SplitChainObjects | ( |  | ) | const |  | inlineinherited | 
 
 
◆ startMsg()
  
  | 
        
          | std::string ISF_FCS::MLogging::startMsg | ( | MSG::Level | lvl, |  
          |  |  | const std::string & | file, |  
          |  |  | int | line |  
          |  | ) |  |  |  | staticinherited | 
 
Make a message to decorate the start of logging. 
Print a message for the start of logging. 
Definition at line 116 of file MLogging.cxx.
  120   auto last_slash = 
file.find_last_of(
'/');
 
  121   int path_len = last_slash == std::string::npos ? 0 : last_slash;
 
  122   int trim_point = path_len;
 
  123   int total_len = 
file.length();
 
  124   if (total_len - path_len > col1_len)
 
  125     trim_point = total_len - col1_len;
 
  126   std::string trimmed_name = 
file.substr(trim_point);
 
  128       "NIL", 
"VERBOSE", 
"DEBUG", 
"INFO", 
"WARNING", 
"ERROR", 
"FATAL", 
"ALWAYS"};
 
  129   std::string 
level = LevelNames[lvl];
 
  130   std::string level_string = std::string(
"(") + 
level + 
") ";
 
  132   output << std::setw(col1_len) << std::right << trimmed_name << 
":" 
  133          << std::setw(col2_len) << std::left << 
line << std::setw(col3_len)
 
  134          << std::right << level_string;
 
 
 
 
◆ unit_test() [1/2]
Definition at line 185 of file TFCSParametrizationBinnedChain.cxx.
  208   chain.push_before_first_bin(param);
 
  211   chain.push_back(param);
 
  218                   "==== Simulate only begin/end all with chain retry====");
 
  219   chain.set_RetryChainFromStart();
 
  221   chain.reset_RetryChainFromStart();
 
  224   for (
int i = 0; 
i < 3; ++
i) {
 
  228     chain.push_back_in_bin(param, 
i);
 
  231   for (
int i = 3; 
i > 0; --
i) {
 
  235     chain.push_back_in_bin(param, 
i);
 
  239   chain.push_back(param);
 
  242   chain.push_before_first_bin(param);
 
  249                   "==== Simulate with full chain with chain retry ====");
 
  250   chain.set_RetryChainFromStart();
 
  252   chain.reset_RetryChainFromStart();
 
 
 
 
◆ unit_test() [2/2]
Definition at line 110 of file TFCSParametrizationFloatSelectChain.cxx.
  115       "==================================================================");
 
  118       "= Please call TFCSParametrizationEkinSelectChain::unit_test(...) =");
 
  121       "= or          TFCSParametrizationEtaSelectChain ::unit_test(...) =");
 
  124       "==================================================================" 
 
 
 
◆ val_to_bin()
      
        
          | int TFCSParametrizationFloatSelectChain::val_to_bin | ( | float | val | ) | const | 
      
 
 
◆ ATLAS_THREAD_SAFE
  
  | 
        
          | boost::thread_specific_ptr<MsgStream> m_msg_tls ISF_FCS::MLogging::ATLAS_THREAD_SAFE |  | inlinestaticprivateinherited | 
 
Do not persistify! 
MsgStream instance (a std::cout like with print-out levels) 
Definition at line 215 of file MLogging.h.
 
 
◆ init_Ekin_max
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_Ekin_max = 14000000 |  | staticconstexprprotectedinherited | 
 
 
◆ init_Ekin_min
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_Ekin_min = 0 |  | staticconstexprprotectedinherited | 
 
 
◆ init_Ekin_nominal
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_Ekin_nominal = 0 |  | staticconstexprprotectedinherited | 
 
 
◆ init_eta_max
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_eta_max = 100 |  | staticconstexprprotectedinherited | 
 
 
◆ init_eta_min
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_eta_min = -100 |  | staticconstexprprotectedinherited | 
 
 
◆ init_eta_nominal
  
  | 
        
          | constexpr double TFCSParametrizationBase::init_eta_nominal = 0 |  | staticconstexprprotectedinherited | 
 
 
◆ m_bin_low_edge
  
  | 
        
          | std::vector<float> TFCSParametrizationFloatSelectChain::m_bin_low_edge |  | protected | 
 
 
◆ m_bin_start
  
  | 
        
          | std::vector<unsigned int> TFCSParametrizationBinnedChain::m_bin_start |  | protectedinherited | 
 
Contains the index where the TFCSParametrizationBase* instances to run for a given bin start. 
The last entry of the vector correponds to the index from where on TFCSParametrizationBase* objects should be run again for all bins. This way one can loop over some instances for all bins, then only specific ones for one bin and at the end again over some for all bins 
Definition at line 53 of file TFCSParametrizationBinnedChain.h.
 
 
◆ m_chain
  
  | 
        
          | Chain_t TFCSParametrizationChain::m_chain |  | privateinherited | 
 
 
◆ m_Ekin_max
  
  | 
        
          | double TFCSParametrization::m_Ekin_max |  | privateinherited | 
 
 
◆ m_Ekin_min
  
  | 
        
          | double TFCSParametrization::m_Ekin_min |  | privateinherited | 
 
 
◆ m_Ekin_nominal
  
  | 
        
          | double TFCSParametrization::m_Ekin_nominal |  | privateinherited | 
 
 
◆ m_eta_max
  
  | 
        
          | double TFCSParametrization::m_eta_max |  | privateinherited | 
 
 
◆ m_eta_min
  
  | 
        
          | double TFCSParametrization::m_eta_min |  | privateinherited | 
 
 
◆ m_eta_nominal
  
  | 
        
          | double TFCSParametrization::m_eta_nominal |  | privateinherited | 
 
 
◆ m_nm
  
  | 
        
          | std::string ISF_FCS::MLogging::m_nm |  | privateinherited | 
 
 
◆ m_pdgid
  
  | 
        
          | std::set<int> TFCSParametrization::m_pdgid |  | privateinherited | 
 
 
◆ m_writtenBases
The documentation for this class was generated from the following files:
 
JetConstituentVector::iterator iterator
virtual void set_daughter(unsigned int, TFCSParametrizationBase *)
Some derived classes have daughter instances of TFCSParametrizationBase objects The set_daughter meth...
virtual void set_Ekin_nominal(double min)
virtual void recalc()
Default is to call recalc_pdgid_intersect() and recalc_Ekin_eta_intersect()
FCSReturnCode
Base class for all FastCaloSim parametrizations Functionality in derivde classes is provided through ...
const std::set< int > & pdgid() const override
virtual const std::string get_bin_text(int bin) const
print the range of a bin; for bin -1, print the allowed range
static constexpr double init_Ekin_max
Do not persistify!
bool compare(const TFCSParametrizationBase &ref) const
Do not persistify!
static constexpr double init_eta_nominal
Do not persistify!
@ kSplitChainObjects
Set this bit in the TObject bit field if the TFCSParametrizationBase objects in the chain should be w...
static constexpr double init_Ekin_min
Do not persistify!
#define IsA
Declare the TObject style functions.
double Ekin_max() const override
virtual bool is_match_all_pdgid() const
static constexpr double init_eta_min
Do not persistify!
void recalc_eta_intersect()
Scalar eta() const
pseudorapidity method
MSG::Level level() const
Retrieve output level.
void FindDuplicates(FindDuplicateClasses_t &dup)
virtual void push_back_in_bin(TFCSParametrizationBase *param, unsigned int bin)
virtual void set_Ekin_max(double max)
static constexpr double init_eta_max
Do not persistify!
double eta_nominal() const override
#define ATH_MSG_VERBOSE(x)
virtual void set_Ekin(const TFCSParametrizationBase &ref)
virtual void set_eta(const TFCSParametrizationBase &ref)
IMessageSvc * getMessageSvc(bool quiet=false)
virtual void set_eta_max(double max)
virtual const std::string get_variable_text(TFCSSimulationState &, const TFCSTruthState *, const TFCSExtrapolationState *) const
virtual int get_bin(TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const
this method should determine in derived classes which bin to simulate, so that the simulate method ca...
virtual void set_pdgid(int id)
virtual void set_Ekin_eta(const TFCSParametrizationBase &ref)
virtual unsigned int get_number_of_bins() const
Set * set_union(Set *set1, Set *set2)
Perform a union of two sets.
MsgStream & msg() const
Return a stream for sending messages directly (no decoration)
virtual void set_Ekin_min(double min)
virtual int push_back_in_bin(TFCSParametrizationBase *param, float low, float up)
const Chain_t & chain() const
TFCSParametrization(const char *name=nullptr, const char *title=nullptr)
std::map< std::string, FindDuplicates_t > FindDuplicateClasses_t
std::string m_nm
Message source name.
void recalc_pdgid_intersect()
void recalc_Ekin_intersect()
double Ekin_min() const override
void Print(Option_t *option="") const
Print object information.
std::map< TFCSParametrizationBase *, Duplicate_t > FindDuplicates_t
double eta_max() const override
double eta_min() const override
virtual void set_eta_nominal(double min)
virtual void setLevel(MSG::Level lvl)
Update outputlevel.
int val_to_bin(float val) const
static constexpr double init_Ekin_nominal
#define ATH_MSG_NOCLASS(logger_name, x)
#define ATH_MSG_WARNING(x)
const boost::regex ref(r_ef)
FCSReturnCode simulate_and_retry(TFCSParametrizationBase *parametrization, TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const
double Ekin_nominal() const override
void recalc_Ekin_eta_intersect()
virtual void set_eta_min(double min)
@ kMatchAllPDGID
Set this bit in the TObject bit field if valid for all PDGID.
Set * set_intersection(Set *set1, Set *set2)
Perform an intersection of two sets.
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
TFCSParametrizationBinnedChain(const char *name=nullptr, const char *title=nullptr)
virtual unsigned int size() const
Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operat...
std::vector< float > m_bin_low_edge
bool msgLvl(const MSG::Level lvl) const
Check whether the logging system is active at the provided verbosity level.
std::vector< unsigned int > m_bin_start
Contains the index where the TFCSParametrizationBase* instances to run for a given bin start.
virtual unsigned int size() const override
Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operat...