Jpp 19.3.0
the software that should make you happy
Loading...
Searching...
No Matches
JAANET::JEvtWeightFactorTriggerEfficiencyRatio Struct Referencefinal

Implementation of reweighting factor for trigger efficiency ratios. More...

#include <JEvtWeightFactorTriggerEfficiencyRatio.hh>

Inheritance diagram for JAANET::JEvtWeightFactorTriggerEfficiencyRatio:
JLANG::JClonable< JClonable_t, JDerived_t >

Classes

struct  JEvtWeightFactorTriggerEfficiencyRatioHelper
 Auxiliary class for I/O of trigger efficiency ratio factor. More...
 

Public Types

enum  JTriggerEfficiencyRatioOption {
  ENERGY_INITIAL_STATE , ENERGY_NEUTRINO , EVIS , EVIS_LEADING_LEPTON_CONTR ,
  EVIS_HADRONIC_CONTR , NUMBER_OF_OPTIONS
}
 Indices of options for calculating trigger efficiency ratios. More...
 
typedef JRange< double > JRange_t
 
typedef JClonable< JClonable_t >::clone_type clone_type
 

Public Member Functions

 JEvtWeightFactorTriggerEfficiencyRatio ()
 Default constructor.
 
 JEvtWeightFactorTriggerEfficiencyRatio (const JRootObjectID &objectID, const JTriggerEfficiencyRatioOption option, const double ratio, const JRange_t &range, const bool logE, const JCylinder3D &fiducialVolume)
 Constructor.
 
 JEvtWeightFactorTriggerEfficiencyRatio (const JEvtWeightFactorTriggerEfficiencyRatio &factor)
 Copy constructor.
 
void configure ()
 Configure trigger efficiency ratio factor.
 
const TH1 & getHistogram () const
 Retrieve trigger efficiency histogram.
 
JCylinder3D getFiducialVolume () const
 Retrieve fiducial volume.
 
void setFiducialVolume (const JCylinder3D &fiducialVolume)
 Set fiducial volume.
 
bool is_valid () const override final
 Check if this trigger efficiency ratio weight factor is valid.
 
double interpolate (const double x) const
 Perform linear inter- or extrapolation of trigger efficiency for given abscissa value.
 
double getTriggerEfficiencyRatio (const double x1, const double x2) const
 Get trigger efficiency ratio based on a scaling of the initial state energy.
 
double getTriggerEfficiencyRatio1 (const double E0) const
 Get trigger efficiency ratio based on a scaling of the initial state energy.
 
double getTriggerEfficiencyRatio1 (const Evt &event) const
 Get trigger efficiency ratio based on a scaling of the initial state energy.
 
double getTriggerEfficiencyRatio2 (const double Enu) const
 Get trigger efficiency ratio based on a scaling of the primary neutrino energy.
 
double getTriggerEfficiencyRatio2 (const Evt &event) const
 Get trigger efficiency ratio based on a scaling of the primary neutrino energy.
 
double getTriggerEfficiencyRatio3 (const double Evis) const
 Get trigger efficiency ratio based on a scaling of the total visible energy.
 
double getTriggerEfficiencyRatio3 (const Evt &event) const
 Get trigger efficiency ratio based on a scaling of the total visible energy.
 
double getTriggerEfficiencyRatio4 (const double Evis, const double EvisLL) const
 Get trigger efficiency ratio based on a scaling of the leading leptonic contribution to the total visible energy.
 
double getTriggerEfficiencyRatio4 (const Evt &event) const
 Get trigger efficiency ratio based on a scaling of the leading leptonic contribution to the total visible energy.
 
double getTriggerEfficiencyRatio5 (const double Evis, const double EvisLL) const
 Get trigger efficiency ratio based on a scaling of the hadronic contribution to the total visible energy.
 
double getTriggerEfficiencyRatio5 (const Evt &event) const
 Get trigger efficiency ratio based on a scaling of the hadronic contribution to the total visible energy.
 
double getFactor (const Evt &evt) const override final
 Get weighting factor for given event.
 
JProperties getProperties (const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters()) override final
 Get properties of this class.
 
JProperties getProperties (const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters()) const override final
 Get properties of this class.
 
std::istream & read (std::istream &in) override final
 Read event-weight factor from input.
 
virtual clone_type clone () const override
 Get clone of this object.
 

Private Types

typedef double(JEvtWeightFactorTriggerEfficiencyRatio::*) pFunction(const Evt &) const
 Type definition of pointer to member function for calculating trigger efficiency ratios.
 

