Jpp test-rotations-old
the software that should make you happy
Loading...
Searching...
No Matches
JTRIGGER::JMatch1D< JHit_t > Class Template Reference

1D match criterion. More...

#include <JMatch1D.hh>

Inheritance diagram for JTRIGGER::JMatch1D< JHit_t >:
JLANG::JClonable< JClonable_t, JDerived_t >

Public Types

typedef JClonable< JClonable_t >::clone_type clone_type
 

Public Member Functions

 JMatch1D (const double roadWidth_m, const double Tmax_ns=0.0)
 Constructor.
 
virtual bool operator() (const JHit_t &first, const JHit_t &second) const override
 Match operator.
 
virtual clone_type clone () const override
 Get clone of this object.
 

Public Attributes

double RMax_m
 
double TMax_ns
 
double TMaxExtra_ns
 

Private Attributes

double x
 
double y
 
double z
 
double d
 
double t
 

Detailed Description

template<class JHit_t>
class JTRIGGER::JMatch1D< JHit_t >

1D match criterion.

This match algorithm is intented for muon signals. It is assumed that the muon direction is along the z-axis.

Definition at line 31 of file JMatch1D.hh.

Member Typedef Documentation

◆ 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.

Constructor & Destructor Documentation

◆ JMatch1D()

template<class JHit_t >
JTRIGGER::JMatch1D< JHit_t >::JMatch1D ( const double roadWidth_m,
const double Tmax_ns = 0.0 )
inline

Constructor.

Parameters
roadWidth_mmaximal road width [m]
Tmax_nsmaximal extra time [ns]

Definition at line 41 of file JMatch1D.hh.

42 :
43 RMax_m (roadWidth_m),
44 TMaxExtra_ns(Tmax_ns),
45 x(0.0),
46 y(0.0),
47 z(0.0),
48 d(0.0),
49 t(0.0)
50 {
51 TMax_ns = 0.5 * RMax_m * getTanThetaC() * getInverseSpeedOfLight() + TMaxExtra_ns;
52 }

Member Function Documentation

◆ operator()()

template<class JHit_t >
virtual bool JTRIGGER::JMatch1D< JHit_t >::operator() ( const JHit_t & first,
const JHit_t & second ) const
inlineoverridevirtual

Match operator.

Parameters
firsthit
secondhit
Returns
match result

Definition at line 62 of file JMatch1D.hh.

63 {
64 z = first.getZ() - second.getZ();
65 t = fabs(first.getT() - second.getT() - z * getInverseSpeedOfLight());
66
67 if (t > TMax_ns) {
68 return false;
69 }
70
71 x = first.getX() - second.getX();
72 y = first.getY() - second.getY();
73 d = sqrt(x*x + y*y);
74
75 if (d <= 0.5 * RMax_m)
76 return t <= d * getTanThetaC() * getInverseSpeedOfLight() + TMaxExtra_ns;
77 else if (d <= RMax_m)
78 return t <= (RMax_m - d) * getTanThetaC() * getInverseSpeedOfLight() + TMaxExtra_ns;
79
80 return false;
81 }

◆ clone()

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

Member Data Documentation

◆ RMax_m

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::RMax_m

Definition at line 84 of file JMatch1D.hh.

◆ TMax_ns

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::TMax_ns

Definition at line 85 of file JMatch1D.hh.

◆ TMaxExtra_ns

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::TMaxExtra_ns

Definition at line 86 of file JMatch1D.hh.

◆ x

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::x
mutableprivate

Definition at line 89 of file JMatch1D.hh.

◆ y

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::y
mutableprivate

Definition at line 90 of file JMatch1D.hh.

◆ z

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::z
mutableprivate

Definition at line 91 of file JMatch1D.hh.

◆ d

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::d
mutableprivate

Definition at line 92 of file JMatch1D.hh.

◆ t

template<class JHit_t >
double JTRIGGER::JMatch1D< JHit_t >::t
mutableprivate

Definition at line 93 of file JMatch1D.hh.


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