HighLAND
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
ChargeIDEffSystematics Class Reference

Charge confusion systematic. This is treated as an efficiency systematic, applying a weight to the event. More...

#include <ChargeIDEffSystematics.hxx>

Inheritance diagram for ChargeIDEffSystematics:
EventWeightBase SystematicBase

Public Member Functions

 ChargeIDEffSystematics (bool computecount=false)
 
Weight_h ComputeWeight (const ToyExperiment &, const AnaEventC &, const ToyBoxB &)
 Apply the systematic.
 
Weight_h ComputeWeight (const ToyExperiment &toy, const AnaEventC &event, const ToyBoxB &box, const SelectionBase &sel)
 Apply the systematic.
 
- Public Member Functions inherited from EventWeightBase
 EventWeightBase ()
 Create the systematic, with one parameter.
 
 EventWeightBase (UInt_t npar)
 Create the systematic, specifying the number of systematic parameters.
 
virtual ~EventWeightBase ()
 Everyone should have a destructor.
 
virtual void InitializeEvent (const AnaEventC &event, const SelectionBase &sel, Int_t ibranch)
 Initialize the SystBox for this event.
 
- Public Member Functions inherited from SystematicBase
 SystematicBase ()
 Create the systematic, with one parameter.
 
 SystematicBase (UInt_t npar)
 Create the systematic, specifying the number of systematic parameters.
 
virtual ~SystematicBase ()
 Everyone should have a destructor.
 
UInt_t GetNParameters () const
 Returns the number of systematic parameters associated to this systematic.
 
void SetNParameters (int N)
 Set the number of systematic parameters associated to this systematic.
 
virtual const char * GetName () const
 Return the name of this systematic. This overrides the TObject::GetName() interface.
 
const std::string & Name () const
 Return the name of this systematic.
 
void SetName (const std::string &name)
 Set the name of this systematic.
 
Int_t GetIndex () const
 Return the index of this systematic.
 
void SetIndex (Int_t index)
 Set the index of this systematic.
 
TypeEnum Type () const
 Return the type of this systematic.
 
std::string ConvertType ()
 Return the type of this systematic.
 
void SetType (TypeEnum type)
 Set the type of this systematic.
 
PDFEnum PDF () const
 Return the PDF of this systematic.
 
std::string ConvertPDF ()
 Return the PDF of this systematic.
 
void SetPDF (PDFEnum PDF)
 Set the PDF of this systematic.
 
void SetEnabled (bool ena)
 Set the enable bit.
 
bool IsEnabled () const
 Returns the enable bit.
 
virtual void FinalizeEvent (const AnaEventC &event)
 Delete the SystBox for this event.
 
SystBoxBGetSystBox (const AnaEventC &event, Int_t isel=0, Int_t ibranch=0) const
 Get the SystBox corresponding to a selection, branch and event.
 
virtual void Initialize (Int_t nsel, Int_t isel, Int_t nbranch, Int_t nevents)
 Create the array of SystBox.
 
 ClassDef (SystematicBase, 2)
 

Public Attributes

BinnedParams_globalCharge
 
BinnedParams_localCharge
 

Protected Member Functions

void FillSystBox (const AnaEventC &event, const SelectionBase &sel, Int_t ibranch)
 Fill the SystBox for this event, selection and branch.
 
void ComputeEffFromGlobalParametrization (BinnedParamsParams *par, Float_t mom, Float_t momerr, BinnedParamsParams &params)
 
void ComputeEffFromGlobalLocalParametrization (BinnedParamsParams *par, Float_t mom, Float_t momerr, BinnedParamsParams &params)
 
void ComputeEffFromLocalParametrization (BinnedParamsParams *par, Float_t mom, Float_t momerr, BinnedParamsParams &params)
 
Float_t ComputeEffFromGlobalLocalParametrization (BinnedParamsParams *par, Float_t mom, Float_t momerr)
 
Float_t ComputeEffFromLocalParametrization (BinnedParamsParams *par, Float_t mom, Float_t momerr)
 
Int_t GetRelevantRecObjectGroups (const SelectionBase &sel, Int_t ibranch, Int_t *IDs) const
 Is this track relevant for this systematic ? More...
 
- Protected Member Functions inherited from EventWeightBase
virtual Int_t GetRelevantTrueObjectGroups (const SelectionBase &, Int_t ibranch, Int_t *IDs) const
 Get the IDs of the TrueObject groups that are relevant for this systematic in a given selection.
 
virtual bool IsRelevantRecObject (const AnaEventC &, const AnaRecObjectC &) const
 Check whether a AnaRecObject is relevant for this systematic or not.
 
virtual bool IsRelevantTrueObject (const AnaEventC &, const AnaTrueObjectC &) const
 Check whether a AnaTrueObject is relevant for this systematic or not.
 
virtual bool CheckTrueRecoAssociation (const AnaTrueObjectC &trueRecObject, const AnaRecObjectC &track) const
 Criteria for true-reco association for this systematic.
 
void FillTrueRecoAssociation (SystBoxB &box)
 Fll the true-reco association array.
 

Protected Attributes

bool _computecounters
 
bool _full_correlations
 value of psycheSystematics.Tracker.FullCorrelations parameter
 
- Protected Attributes inherited from SystematicBase
std::string _name
 The name of this systematic.
 
Int_t _index
 The index of this systematic (needed by SystematicsManager);.
 
TypeEnum _type
 The type of this systematic (variation, weight or flux)
 
bool _enabled
 Is this systematic enabled ?
 
PDFEnum _PDF
 The PDF use for the systematic parameter scan.
 
UInt_t _nParameters
 the number of systematic parameters
 
SystBoxB **** _systBoxes
 ----—— Relevant objects for this systematic ------------—— More...
 
Int_t _systBoxesNSel
 
Int_t _systBoxesNBranches [NMAXSELECTIONS]
 
Int_t _systBoxesNEvents [NMAXSELECTIONS][NMAXBRANCHES]
 

Additional Inherited Members

- Public Types inherited from SystematicBase
enum  TypeEnum { kVariation = 0, kWeight, kFlux, kUnknown }
 Enumerator describing the values that _type member can take.
 
enum  PDFEnum {
  kGaussian = 0, kUniform, kBinomial, kMultinomial,
  kUnknownPDF
}
 Enumerator describing the values that _PDF member can take.
 

Detailed Description

Charge confusion systematic. This is treated as an efficiency systematic, applying a weight to the event.

Definition at line 9 of file ChargeIDEffSystematics.hxx.

Member Function Documentation

§ GetRelevantRecObjectGroups()

Int_t ChargeIDEffSystematics::GetRelevantRecObjectGroups ( const SelectionBase sel,
Int_t  ibranch,
Int_t *  IDs 
) const
protectedvirtual

Is this track relevant for this systematic ?

Get the TrackGroup IDs array for this systematic

Reimplemented from EventWeightBase.

Definition at line 569 of file ChargeIDEffSystematics.cxx.

569  {
570 //********************************************************************
571 
572  SubDetId_h det = sel.GetDetectorFV(ibranch);
573 
574  if (det == SubDetId::kFGD1){
575  //IDs[0] = EventBoxTracker::kTracksWithGoodQualityTPCInFGD1FV;
576  IDs[0] = EventBoxTracker::kTracksWithTPCInFGD1FV;
577  return 1;
578  }
579  else if (det == SubDetId::kFGD2){
580  //IDs[0] = EventBoxTracker::kTracksWithGoodQualityTPCInFGD2FV;
581  IDs[0] = EventBoxTracker::kTracksWithTPCInFGD2FV;
582  return 1;
583  }
584  else if (det == SubDetId::kFGD){
585  //IDs[0] = EventBoxTracker::kTracksWithGoodQualityTPCInFGD1FV;
586  //IDs[1] = EventBoxTracker::kTracksWithGoodQualityTPCInFGD2FV;
587  IDs[0] = EventBoxTracker::kTracksWithTPCInFGD1FV;
588  IDs[1] = EventBoxTracker::kTracksWithTPCInFGD2FV;
589  return 2;
590  }else if (det == SubDetId::kP0D){
591  IDs[0] = EventBoxTracker::kTracksWithTPCInP0DFV;
592  return 1;
593  }
594 
595  return 0;
596 }
SubDetId_h GetDetectorFV(Int_t ibranch=0) const
Get the detector in which the Fiducial Volume is defined.

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