Jpp  master_rocky
the software that should make you happy
Public Member Functions | Protected Attributes | List of all members
JRECONSTRUCTION::JPointing Class Reference

Auxiliary class to compare fit results with respect to a reference direction (e.g. true muon). More...

#include <JEvtToolkit.hh>

Public Member Functions

 JPointing ()
 Default constructor. More...
 
 JPointing (const JVersor3D &dir)
 Constructor. More...
 
 JPointing (const JFit &fit)
 Constructor. More...
 
JVersor3D getDirection () const
 Get direction. More...
 
double getAngle (const JFit &fit) const
 Get angle between reference direction and fit result. More...
 
bool operator() (const JFit &first, const JFit &second) const
 Comparison of fit results. More...
 
template<class T >
operator() (T __begin, T __end) const
 Select best fit result. More...
 

Protected Attributes

JVersor3D dir
 

Detailed Description

Auxiliary class to compare fit results with respect to a reference direction (e.g. true muon).

The sort operation results in an ordered set of fit results with increasing angle between the reference direction and that of the fit results.

Definition at line 550 of file JReconstruction/JEvtToolkit.hh.

Constructor & Destructor Documentation

◆ JPointing() [1/3]

JRECONSTRUCTION::JPointing::JPointing ( )
inline

Default constructor.

Definition at line 555 of file JReconstruction/JEvtToolkit.hh.

556  {}

◆ JPointing() [2/3]

JRECONSTRUCTION::JPointing::JPointing ( const JVersor3D dir)
inline

Constructor.

Parameters
dirreference direction

Definition at line 564 of file JReconstruction/JEvtToolkit.hh.

565  {
566  this->dir = dir;
567  }

◆ JPointing() [3/3]

JRECONSTRUCTION::JPointing::JPointing ( const JFit fit)
inline

Constructor.

Parameters
fitfit

Definition at line 575 of file JReconstruction/JEvtToolkit.hh.

576  {
577  this->dir = JRECONSTRUCTION::getDirection(fit);
578  }
JDirection3D getDirection(const JFit &fit)
Get direction.

Member Function Documentation

◆ getDirection()

JVersor3D JRECONSTRUCTION::JPointing::getDirection ( ) const
inline

Get direction.

Returns
direction

Definition at line 586 of file JReconstruction/JEvtToolkit.hh.

587  {
588  return dir;
589  }

◆ getAngle()

double JRECONSTRUCTION::JPointing::getAngle ( const JFit fit) const
inline

Get angle between reference direction and fit result.

Parameters
fitfit
Returns
angle [deg]

Definition at line 598 of file JReconstruction/JEvtToolkit.hh.

599  {
600  const double dot = getDot(fit, dir);
601 
602  if (dot >= +1.0)
603  return 0.0;
604  else if (dot <= -1.0)
605  return 180.0;
606  else
607  return acos(dot) * 180.0 / JMATH::PI;
608  }
static const double PI
Mathematical constants.
double getDot(const JFit &first, const JFit &second)
Get dot product.

◆ operator()() [1/2]

bool JRECONSTRUCTION::JPointing::operator() ( const JFit first,
const JFit second 
) const
inline

Comparison of fit results.

Parameters
firstfirst fit
secondsecond fit
Returns
true if first fit better; else false

Definition at line 618 of file JReconstruction/JEvtToolkit.hh.

619  {
620  return getDot(first, dir) > getDot(second, dir);
621  }

◆ operator()() [2/2]

template<class T >
T JRECONSTRUCTION::JPointing::operator() ( __begin,
__end 
) const
inline

Select best fit result.

Parameters
__beginbegin of fit results
__endend of fit results
Returns
best fit result

Definition at line 632 of file JReconstruction/JEvtToolkit.hh.

633  {
634  return std::min_element(__begin, __end, *this);
635  }

Member Data Documentation

◆ dir

JVersor3D JRECONSTRUCTION::JPointing::dir
protected

Definition at line 638 of file JReconstruction/JEvtToolkit.hh.


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