Private Attributes

pFunction mfp
 Pointer to member method for calculating trigger efficiency ratios.
 
std::unique_ptr< TH1 > pTE
 Unique pointer to trigger efficiency ratio histogram.
 
JRootObjectID hTE
 Trigger efficiency histogram OID.
 
int option
 Trigger efficiency ratio option.
 
double ratio
 Abscissa ratio.
 
JRange_t range
 Applicable range.
 
JCylinder3D fiducialVolume
 Fiducial volume (for visible energy computation)
 
bool logE
 Toggle logarithmic abscissa.
 

Detailed Description

Implementation of reweighting factor for trigger efficiency ratios.

Definition at line 69 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

Member Typedef Documentation

◆ JRange_t

◆ pFunction

double(JEvtWeightFactorTriggerEfficiencyRatio::*) JAANET::JEvtWeightFactorTriggerEfficiencyRatio::pFunction(const Evt &) const
private

Type definition of pointer to member function for calculating trigger efficiency ratios.

Definition at line 542 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ clone_type

template<class JClonable_t , class JDerived_t >
JClonable<JClonable_t>::clone_type JLANG::JClonable< JClonable_t, JDerived_t >::clone_type
inherited

Definition at line 61 of file JClonable.hh.

Member Enumeration Documentation

◆ JTriggerEfficiencyRatioOption

Indices of options for calculating trigger efficiency ratios.


The option names correspond to the variable which is used to compute the trigger efficiency ratio.

Enumerator
ENERGY_INITIAL_STATE 

Compute trigger efficiency ratio based on scaling of the initial state energy.

ENERGY_NEUTRINO 

Compute trigger efficiency ratio based on scaling of theprimary neutrino energy.

EVIS 

Compute trigger efficiency ratio based on scaling of the total visible energy.

EVIS_LEADING_LEPTON_CONTR 

Compute trigger efficiency ratio based on scaling of the visible energy contribution of the leading lepton.

EVIS_HADRONIC_CONTR 

Compute trigger efficiency ratio based on scaling of the visible energy contribution of the hadronic shower.

NUMBER_OF_OPTIONS 

N.B.: This enum value needs to be specified last!

Definition at line 78 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

78 {
79 ENERGY_INITIAL_STATE, //!< Compute trigger efficiency ratio based on scaling of the initial state energy
80 ENERGY_NEUTRINO, //!< Compute trigger efficiency ratio based on scaling of theprimary neutrino energy
81 EVIS, //!< Compute trigger efficiency ratio based on scaling of the total visible energy
82 EVIS_LEADING_LEPTON_CONTR, //!< Compute trigger efficiency ratio based on scaling of the visible energy contribution of the leading lepton
83 EVIS_HADRONIC_CONTR, //!< Compute trigger efficiency ratio based on scaling of the visible energy contribution of the hadronic shower
84 NUMBER_OF_OPTIONS //!< N.B.: This enum value needs to be specified last!
85 };
@ EVIS_HADRONIC_CONTR
Compute trigger efficiency ratio based on scaling of the visible energy contribution of the hadronic ...
@ ENERGY_NEUTRINO
Compute trigger efficiency ratio based on scaling of theprimary neutrino energy.
@ EVIS
Compute trigger efficiency ratio based on scaling of the total visible energy.
@ EVIS_LEADING_LEPTON_CONTR
Compute trigger efficiency ratio based on scaling of the visible energy contribution of the leading l...
@ ENERGY_INITIAL_STATE
Compute trigger efficiency ratio based on scaling of the initial state energy.
@ NUMBER_OF_OPTIONS
N.B.: This enum value needs to be specified last!

Constructor & Destructor Documentation

◆ JEvtWeightFactorTriggerEfficiencyRatio() [1/3]

JAANET::JEvtWeightFactorTriggerEfficiencyRatio::JEvtWeightFactorTriggerEfficiencyRatio ( )
inline

Default constructor.

Definition at line 91 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

91 :
92 pTE (),
93 hTE ("", "default"),
95 ratio (0.0),
96 range (0.0, 4.0),
97 fiducialVolume(getMaximumContainmentVolume()),
98 logE (true)
99 {
100 pTE = std::make_unique<TH1D>(hTE.getObjectName(), "", 10, range.getLowerLimit(), range.getUpperLimit());
101
102 for (Int_t i = 1; i <= pTE->GetNbinsX(); ++i) {
103 pTE->SetBinContent(i, 1.0);
104 }
105
106 pTE->SetDirectory(0);
107
108 check_validity();
109 configure();
110 }
TString getObjectName() const
Get object name.
T getLowerLimit() const
Get lower limit.
Definition JRange.hh:202
T getUpperLimit() const
Get upper limit.
Definition JRange.hh:213
void configure()
Configure trigger efficiency ratio factor.
JCylinder3D fiducialVolume
Fiducial volume (for visible energy computation)
std::unique_ptr< TH1 > pTE
Unique pointer to trigger efficiency ratio histogram.

◆ JEvtWeightFactorTriggerEfficiencyRatio() [2/3]

JAANET::JEvtWeightFactorTriggerEfficiencyRatio::JEvtWeightFactorTriggerEfficiencyRatio ( const JRootObjectID & objectID,
const JTriggerEfficiencyRatioOption option,
const double ratio,
const JRange_t & range,
const bool logE,
const JCylinder3D & fiducialVolume )
inline

Constructor.

Parameters
objectIDtrigger efficiency histogram OID
optionoption
ratioabscissa ratio
rangeapplicable (logarithmic) energy range [GeV]
logEtoggle logarithmic energies
fiducialVolumefiducial volume

Definition at line 123 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

128 :
129 pTE (),
130 hTE (objectID),
131 option (option),
132 ratio (ratio),
133 range (range),
135 logE (logE)
136 {
137 check_validity();
138 configure();
139 }

◆ JEvtWeightFactorTriggerEfficiencyRatio() [3/3]

JAANET::JEvtWeightFactorTriggerEfficiencyRatio::JEvtWeightFactorTriggerEfficiencyRatio ( const JEvtWeightFactorTriggerEfficiencyRatio & factor)
inline

Copy constructor.

Parameters
factortrigger efficiency ratio factor

Definition at line 147 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

147 :
148 pTE (),
149 hTE (factor.hTE),
150 option (factor.option),
151 ratio (factor.ratio),
152 range (factor.range),
153 fiducialVolume(factor.fiducialVolume),
154 logE (factor.logE)
155 {
156 pTE.reset((TH1*) factor.pTE->Clone());
157
158 pTE->SetDirectory(0);
159
160 check_validity();
161 configure();
162 }

Member Function Documentation

◆ configure()

void JAANET::JEvtWeightFactorTriggerEfficiencyRatio::configure ( )
inline

Configure trigger efficiency ratio factor.

Definition at line 168 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

169 {
170 using namespace std;
171 using namespace JPP;
172
173 if (hTE.is_valid() && (!pTE || hTE.getObjectName() != string(pTE->GetName()))) {
174
175 if (!getFileStatus(hTE.getFilename().c_str())) {
176 THROW(JFileOpenException, "JEvtWeightFactorTriggerEfficiencyRatio::configure(): Could not open file " << hTE.getFilename());
177 }
178
179 TFile f(hTE.getFilename().c_str(), "read");
180
181 TH1* h = (TH1*) f.Get(hTE.getObjectName());
182
183 if (h != NULL) {
184 pTE.reset(h);
185 pTE->SetDirectory(0);
186 } else {
187 THROW(JNullPointerException, "JEvtWeightFactorTriggerEfficiencyRatio::configure(): Could not extract histogram " << hTE);
188 }
189
190 f.Close();
191 }
192
193 switch (option) {
194 case (int) ENERGY_INITIAL_STATE :
196 break;
197 case (int) ENERGY_NEUTRINO:
199 break;
200 case (int) EVIS:
202 break;
203 case (int) EVIS_LEADING_LEPTON_CONTR:
205 break;
206 case (int) EVIS_HADRONIC_CONTR:
208 break;
209 default:
210 THROW(JValueOutOfRange, "JEvtWeightFactorRatio::configure(): Invalid option " << option);
211 }
212 }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
const std::string & getFilename() const
Get file name.
bool is_valid() const
Check validity.
Exception for opening of file.
Exception for null pointer operation.
Exception for accessing a value in a collection that is outside of its range.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
pFunction mfp
Pointer to member method for calculating trigger efficiency ratios.
double getTriggerEfficiencyRatio2(const double Enu) const
Get trigger efficiency ratio based on a scaling of the primary neutrino energy.
double getTriggerEfficiencyRatio3(const double Evis) const
Get trigger efficiency ratio based on a scaling of the total visible energy.
double getTriggerEfficiencyRatio5(const double Evis, const double EvisLL) const
Get trigger efficiency ratio based on a scaling of the hadronic contribution to the total visible ene...
double getTriggerEfficiencyRatio1(const double E0) const
Get trigger efficiency ratio based on a scaling of the initial state energy.
double getTriggerEfficiencyRatio4(const double Evis, const double EvisLL) const
Get trigger efficiency ratio based on a scaling of the leading leptonic contribution to the total vis...

◆ getHistogram()

const TH1 & JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getHistogram ( ) const
inline

Retrieve trigger efficiency histogram.

Returns
trigger efficiency histogram

Definition at line 220 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

221 {
222 if (pTE) {
223 return *pTE;
224 } else {
225 THROW(JLANG::JNullPointerException, "JEvtWeightFactorTriggerEfficiencyRatio::getHistogram(): Trigger efficiency histogram is not set.");
226 }
227 }

◆ getFiducialVolume()

JCylinder3D JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getFiducialVolume ( ) const
inline

Retrieve fiducial volume.

Returns
fiducial volume

Definition at line 235 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

236 {
237 return fiducialVolume;
238 }

◆ setFiducialVolume()

void JAANET::JEvtWeightFactorTriggerEfficiencyRatio::setFiducialVolume ( const JCylinder3D & fiducialVolume)
inline

Set fiducial volume.

Parameters
fiducialVolumefiducial volume

Definition at line 246 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

247 {
249
250 check_validity();
251 }

◆ is_valid()

bool JAANET::JEvtWeightFactorTriggerEfficiencyRatio::is_valid ( ) const
inlinefinaloverride

Check if this trigger efficiency ratio weight factor is valid.

Returns
true if valid; else false

Definition at line 259 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

260 {
261 return (pTE &&
264 ratio >= 0.0 &&
265 range.is_valid() &&
266 fiducialVolume.getVolume() >= 0.0);
267 }
double getVolume() const
Get volume.
bool is_valid() const
Check validity of range.
Definition JRange.hh:311

◆ interpolate()

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::interpolate ( const double x) const
inline

Perform linear inter- or extrapolation of trigger efficiency for given abscissa value.

Parameters
xabscissa value
Returns
trigger efficiency

< Ensure that only given user-range is used for interpolation

Definition at line 276 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

277 {
278 using namespace std;
279
280 const Int_t Nbins = pTE->GetNbinsX();
281
282 //!< Ensure that only given user-range is used for interpolation
283 const Double_t X = range.constrain(x);
284
285 const Int_t i0 = max(1, min(Nbins, pTE->FindBin(X)));
286
287 const Double_t x0 = pTE->GetBinCenter (i0);
288 const Double_t y0 = pTE->GetBinContent(i0);
289
290 const Int_t i1 = max(2, min(Nbins-1, (x > x0 ? i0+1 : i0-1)));
291
292 const Double_t x1 = pTE->GetBinCenter (i1);
293 const Double_t y1 = pTE->GetBinContent(i1);
294
295 return max(0.0, y0 + (x-x0) * (y1-y0)/(x1-x0));
296 }
T constrain(argument_type x) const
Constrain value to range.
Definition JRange.hh:350

◆ getTriggerEfficiencyRatio()

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio ( const double x1,
const double x2 ) const
inline

Get trigger efficiency ratio based on a scaling of the initial state energy.

Parameters
x1first abscissa value
x2second abscissa value
Returns
trigger efficiency ratio

< Minimum logarithmic energy (= 1 MeV)

Definition at line 306 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

308 {
309 static const double Xmin = -3.0; //!< Minimum logarithmic energy (= 1 MeV)
310
311 double X1 = x1;
312 double X2 = x2;
313
314 if (logE) {
315 X1 = x1 > 0.0 ? log10(x1) : Xmin;
316 X2 = x2 > 0.0 ? log10(x2) : Xmin;
317 }
318
319 const double M1 = interpolate(X1);
320 const double M2 = interpolate(X2);
321
322 return M2 > 0.0 ? M1/M2 : 1.0;
323 }
double interpolate(const double x) const
Perform linear inter- or extrapolation of trigger efficiency for given abscissa value.

