1#ifndef __JPOINT4DREGRESSOR__ 
    2#define __JPOINT4DREGRESSOR__  
   51    template<
class JHit_t>
 
   56      const double dt = hit.getT() - vx.
getT(hit.getPosition());
 
   58      const double u  = dt / sigma;
 
   60      return estimator->getRho(u) * hit.getW();
 
 
 
   88    template<
class JHit_t>
 
   89    result_type operator()(
const JPoint4D& vx, 
const JHit_t& hit)
 const 
   93      const double dt = hit.getT() - vx.
getT(hit.getPosition());
 
   95      const double u  = dt / sigma;
 
   97      result.chi2 = estimator->getRho(u) * hit.getW();
 
  101      double weight = getIndexOfRefraction() * getInverseSpeedOfLight()/(d.
getLength() * sigma);
 
  103      result.gradient = hit.getW() * 
JPoint4D( d * weight,
 
  105      result.gradient.mul(0.5 * estimator->getPsi(u));
 
Maximum likelihood estimator (M-estimators).
 
General purpose messaging.
 
General purpose data regression method.
 
Fit method based on the Levenberg-Marquardt method.
 
Data structure for vertex fit.
 
Simple fit method based on Powell's algorithm, see reference: Numerical Recipes in C++,...
 
const JPosition3D & getPosition() const
Get position.
 
Data structure for vector in three dimensions.
 
double getLength() const
Get length.
 
double getT(const JVector3D &pos) const
Get arrival time of Cherenkov light at given position.
 
The template JSharedPointer class can be used to share a pointer to an object.
 
Auxiliary classes and methods for linear and iterative data regression.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Abstract class for global fit method.
 
double sigma
Time resolution [ns].
 
JLANG::JSharedPointer< JMEstimator > estimator
M-Estimator function
 
double operator()(const JPoint4D &vx, const JHit_t &hit) const
 
JRegressor(double sigma)
Constructor.
 
Template definition of a data regressor of given model.
 
Auxiliary class to set-up Hit.