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

Implementation of reweighting factor for effective mass ratios. More...

#include <JEvtWeightFactorMeffRatio.hh>

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

Classes

struct  JEvtWeightFactorMeffRatioHelper
 Auxiliary class for I/O of effective mass ratio factor. More...
 

Public Types

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

Public Member Functions

 JEvtWeightFactorMeffRatio ()
 Default constructor.
 
 JEvtWeightFactorMeffRatio (const JRootObjectID &objectID, const JMeffRatioOption option, const double ratio, const JRange_t &range, const bool logE, const JCylinder3D &fiducialVolume)
 Constructor.
 
 JEvtWeightFactorMeffRatio (const JEvtWeightFactorMeffRatio &factor)
 Copy constructor.
 
void configure ()
 Configure effective mass ratio factor.
 
const TH1 & getHistogram () const
 Retrieve effective mass histogram.
 
JCylinder3D getFiducialVolume () const
 Retrieve fiducial volume.
 
void setFiducialVolume (const JCylinder3D &fiducialVolume)
 Set fiducial volume.
 
bool is_valid () const override final
 Check if this effective mass ratio weight factor is valid.
 
double interpolate (const double x) const
 Perform linear inter- or extrapolation of effective mass for given abscissa value.
 
double getMeffRatio (const double x1, const double x2) const
 Get effective mass ratio based on a scaling of the initial state energy.
 
double getMeffRatio1 (const double E0) const
 Get effective mass ratio based on a scaling of the initial state energy.
 
double getMeffRatio1 (const Evt &event) const
 Get effective mass ratio based on a scaling of the initial state energy.
 
double getMeffRatio2 (const double Enu) const
 Get effective mass ratio based on a scaling of the primary neutrino energy.
 
double getMeffRatio2 (const Evt &event) const
 Get effective mass ratio based on a scaling of the primary neutrino energy.
 
double getMeffRatio3 (const double Evis) const
 Get effective mass ratio based on a scaling of the total visible energy.
 
double getMeffRatio3 (const Evt &event) const
 Get effective mass ratio based on a scaling of the total visible energy.
 
double getMeffRatio4 (const double Evis, const double EvisLL) const
 Get effective mass ratio based on a scaling of the leading leptonic contribution to the total visible energy.
 
double getMeffRatio4 (const Evt &event) const
 Get effective mass ratio based on a scaling of the leading leptonic contribution to the total visible energy.
 
double getMeffRatio5 (const double Evis, const double EvisLL) const
 Get effective mass ratio based on a scaling of the hadronic contribution to the total visible energy.
 
double getMeffRatio5 (const Evt &event) const
 Get effective mass 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(JEvtWeightFactorMeffRatio::*) pFunction(const Evt &) const
 Type definition of pointer to member function for calculating effective mass ratios.
 

Private Attributes

pFunction mfp
 Pointer to member method for calculating effective mass ratios.
 
std::unique_ptr< TH1 > pMeff
 Unique pointer to effective mass ratio histogram.
 
JRootObjectID hMeff
 Effective mass histogram OID.
 
int option
 Effective mass ratio option.
 
double ratio
 Abscissa ratio.
 
JRange_t range
 Applicable range.
 
JCylinder3D fiducialVolume
 Fiducial volume (for visible energy computation)
 
bool logE
 Toggle logarithmic abscissa.
 
const double MeffMin
 Minimum effective mass.
 

Detailed Description

Implementation of reweighting factor for effective mass ratios.

Definition at line 69 of file JEvtWeightFactorMeffRatio.hh.

Member Typedef Documentation

◆ JRange_t

◆ pFunction

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

Type definition of pointer to member function for calculating effective mass ratios.

Definition at line 557 of file JEvtWeightFactorMeffRatio.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

◆ JMeffRatioOption

Indices of options for calculating effective mass ratios.


The option names correspond to the variable which is used to compute the effective mass ratio.

Enumerator
ENERGY_INITIAL_STATE 

Compute effective mass ratio based on scaling of the initial state energy.

ENERGY_NEUTRINO 

Compute effective mass ratio based on scaling of theprimary neutrino energy.

EVIS 

Compute effective mass ratio based on scaling of the total visible energy.

EVIS_LEADING_LEPTON_CONTR 

Compute effective mass ratio based on scaling of the visible energy contribution of the leading lepton.

EVIS_HADRONIC_CONTR 

Compute effective mass 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 JEvtWeightFactorMeffRatio.hh.

78 {
79 ENERGY_INITIAL_STATE, //!< Compute effective mass ratio based on scaling of the initial state energy
80 ENERGY_NEUTRINO, //!< Compute effective mass ratio based on scaling of theprimary neutrino energy
81 EVIS, //!< Compute effective mass ratio based on scaling of the total visible energy
82 EVIS_LEADING_LEPTON_CONTR, //!< Compute effective mass ratio based on scaling of the visible energy contribution of the leading lepton
83 EVIS_HADRONIC_CONTR, //!< Compute effective mass 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 };
@ ENERGY_INITIAL_STATE
Compute effective mass ratio based on scaling of the initial state energy.
@ EVIS
Compute effective mass ratio based on scaling of the total visible energy.
@ NUMBER_OF_OPTIONS
N.B.: This enum value needs to be specified last!
@ EVIS_HADRONIC_CONTR
Compute effective mass ratio based on scaling of the visible energy contribution of the hadronic show...
@ ENERGY_NEUTRINO
Compute effective mass ratio based on scaling of theprimary neutrino energy.
@ EVIS_LEADING_LEPTON_CONTR
Compute effective mass ratio based on scaling of the visible energy contribution of the leading lepto...

Constructor & Destructor Documentation

◆ JEvtWeightFactorMeffRatio() [1/3]

JAANET::JEvtWeightFactorMeffRatio::JEvtWeightFactorMeffRatio ( )
inline

Default constructor.

Definition at line 91 of file JEvtWeightFactorMeffRatio.hh.

91 :
92 pMeff (),
93 hMeff ("", "default"),
95 ratio (0.0),
96 range (0.0, 4.0),
97 fiducialVolume(getMaximumContainmentVolume()),
98 logE (true),
99 MeffMin (1.0e-9)
100 {
101 pMeff = std::make_unique<TH1D>(hMeff.getObjectName(), "", 10, range.getLowerLimit(), range.getUpperLimit());
102
103 for (Int_t i = 1; i <= pMeff->GetNbinsX(); ++i) {
104 pMeff->SetBinContent(i, 1.0);
105 }
106
107 pMeff->SetDirectory(0);
108
109 check_validity();
110 configure();
111 }
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 effective mass ratio factor.
JRootObjectID hMeff
Effective mass histogram OID.
JCylinder3D fiducialVolume
Fiducial volume (for visible energy computation)
bool logE
Toggle logarithmic abscissa.
int option
Effective mass ratio option.
const double MeffMin
Minimum effective mass.
std::unique_ptr< TH1 > pMeff
Unique pointer to effective mass ratio histogram.

◆ JEvtWeightFactorMeffRatio() [2/3]

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

Constructor.

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

Definition at line 124 of file JEvtWeightFactorMeffRatio.hh.

129 :
130 pMeff (),
131 hMeff (objectID),
132 option (option),
133 ratio (ratio),
134 range (range),
136 logE (logE),
137 MeffMin (1.0e-9)
138 {
139 check_validity();
140 configure();
141 }

◆ JEvtWeightFactorMeffRatio() [3/3]

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

Copy constructor.

Parameters
factoreffective mass ratio factor

Definition at line 149 of file JEvtWeightFactorMeffRatio.hh.

149 :
150 pMeff (),
151 hMeff (factor.hMeff),
152 option (factor.option),
153 ratio (factor.ratio),
154 range (factor.range),
155 fiducialVolume(factor.fiducialVolume),
156 logE (factor.logE),
157 MeffMin (1.0e-9)
158 {
159 pMeff.reset((TH1*) factor.pMeff->Clone());
160
161 pMeff->SetDirectory(0);
162
163 check_validity();
164 configure();
165 }

Member Function Documentation

◆ configure()

void JAANET::JEvtWeightFactorMeffRatio::configure ( )
inline

Configure effective mass ratio factor.

Definition at line 171 of file JEvtWeightFactorMeffRatio.hh.

172 {
173 using namespace std;
174 using namespace JPP;
175
176 if (hMeff.is_valid() && (!pMeff || hMeff.getObjectName() != string(pMeff->GetName()))) {
177
178 if (!getFileStatus(hMeff.getFilename().c_str())) {
179 THROW(JFileOpenException, "JEvtWeightFactorMeffRatio::configure(): Could not open file " << hMeff.getFilename());
180 }
181
182 TFile f(hMeff.getFilename().c_str(), "read");
183
184 TH1* h = (TH1*) f.Get(hMeff.getObjectName());
185
186 if (h != NULL) {
187 pMeff.reset(h);
188 pMeff->SetDirectory(0);
189 } else {
190 THROW(JNullPointerException, "JEvtWeightFactorMeffRatio::configure(): Could not extract histogram " << hMeff);
191 }
192
193 f.Close();
194 }
195
196 switch (option) {
197 case (int) ENERGY_INITIAL_STATE :
199 break;
200 case (int) ENERGY_NEUTRINO:
202 break;
203 case (int) EVIS:
205 break;
206 case (int) EVIS_LEADING_LEPTON_CONTR:
208 break;
209 case (int) EVIS_HADRONIC_CONTR:
211 break;
212 default:
213 THROW(JValueOutOfRange, "JEvtWeightFactorRatio::configure(): Invalid option " << option);
214 }
215 }
#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).
double getMeffRatio2(const double Enu) const
Get effective mass ratio based on a scaling of the primary neutrino energy.
double getMeffRatio1(const double E0) const
Get effective mass ratio based on a scaling of the initial state energy.
double getMeffRatio5(const double Evis, const double EvisLL) const
Get effective mass ratio based on a scaling of the hadronic contribution to the total visible energy.
double getMeffRatio4(const double Evis, const double EvisLL) const
Get effective mass ratio based on a scaling of the leading leptonic contribution to the total visible...
double getMeffRatio3(const double Evis) const
Get effective mass ratio based on a scaling of the total visible energy.
pFunction mfp
Pointer to member method for calculating effective mass ratios.

◆ getHistogram()

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

Retrieve effective mass histogram.

Returns
effective mass histogram

Definition at line 223 of file JEvtWeightFactorMeffRatio.hh.

224 {
225 if (pMeff) {
226 return *pMeff;
227 } else {
228 THROW(JLANG::JNullPointerException, "JEvtWeightFactorMeffRatio::getHistogram(): Effective mass histogram is not set.");
229 }
230 }

◆ getFiducialVolume()

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

Retrieve fiducial volume.

Returns
fiducial volume

Definition at line 238 of file JEvtWeightFactorMeffRatio.hh.

239 {
240 return fiducialVolume;
241 }

◆ setFiducialVolume()

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

Set fiducial volume.

Parameters
fiducialVolumefiducial volume

Definition at line 249 of file JEvtWeightFactorMeffRatio.hh.

250 {
252
253 check_validity();
254 }

◆ is_valid()

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

Check if this effective mass ratio weight factor is valid.

Returns
true if valid; else false

Definition at line 262 of file JEvtWeightFactorMeffRatio.hh.

263 {
264 return (pMeff &&
267 ratio >= 0.0 &&
268 range.is_valid() &&
269 fiducialVolume.getVolume() >= 0.0);
270 }
double getVolume() const
Get volume.
bool is_valid() const
Check validity of range.
Definition JRange.hh:311

◆ interpolate()

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

Perform linear inter- or extrapolation of effective mass for given abscissa value.

Parameters
xabscissa value
Returns
effective mass

Definition at line 279 of file JEvtWeightFactorMeffRatio.hh.

280 {
281 using namespace std;
282
283 const Int_t Nbins = pMeff->GetNbinsX();
284
285 const Int_t i0 = max(1, min(Nbins, pMeff->FindBin(x)));
286
287 const Double_t x0 = pMeff->GetBinCenter (i0);
288 const Double_t y0 = pMeff->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 = pMeff->GetBinCenter(i1);
293 const Double_t y1 = pMeff->GetBinCenter(i1);
294
295 return y0 + (x-x0) * (y1-y0)/(x1-x0);
296 }

◆ getMeffRatio()

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio ( const double x1,
const double x2 ) const
inline

Get effective mass ratio based on a scaling of the initial state energy.

Parameters
x1first abscissa value
x2second abscissa value
Returns
effective mass ratio

Definition at line 306 of file JEvtWeightFactorMeffRatio.hh.

308 {
309 const double M1 = interpolate(x1);
310 const double M2 = interpolate(x2);
311
312 const double ratio = M1 / (M2 > 0.0 ? M2 : MeffMin);
313
314 return (range(x2) ? ratio : 1.0);
315 }
double interpolate(const double x) const
Perform linear inter- or extrapolation of effective mass for given abscissa value.

◆ getMeffRatio1() [1/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio1 ( const double E0) const
inline

Get effective mass ratio based on a scaling of the initial state energy.

Parameters
E0initial state energy [GeV]
Returns
effective mass ratio

Definition at line 324 of file JEvtWeightFactorMeffRatio.hh.

325 {
326 if (logE) {
327 const double X = log10(E0);
328 return getMeffRatio(log10(ratio) + X, X);
329 } else {
330 return getMeffRatio(ratio * E0, E0);
331 }
332 }
double getMeffRatio(const double x1, const double x2) const
Get effective mass ratio based on a scaling of the initial state energy.

◆ getMeffRatio1() [2/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio1 ( const Evt & event) const
inline

Get effective mass ratio based on a scaling of the initial state energy.

Parameters
eventevent
Returns
effective mass ratio

Definition at line 341 of file JEvtWeightFactorMeffRatio.hh.

342 {
343 const double E0 = getE0(event);
344
345 return getMeffRatio1(E0);
346 }
double getE0(const Evt &evt)
Get initial state energy of a neutrino interaction.

◆ getMeffRatio2() [1/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio2 ( const double Enu) const
inline

Get effective mass ratio based on a scaling of the primary neutrino energy.

Parameters
Enuprimary neutrino energy [GeV]
Returns
effective mass ratio

Definition at line 355 of file JEvtWeightFactorMeffRatio.hh.

356 {
357 if (logE) {
358 const double X = log10(Enu);
359 return getMeffRatio(log10(ratio) + X, X);
360 } else {
361 return getMeffRatio(ratio * Enu, Enu);
362 }
363 }

◆ getMeffRatio2() [2/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio2 ( const Evt & event) const
inline

Get effective mass ratio based on a scaling of the primary neutrino energy.

Parameters
eventevent
Returns
effective mass ratio

Definition at line 372 of file JEvtWeightFactorMeffRatio.hh.

373 {
374 const Trk& primary = get_neutrino(event);
375
376 const double Enu = primary.E;
377
378 return getMeffRatio2(Enu);
379 }
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

◆ getMeffRatio3() [1/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio3 ( const double Evis) const
inline

Get effective mass ratio based on a scaling of the total visible energy.

Parameters
Evistotal visible energy [GeV]
Returns
effective mass ratio

Definition at line 388 of file JEvtWeightFactorMeffRatio.hh.

389 {
390 if (logE) {
391 const double X = log10(Evis);
392 return getMeffRatio(log10(ratio) + X, X);
393 } else {
394 return getMeffRatio(ratio * Evis, Evis);
395 }
396 }

◆ getMeffRatio3() [2/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio3 ( const Evt & event) const
inline

Get effective mass ratio based on a scaling of the total visible energy.

Parameters
eventevent
Returns
effective mass ratio

Definition at line 405 of file JEvtWeightFactorMeffRatio.hh.

406 {
407 const double Evis = JSIRENE::getVisibleEnergy(event, fiducialVolume);
408
409 return getMeffRatio3(Evis);
410 }
double getVisibleEnergy(const Trk &, const JCylinder3D &)
Get the visible energy of a track.

◆ getMeffRatio4() [1/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio4 ( const double Evis,
const double EvisLL ) const
inline

Get effective mass 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
effective mass ratio

Definition at line 423 of file JEvtWeightFactorMeffRatio.hh.

425 {
426 if (logE) {
427 return getMeffRatio(log10(Evis - (1-ratio) * EvisLL), log10(Evis));
428 } else {
429 return getMeffRatio( Evis - (1-ratio) * EvisLL, Evis);
430 }
431 }

◆ getMeffRatio4() [2/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio4 ( const Evt & event) const
inline

Get effective mass 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
effective mass ratio

Definition at line 443 of file JEvtWeightFactorMeffRatio.hh.

444 {
445 const double Evis = JSIRENE::getVisibleEnergy (event, fiducialVolume);
446 const double EvisLL = JSIRENE::getVisibleEnergyLeadingLepton(event, fiducialVolume);
447
448 return getMeffRatio4(Evis, EvisLL);
449 }
double getVisibleEnergyLeadingLepton(const Trk &, const JCylinder3D &)

◆ getMeffRatio5() [1/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio5 ( const double Evis,
const double EvisLL ) const
inline

Get effective mass 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
effective mass ratio

Definition at line 462 of file JEvtWeightFactorMeffRatio.hh.

464 {
465 if (logE) {
466 return getMeffRatio(log10(ratio * Evis + (1-ratio) * EvisLL), log10(Evis));
467 } else {
468 return getMeffRatio( ratio * Evis + (1-ratio) * EvisLL, Evis);
469 }
470 }

◆ getMeffRatio5() [2/2]

double JAANET::JEvtWeightFactorMeffRatio::getMeffRatio5 ( const Evt & event) const
inline

Get effective mass 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
effective mass ratio

Definition at line 482 of file JEvtWeightFactorMeffRatio.hh.

483 {
484 const double Evis = JSIRENE::getVisibleEnergy (event, fiducialVolume);
485 const double EvisLL = JSIRENE::getVisibleEnergyLeadingLepton(event, fiducialVolume);
486
487 return getMeffRatio5(Evis, EvisLL);
488 }

◆ getFactor()

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

Get weighting factor for given event.

Parameters
evtevent
Returns
weighting factor

Definition at line 497 of file JEvtWeightFactorMeffRatio.hh.

498 {
499 return (this->*mfp)(evt);
500 }

◆ getProperties() [1/2]

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

Get properties of this class.

Parameters
eqparsequation parameters

Definition at line 508 of file JEvtWeightFactorMeffRatio.hh.

509 {
510 return JEvtWeightFactorMeffRatioHelper(*this, eqpars);
511 }

◆ getProperties() [2/2]

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

Get properties of this class.

Parameters
eqparsequation parameters

Definition at line 519 of file JEvtWeightFactorMeffRatio.hh.

520 {
521 return JEvtWeightFactorMeffRatioHelper(*this, eqpars);
522 }

◆ read()

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

Read event-weight factor from input.

Parameters
ininput stream
Returns
input stream

Definition at line 531 of file JEvtWeightFactorMeffRatio.hh.

532 {
533 using namespace std;
534 using namespace JPP;
535
536 JStringStream is(in);
537
538 if (getFileStatus(is.str().c_str())) {
539 is.load();
540 }
541
542 JProperties properties = getProperties();
543 is >> properties;
544
545 check_validity();
546
547 configure();
548
549 return in;
550 }
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::JEvtWeightFactorMeffRatio::mfp
private

Pointer to member method for calculating effective mass ratios.

Definition at line 589 of file JEvtWeightFactorMeffRatio.hh.

◆ pMeff

std::unique_ptr<TH1> JAANET::JEvtWeightFactorMeffRatio::pMeff
private

Unique pointer to effective mass ratio histogram.

Definition at line 591 of file JEvtWeightFactorMeffRatio.hh.

◆ hMeff

JRootObjectID JAANET::JEvtWeightFactorMeffRatio::hMeff
private

Effective mass histogram OID.

Definition at line 593 of file JEvtWeightFactorMeffRatio.hh.

◆ option

int JAANET::JEvtWeightFactorMeffRatio::option
private

Effective mass ratio option.

Definition at line 594 of file JEvtWeightFactorMeffRatio.hh.

◆ ratio

double JAANET::JEvtWeightFactorMeffRatio::ratio
private

Abscissa ratio.

Definition at line 595 of file JEvtWeightFactorMeffRatio.hh.

◆ range

JRange_t JAANET::JEvtWeightFactorMeffRatio::range
private

Applicable range.

Definition at line 596 of file JEvtWeightFactorMeffRatio.hh.

◆ fiducialVolume

JCylinder3D JAANET::JEvtWeightFactorMeffRatio::fiducialVolume
private

Fiducial volume (for visible energy computation)

Definition at line 597 of file JEvtWeightFactorMeffRatio.hh.

◆ logE

bool JAANET::JEvtWeightFactorMeffRatio::logE
private

Toggle logarithmic abscissa.

Definition at line 598 of file JEvtWeightFactorMeffRatio.hh.

◆ MeffMin

const double JAANET::JEvtWeightFactorMeffRatio::MeffMin
private

Minimum effective mass.

Definition at line 600 of file JEvtWeightFactorMeffRatio.hh.


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