◆ getTriggerEfficiencyRatio1() [1/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio1 ( const double E0) const
inline

Get trigger efficiency ratio based on a scaling of the initial state energy.

Parameters
E0initial state energy [GeV]
Returns
trigger efficiency ratio

Definition at line 332 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

333 {
334 return getTriggerEfficiencyRatio(ratio * E0, E0);
335 }
double getTriggerEfficiencyRatio(const double x1, const double x2) const
Get trigger efficiency ratio based on a scaling of the initial state energy.

◆ getTriggerEfficiencyRatio1() [2/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio1 ( const Evt & event) const
inline

Get trigger efficiency ratio based on a scaling of the initial state energy.

Parameters
eventevent
Returns
trigger efficiency ratio

Definition at line 344 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

345 {
346 const double E0 = getE0(event);
347
349 }
double getE0(const Evt &evt)
Get initial state energy of a neutrino interaction.

◆ getTriggerEfficiencyRatio2() [1/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio2 ( const double Enu) const
inline

Get trigger efficiency ratio based on a scaling of the primary neutrino energy.

Parameters
Enuprimary neutrino energy [GeV]
Returns
trigger efficiency ratio

Definition at line 358 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

359 {
360 return getTriggerEfficiencyRatio(ratio * Enu, Enu);
361 }

◆ getTriggerEfficiencyRatio2() [2/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio2 ( const Evt & event) const
inline

Get trigger efficiency ratio based on a scaling of the primary neutrino energy.

Parameters
eventevent
Returns
trigger efficiency ratio

Definition at line 370 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

371 {
372 const Trk& primary = get_neutrino(event);
373
374 const double Enu = primary.E;
375
376 return getTriggerEfficiencyRatio2(Enu);
377 }
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
Definition Trk.hh:15
double E
Energy [GeV] (either MC truth or reconstructed)
Definition Trk.hh:20

◆ getTriggerEfficiencyRatio3() [1/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio3 ( const double Evis) const
inline

Get trigger efficiency ratio based on a scaling of the total visible energy.

Parameters
Evistotal visible energy [GeV]
Returns
trigger efficiency ratio

Definition at line 386 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

387 {
388 return getTriggerEfficiencyRatio(ratio * Evis, Evis);
389 }

◆ getTriggerEfficiencyRatio3() [2/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio3 ( const Evt & event) const
inline

Get trigger efficiency ratio based on a scaling of the total visible energy.

Parameters
eventevent
Returns
trigger efficiency ratio

Definition at line 398 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

399 {
400 const double Evis = JSIRENE::getVisibleEnergy(event, fiducialVolume);
401
402 return getTriggerEfficiencyRatio3(Evis);
403 }
double getVisibleEnergy(const Trk &, const JCylinder3D &)
Get the visible energy of a track.

◆ getTriggerEfficiencyRatio4() [1/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio4 ( const double Evis,
const double EvisLL ) const
inline

Get trigger efficiency ratio based on a scaling of the leading leptonic contribution to the total visible energy.

This function assumes that the hadronic component in the visible energy corresponds to the total visible energy
minus the leading leptonic contribution.

Parameters
Evistotal visible energy [GeV]
EvisLLleading lepton visible energy [GeV]
Returns
trigger efficiency ratio

Definition at line 416 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

418 {
419 return getTriggerEfficiencyRatio(Evis - (1-ratio)*EvisLL, Evis);
420 }

◆ getTriggerEfficiencyRatio4() [2/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio4 ( const Evt & event) const
inline

Get trigger efficiency ratio based on a scaling of the leading leptonic contribution to the total visible energy.

This function assumes that the hadronic component in the visible energy corresponds to the total visible energy
minus the leading leptonic contribution.

Parameters
eventevent
Returns
trigger efficiency ratio

Definition at line 432 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

433 {
434 const double Evis = JSIRENE::getVisibleEnergy (event, fiducialVolume);
435 const double EvisLL = JSIRENE::getVisibleEnergyLeadingLepton(event, fiducialVolume);
436
437 return getTriggerEfficiencyRatio4(Evis, EvisLL);
438 }
double getVisibleEnergyLeadingLepton(const Trk &, const JCylinder3D &)

◆ getTriggerEfficiencyRatio5() [1/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio5 ( const double Evis,
const double EvisLL ) const
inline

Get trigger efficiency ratio based on a scaling of the hadronic contribution to the total visible energy.

This function assumes that the hadronic component in the visible energy corresponds to the total visible energy
minus the leading leptonic contribution.

Parameters
Evistotal visible energy [GeV]
EvisLLleading lepton visible energy [GeV]
Returns
trigger efficiency ratio

Definition at line 451 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

453 {
454 return getTriggerEfficiencyRatio(ratio*Evis + (1-ratio)*EvisLL, Evis);
455 }

◆ getTriggerEfficiencyRatio5() [2/2]

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getTriggerEfficiencyRatio5 ( const Evt & event) const
inline

Get trigger efficiency ratio based on a scaling of the hadronic contribution to the total visible energy.

This function assumes that the hadronic component in the visible energy corresponds to the total visible energy
minus the leading leptonic contribution.

Parameters
eventevent
Returns
trigger efficiency ratio

Definition at line 467 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

468 {
469 const double Evis = JSIRENE::getVisibleEnergy (event, fiducialVolume);
470 const double EvisLL = JSIRENE::getVisibleEnergyLeadingLepton(event, fiducialVolume);
471
472 return getTriggerEfficiencyRatio5(Evis, EvisLL);
473 }

◆ getFactor()

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getFactor ( const Evt & evt) const
inlinefinaloverride

Get weighting factor for given event.

Parameters
evtevent
Returns
weighting factor

Definition at line 482 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

483 {
484 return (this->*mfp)(evt);
485 }

◆ getProperties() [1/2]

JProperties JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getProperties ( const JEquationParameters & eqpars = JEvtWeightFactor::getEquationParameters())
inlinefinaloverride

Get properties of this class.

Parameters
eqparsequation parameters

Definition at line 493 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

494 {
495 return JEvtWeightFactorTriggerEfficiencyRatioHelper(*this, eqpars);
496 }

◆ getProperties() [2/2]

JProperties JAANET::JEvtWeightFactorTriggerEfficiencyRatio::getProperties ( const JEquationParameters & eqpars = JEvtWeightFactor::getEquationParameters()) const
inlinefinaloverride

Get properties of this class.

Parameters
eqparsequation parameters

Definition at line 504 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

505 {
506 return JEvtWeightFactorTriggerEfficiencyRatioHelper(*this, eqpars);
507 }

◆ read()

std::istream & JAANET::JEvtWeightFactorTriggerEfficiencyRatio::read ( std::istream & in)
inlinefinaloverride

Read event-weight factor from input.

Parameters
ininput stream
Returns
input stream

Definition at line 516 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

517 {
518 using namespace std;
519 using namespace JPP;
520
521 JStringStream is(in);
522
523 if (getFileStatus(is.str().c_str())) {
524 is.load();
525 }
526
527 JProperties properties = getProperties();
528 is >> properties;
529
530 check_validity();
531
532 configure();
533
534 return in;
535 }
Utility class to parse parameter values.
Wrapper class around STL stringstream class to facilitate optional loading of data from file.
JProperties getProperties(const JEquationParameters &eqpars=JEvtWeightFactor::getEquationParameters()) override final
Get properties of this class.

◆ clone()

template<class JClonable_t , class JDerived_t >
virtual clone_type JLANG::JClonable< JClonable_t, JDerived_t >::clone ( ) const
inlineoverridevirtualinherited

Member Data Documentation

◆ mfp

pFunction JAANET::JEvtWeightFactorTriggerEfficiencyRatio::mfp
private

Pointer to member method for calculating trigger efficiency ratios.

Definition at line 574 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ pTE

std::unique_ptr<TH1> JAANET::JEvtWeightFactorTriggerEfficiencyRatio::pTE
private

Unique pointer to trigger efficiency ratio histogram.

Definition at line 576 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ hTE

JRootObjectID JAANET::JEvtWeightFactorTriggerEfficiencyRatio::hTE
private

Trigger efficiency histogram OID.

Definition at line 578 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ option

int JAANET::JEvtWeightFactorTriggerEfficiencyRatio::option
private

Trigger efficiency ratio option.

Definition at line 579 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ ratio

double JAANET::JEvtWeightFactorTriggerEfficiencyRatio::ratio
private

Abscissa ratio.

Definition at line 580 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ range

JRange_t JAANET::JEvtWeightFactorTriggerEfficiencyRatio::range
private

Applicable range.

Definition at line 581 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ fiducialVolume

JCylinder3D JAANET::JEvtWeightFactorTriggerEfficiencyRatio::fiducialVolume
private

Fiducial volume (for visible energy computation)

Definition at line 582 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.

◆ logE

bool JAANET::JEvtWeightFactorTriggerEfficiencyRatio::logE
private

Toggle logarithmic abscissa.

Definition at line 583 of file JEvtWeightFactorTriggerEfficiencyRatio.hh.


The documentation for this struct was generated from the following file: