Skip to content
Snippets Groups Projects
Commit c8403f5a authored by myliu@ihep.ac.cn's avatar myliu@ihep.ac.cn
Browse files

Improve the phiFormXY functionand the calculation of DCA

parent 29c06594
No related branches found
No related tags found
No related merge requests found
......@@ -44,7 +44,7 @@ public:
virtual Vector3D position(const CellID& aCellID) const;
virtual CellID cellID(const Vector3D& aLocalPosition, const Vector3D& aGlobalPosition,
const VolumeID& aVolumeID) const;
virtual double distanceTrackWire(const CellID& cID, const TVector3& hit_start, const TVector3& hit_end) const;
virtual double distanceTrackWire(const CellID& cID, const TVector3& hit_start/*, const TVector3& hit_end*/) const;
double phi(const CellID& cID) const;
inline double cell_Size() const { return m_cellSize; }
......@@ -55,7 +55,9 @@ public:
// Setters
inline double phiFromXY(const Vector3D& aposition) const {
return std::atan2(aposition.Y, aposition.X) ;
double beta = std::atan2(aposition.Y, aposition.X) ;
if( beta < 0 ) { beta = beta + 2 * M_PI; }
return beta;
}
inline void setGeomParams(int layer, double layerphi, double R, double eps, double offset) {
......
......@@ -79,8 +79,8 @@ double GridDriftChamber::phi(const CellID& cID) const {
return (_currentLayerphi * 0.5) + binToPosition(phiValue, _currentLayerphi, m_offsetPhi);
}
double GridDriftChamber::distanceTrackWire(const CellID& cID, const TVector3& hit_start,
const TVector3& hit_end) const {
double GridDriftChamber::distanceTrackWire(const CellID& cID, const TVector3& hit_start/*,
const TVector3& hit_end*/) const {
auto layerIndex = _decoder->get(cID, "layer");
updateParams(layerIndex);
......@@ -88,10 +88,10 @@ double GridDriftChamber::distanceTrackWire(const CellID& cID, const TVector3& hi
double phi_start = phi(cID);
double phi_end = phi_start + returnAlpha();
TVector3 Wstart = returnWirePosition(phi_start, 1);
TVector3 Wend = returnWirePosition(phi_end, -1);
TVector3 Wstart = 10*returnWirePosition(phi_start, -1); // Convert from cm to mm
TVector3 Wend = 10*returnWirePosition(phi_end, 1); // Convert from cm to mm
TVector3 a = hit_end - hit_start;
// TVector3 a = hit_end - hit_start;
TVector3 b = Wend - Wstart;
TVector3 c = Wstart - hit_start;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment