//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Implementation of class TpcConfMapFit // see TpcConfMapFit.hh for details // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // // //----------------------------------------------------------- // Panda Headers ---------------------- // This Class' Header ------------------ #include "TpcConfMapFit.h" // C/C++ Headers ---------------------- // Collaborating Class Headers -------- // Class Member definitions ----------- TpcConfMapFit::TpcConfMapFit() : AbsTrackRep(2),_isRotated(false) { cov[0][0]=10; cov[1][1]=10; } AbsTrackRep* TpcConfMapFit::clone() { return new TpcConfMapFit(*this); } AbsTrackRep* TpcConfMapFit::prototype() { return new TpcConfMapFit(); } void TpcConfMapFit::predict(const DetPlane& plane, TMatrixT& statePred, TMatrixT& covPred, TMatrixT& jacobian) { statePred=state; covPred=cov; } void TpcConfMapFit::extrapolate(const DetPlane& plane, TMatrixT& statePred) { statePred=state; } void TpcConfMapFit::extrapolate(const DetPlane& plane, TMatrixT& statePred, TMatrixT& covPred, TMatrixT& jacobian) { statePred=state; covPred=cov; } TVector3 TpcConfMapFit::getPos(const DetPlane& pl) { throw; } TVector3 TpcConfMapFit::getMom(const DetPlane& pl) { throw; } void TpcConfMapFit::setReferencePlane(const DetPlane& pl) { //_refPlane=pl; } double TpcConfMapFit::getR2() { // (a,b) is center of circle in real space // The following formula is only valid for (0,0) element of track double b; if(state[1][0]!=0){ b=0.5/state[1][0]; } else b=1E4; double a=-state[0][0]*b; return a*a+b*b; } double TpcConfMapFit::getR() { return sqrt(getR2()); }