Jpp 20.0.0-rc.9-29-gccc23c492-D
the software that should make you happy
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
JFIT::JRegressor< JLine3Z, JSimplex > Struct Reference

Regressor function object for JLine3Z fit using JSimplex minimiser. More...

#include <JLine3ZRegressor.hh>

Inheritance diagram for JFIT::JRegressor< JLine3Z, JSimplex >:
JFIT::JAbstractRegressor< JLine3Z, JSimplex >

Public Types

typedef JSimplex< JLine3Zminimiser_type
 
typedef JRegressor< JLine3Z, JSimplexregressor_type
 
typedef minimiser_type::result_type result_type
 

Public Member Functions

 JRegressor (double sigma)
 Constructor.
 
template<class JHit_t >
double operator() (const JLine3Z &track, const JHit_t &hit) const
 Fit function.
 
result_type operator() (const JLine3Z &value, T __begin, T __end)
 Global fit.
 

Public Attributes

std::shared_ptr< JMEstimatorestimator
 M-Estimator function.
 
double sigma
 Time resolution [ns].
 

Detailed Description

Regressor function object for JLine3Z fit using JSimplex minimiser.

Definition at line 54 of file JLine3ZRegressor.hh.

Member Typedef Documentation

◆ minimiser_type

typedef JSimplex <JLine3Z > JFIT::JAbstractRegressor< JLine3Z , JSimplex >::minimiser_type
inherited

Definition at line 80 of file JRegressor.hh.

◆ regressor_type

typedef JRegressor<JLine3Z , JSimplex > JFIT::JAbstractRegressor< JLine3Z , JSimplex >::regressor_type
inherited

Definition at line 81 of file JRegressor.hh.

◆ result_type

Definition at line 82 of file JRegressor.hh.

Constructor & Destructor Documentation

◆ JRegressor()

JFIT::JRegressor< JLine3Z, JSimplex >::JRegressor ( double sigma)
inline

Constructor.

Parameters
sigmatime resolution of hit [ns]

Definition at line 64 of file JLine3ZRegressor.hh.

64 :
65 estimator(new JMEstimatorNormal())
66 {
67 this->sigma = sigma;
68 }
std::shared_ptr< JMEstimator > estimator
M-Estimator function.

Member Function Documentation

◆ operator()() [1/2]

template<class JHit_t >
double JFIT::JRegressor< JLine3Z, JSimplex >::operator() ( const JLine3Z & track,
const JHit_t & hit ) const
inline

Fit function.

This method is used to determine the chi2 of given hit with respect to trajectory of muon.

The template argument JHit_t refers to a data structure which should have the following member methods:

  • double getX(); // [m]
  • double getY(); // [m]
  • double getZ(); // [m]
  • double getT(); // [ns]
Parameters
tracktrack
hithit
Returns
chi2

Definition at line 86 of file JLine3ZRegressor.hh.

87 {
88 using namespace JPP;
89
90 JPosition3D D(hit.getX(), hit.getY(), hit.getZ());
91
92 D.sub(track.getPosition());
93
94 const double z = D.getDot(track.getDirection());
95 const double R = sqrt(D.getLengthSquared() - z*z);
96
97 const double t1 = track.getT() + (z + R * getKappaC()) * getInverseSpeedOfLight();
98
99 const double u = (t1 - hit.getT()) / sigma;
100
101 return estimator->getRho(u) * hit.getW();
102 }

◆ operator()() [2/2]

result_type JFIT::JAbstractRegressor< JLine3Z , JSimplex >::operator() ( const JLine3Z & value,
T __begin,
T __end )
inlineinherited

Global fit.

Parameters
valuestart value
__beginbegin of data set
__endend of data set
Returns
chi2

Definition at line 94 of file JRegressor.hh.

Member Data Documentation

◆ estimator

std::shared_ptr<JMEstimator> JFIT::JRegressor< JLine3Z, JSimplex >::estimator

M-Estimator function.

Definition at line 104 of file JLine3ZRegressor.hh.

◆ sigma

double JFIT::JRegressor< JLine3Z, JSimplex >::sigma

Time resolution [ns].

Definition at line 105 of file JLine3ZRegressor.hh.


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