13#include "TrkReco/TCircleFitter.h"
14#include "TrkReco/TCircle.h"
15#include "TrkReco/TMLink.h"
16#include "TrkReco/TTrackBase.h"
19#include "TrackUtil/Lpav.h"
28#ifdef TRKRECO_DEBUG_DETAIL
29 std::cout <<
" TCircleFitter::fit ..." << std::endl;
62 unsigned n =
t.links().length();
64 for (
unsigned i = 0; i <
n; i++ )
100 _center.setX(
v( 1 ) );
101 _center.setY(
v( 2 ) );
102 _radius = circle.
radius();
106 for (
unsigned i = 0; i <
n; i++ )
109 if ( l == 0 )
continue;
112 if ( h == 0 )
continue;
114 float q = ( _center.cross( h->
xyPosition() ) ).z();
115 if (
q > 0. ) qSum += 1;
118 if ( qSum >= 0 ) _charge = +1.;
122 if (
t.objectType() ==
Circle ) ( (
TCircle&)
t ).property( _charge, _radius, _center );
HepGeom::Point3D< double > HepPoint3D
#define WireHitPatternLeft
#define WireHitPatternRight
#define TFitAlreadyFitted
****INTEGER imax DOUBLE PRECISION m_pi *DOUBLE PRECISION m_amfin DOUBLE PRECISION m_Chfin DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_sinw2 DOUBLE PRECISION m_GFermi DOUBLE PRECISION m_MfinMin DOUBLE PRECISION m_ta2 INTEGER m_out INTEGER m_KeyFSR INTEGER m_KeyQCD *COMMON c_Semalib $ !copy of input $ !CMS energy $ !beam mass $ !final mass $ !beam charge $ !final charge $ !smallest final mass $ !Z mass $ !Z width $ !EW mixing angle $ !Gmu Fermi $ alphaQED at q
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
void add_point(double x, double y, double w=1)
TCircleFitter(const std::string &name)
Constructor.
virtual int fit(TTrackBase &) const
virtual ~TCircleFitter()
Destructor.
A class to represent a circle in tracking.
HepPoint3D position(unsigned) const
returns left position. z is always zero.
unsigned state(void) const
returns state.
const HepPoint3D & xyPosition(void) const
returns drift time
const std::string & name(void) const
returns name.
TMFitter(const std::string &name)
Constructor.
void fitDone(TTrackBase &) const
sets the fitted flag. (Bad implementation)
A class to relate TMDCWireHit and TTrack objects.
const TMDCWireHit * hit(void) const
returns a pointer to a hit.
A virtual class for a track class in tracking.