BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcSWire Class Reference

#include <MdcSWire.h>

Public Member Functions

 MdcSWire (HepPoint3D &eastP, HepPoint3D &westP, double sag=0, int id=0, int cell=0)
 
 ~MdcSWire ()
 
double getSag (void) const
 
const HepPoint3DgetEastPoint (void) const
 
const HepPoint3DgetWestPoint (void) const
 
const MdcSagTrajgetTraj (void) const
 
double xEast (void) const
 
double yEast (void) const
 
double zEast (void) const
 
double xWest (void) const
 
double yWest (void) const
 
double zWest (void) const
 
double xMid (void) const
 
double yMid (void) const
 
double rEnd (void) const
 
const MdcLayerlayer (void) const
 
int Id (void) const
 
int cell (void) const
 
double zLength (void) const
 
double dPhiz (void) const
 
double zEndDC (void) const
 
double rMid (void) const
 
double phiE (void) const
 
double phi (void) const
 
double stereo (void) const
 
double stDip (void) const
 
double radiusDC (double z) const
 
double phiDC (double z) const
 
double xWireDC (double z) const
 
double yWireDC (double z) const
 
double dPhizDC (double z) const
 
Hep3Vector yAxis (double z=0.)
 
const Hep3Vector & zAxis (void) const
 
void print (std::ostream &o) const
 
void printInfo (std::ostream &o) const
 
 MdcSWire (HepPoint3D &eastP, HepPoint3D &westP, double sag=0, int id=0, int cell=0)
 
 ~MdcSWire ()
 
double getSag (void) const
 
const HepPoint3DgetEastPoint (void) const
 
const HepPoint3DgetWestPoint (void) const
 
const MdcSagTrajgetTraj (void) const
 
double xEast (void) const
 
double yEast (void) const
 
double zEast (void) const
 
double xWest (void) const
 
double yWest (void) const
 
double zWest (void) const
 
double xMid (void) const
 
double yMid (void) const
 
double rEnd (void) const
 
const MdcLayerlayer (void) const
 
int Id (void) const
 
int cell (void) const
 
double zLength (void) const
 
double dPhiz (void) const
 
double zEndDC (void) const
 
double rMid (void) const
 
double phiE (void) const
 
double phi (void) const
 
double stereo (void) const
 
double stDip (void) const
 
double radiusDC (double z) const
 
double phiDC (double z) const
 
double xWireDC (double z) const
 
double yWireDC (double z) const
 
double dPhizDC (double z) const
 
Hep3Vector yAxis (double z=0.)
 
const Hep3Vector & zAxis (void) const
 
void print (std::ostream &o) const
 
void printInfo (std::ostream &o) const
 

Protected Member Functions

void setLayerPtr (const MdcLayer *lay)
 
void setLayerPtr (const MdcLayer *lay)
 

Friends

class MdcLayer
 

Detailed Description

Constructor & Destructor Documentation

◆ MdcSWire() [1/2]

MdcSWire::MdcSWire ( HepPoint3D eastP,
HepPoint3D westP,
double  sag = 0,
int  id = 0,
int  cell = 0 
)

Definition at line 9 of file MdcSWire.cxx.

10: _traj(sag,eastP,westP), _east(eastP), _west(westP), _sag(sag), _id(id), _cell(cell)
11{
12 _rend = sqrt(xEast()*xEast() + yEast()*yEast());
13 _phiend = _east.phi();
14 BesAngle westPphi(westP.phi());
15 BesAngle eastPphi(eastP.phi());
16 _twist = ( westPphi - eastPphi)* 0.5;
17}

◆ ~MdcSWire() [1/2]

MdcSWire::~MdcSWire ( )
inline

Definition at line 26 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

26{};

◆ MdcSWire() [2/2]

MdcSWire::MdcSWire ( HepPoint3D eastP,
HepPoint3D westP,
double  sag = 0,
int  id = 0,
int  cell = 0 
)

◆ ~MdcSWire() [2/2]

MdcSWire::~MdcSWire ( )
inline

Member Function Documentation

◆ cell() [1/2]

int MdcSWire::cell ( void  ) const
inline

Definition at line 46 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

46{ return _cell; } //local cell number in layer

Referenced by print().

◆ cell() [2/2]

int MdcSWire::cell ( void  ) const
inline

Definition at line 46 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

46{ return _cell; } //local cell number in layer

◆ dPhiz() [1/2]

double MdcSWire::dPhiz ( void  ) const
inline

Definition at line 48 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

48{ return _twist; }

Referenced by MdcLayer::MdcLayer(), print(), printInfo(), rMid(), and stereo().

◆ dPhiz() [2/2]

double MdcSWire::dPhiz ( void  ) const
inline

Definition at line 48 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

48{ return _twist; }

◆ dPhizDC() [1/2]

double MdcSWire::dPhizDC ( double  z) const
inline

Definition at line 63 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

63{ return atan2( z*stereo(),rMid() ); }

Referenced by phiDC(), and print().

◆ dPhizDC() [2/2]

double MdcSWire::dPhizDC ( double  z) const
inline

Definition at line 63 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

63{ return atan2( z*stereo(),rMid() ); }

◆ getEastPoint() [1/2]

const HepPoint3D * MdcSWire::getEastPoint ( void  ) const
inline

◆ getEastPoint() [2/2]

const HepPoint3D * MdcSWire::getEastPoint ( void  ) const
inline

Definition at line 32 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

32{ return &_east; }

◆ getSag() [1/2]

double MdcSWire::getSag ( void  ) const
inline

Definition at line 31 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

31{ return _sag; }

Referenced by print(), printInfo(), and MdcLayer::sag().

◆ getSag() [2/2]

double MdcSWire::getSag ( void  ) const
inline

Definition at line 31 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

31{ return _sag; }

◆ getTraj() [1/2]

const MdcSagTraj * MdcSWire::getTraj ( void  ) const
inline

◆ getTraj() [2/2]

const MdcSagTraj * MdcSWire::getTraj ( void  ) const
inline

Definition at line 34 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

34{ return &_traj; }

◆ getWestPoint() [1/2]

const HepPoint3D * MdcSWire::getWestPoint ( void  ) const
inline

Definition at line 33 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

33{ return &_west; }

Referenced by printInfo(), zLength(), and MdcSegInfoSterO::zPosition().

◆ getWestPoint() [2/2]

const HepPoint3D * MdcSWire::getWestPoint ( void  ) const
inline

Definition at line 33 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

33{ return &_west; }

◆ Id() [1/2]

int MdcSWire::Id ( void  ) const
inline

Definition at line 45 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

45{ return _id; }//wire number in Mdc

Referenced by print().

◆ Id() [2/2]

int MdcSWire::Id ( void  ) const
inline

Definition at line 45 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

45{ return _id; }//wire number in Mdc

◆ layer() [1/2]

const MdcLayer * MdcSWire::layer ( void  ) const
inline

Definition at line 44 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

44{ return _lay; }

◆ layer() [2/2]

const MdcLayer * MdcSWire::layer ( void  ) const
inline

Definition at line 44 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

44{ return _lay; }

◆ phi() [1/2]

double MdcSWire::phi ( void  ) const
inline

Definition at line 52 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

52{ return _phiend + _twist; }

Referenced by MdcHit::MdcHit(), phiDC(), MdcLayer::phiWire(), print(), xMid(), and yMid().

◆ phi() [2/2]

double MdcSWire::phi ( void  ) const
inline

Definition at line 52 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

52{ return _phiend + _twist; }

◆ phiDC() [1/2]

double MdcSWire::phiDC ( double  z) const
inline

◆ phiDC() [2/2]

double MdcSWire::phiDC ( double  z) const
inline

Definition at line 60 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

60{ return phi() - dPhizDC(z); }

◆ phiE() [1/2]

double MdcSWire::phiE ( void  ) const
inline

◆ phiE() [2/2]

double MdcSWire::phiE ( void  ) const
inline

Definition at line 51 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

51{ return _phiend; }

◆ print() [1/2]

void MdcSWire::print ( std::ostream &  o) const

Definition at line 26 of file MdcSWire.cxx.

27{
28 o<< setw(6)<<Id()<<
29 setw(10)<<xEast()<<
30 setw(10)<<yEast()<<
31 setw(10)<<zEast()<<
32 setw(10)<<xWest()<<
33 setw(10)<<yWest()<<
34 setw(10)<<zWest()<<
35 setw(10)<<xMid()<<
36 setw(10)<<yMid()<<
37 setw(10)<<rEnd()<<
38 setw(10)<<getSag()<<
39 setw(10)<<cell()<<
40 setw(10)<<zLength()<<
41 setw(10)<<dPhiz()<<
42 setw(10)<<zEndDC()<<
43 setw(10)<<rMid()<<
44 setw(10)<<phiE()<<
45 setw(10)<<phi()<<
46 setw(10)<<stereo()<<
47 setw(10)<<stDip()<<
48 setw(10)<<radiusDC(0.)<<
49 setw(10)<<phiDC(0.)<<
50 setw(10)<<xWireDC(0.)<<
51 setw(10)<<yWireDC(0.)<<
52 setw(10)<<dPhizDC(0.)<<
53 setw(10)<<getTraj()->sag()<<//
54 setw(10)<<getTraj()->position(0.)<<
55 setw(10)<<getTraj()->direction(0.)<<
56 setw(10)<<getTraj()->curvature()<<//
57 setw(10)<<getTraj()->rawDirection()<<
58 std::endl;
59}
const MdcSagTraj * getTraj(void) const
const Hep3Vector & rawDirection(void) const
HepPoint3D position(double) const
Definition: MdcSagTraj.cxx:121
double curvature(double f=0.) const
Definition: MdcSagTraj.cxx:190
Hep3Vector direction(double) const
Definition: MdcSagTraj.cxx:132

◆ print() [2/2]

void MdcSWire::print ( std::ostream &  o) const

◆ printInfo() [1/2]

void MdcSWire::printInfo ( std::ostream &  o) const

Definition at line 61 of file MdcSWire.cxx.

62{
63 o << "east " << getEastPoint()->x() << " " << getEastPoint()->y() << " "
64 << getEastPoint()->z() <<"\n"
65 << "west " << getWestPoint()->x() <<" " << getWestPoint()->y()
66 << " " << getWestPoint()->z() << "\n"
67 << "sagitta: " << getSag()
68 << " z length: " << zLength()
69 << " twist: " << dPhiz()
70 << " stereo: " << stereo() <<"\n"
71 << "x-y mid: " << xMid() << " - " << yMid() << std::endl;
72
73}
const HepPoint3D * getWestPoint(void) const
const HepPoint3D * getEastPoint(void) const

◆ printInfo() [2/2]

void MdcSWire::printInfo ( std::ostream &  o) const

◆ radiusDC() [1/2]

double MdcSWire::radiusDC ( double  z) const
inline

Definition at line 57 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

57 { return rEnd() - stDip() * (1.-
58 z*z/(zEndDC()*zEndDC())); }

Referenced by print(), MdcLayer::radiusDC(), xWireDC(), and yWireDC().

◆ radiusDC() [2/2]

double MdcSWire::radiusDC ( double  z) const
inline

Definition at line 57 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

57 { return rEnd() - stDip() * (1.-
58 z*z/(zEndDC()*zEndDC())); }

◆ rEnd() [1/2]

double MdcSWire::rEnd ( void  ) const
inline

Definition at line 43 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

43{ return _rend; }

Referenced by MdcLayer::MdcLayer(), print(), radiusDC(), rMid(), stDip(), and stereo().

◆ rEnd() [2/2]

double MdcSWire::rEnd ( void  ) const
inline

Definition at line 43 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

43{ return _rend; }

◆ rMid() [1/2]

double MdcSWire::rMid ( void  ) const
inline

◆ rMid() [2/2]

double MdcSWire::rMid ( void  ) const
inline

Definition at line 50 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

50{ return rEnd() * cos( dPhiz() ); }

◆ setLayerPtr() [1/2]

void MdcSWire::setLayerPtr ( const MdcLayer lay)
inlineprotected

Definition at line 74 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

74{ _lay =lay; }

Referenced by MdcLayer::MdcLayer().

◆ setLayerPtr() [2/2]

void MdcSWire::setLayerPtr ( const MdcLayer lay)
inlineprotected

Definition at line 74 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

74{ _lay =lay; }

◆ stDip() [1/2]

double MdcSWire::stDip ( void  ) const
inline

Definition at line 55 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

55{ return rEnd() - rMid(); }

Referenced by print(), and radiusDC().

◆ stDip() [2/2]

double MdcSWire::stDip ( void  ) const
inline

Definition at line 55 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

55{ return rEnd() - rMid(); }

◆ stereo() [1/2]

double MdcSWire::stereo ( void  ) const
inline

Definition at line 53 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

54 { return 2.*rEnd()*sin(dPhiz())/zLength(); }
double sin(const BesAngle a)

Referenced by dPhizDC(), MdcLayer::MdcLayer(), print(), and printInfo().

◆ stereo() [2/2]

double MdcSWire::stereo ( void  ) const
inline

Definition at line 53 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

54 { return 2.*rEnd()*sin(dPhiz())/zLength(); }

◆ xEast() [1/2]

double MdcSWire::xEast ( void  ) const
inline

Definition at line 35 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

35{ return _east.x(); }

Referenced by MdcSWire(), and print().

◆ xEast() [2/2]

double MdcSWire::xEast ( void  ) const
inline

Definition at line 35 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

35{ return _east.x(); }

◆ xMid() [1/2]

double MdcSWire::xMid ( void  ) const
inline

Definition at line 41 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

41{ return rMid() * cos(phi()); }

Referenced by print(), printInfo(), and MdcLayer::xWire().

◆ xMid() [2/2]

double MdcSWire::xMid ( void  ) const
inline

Definition at line 41 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

41{ return rMid() * cos(phi()); }

◆ xWest() [1/2]

double MdcSWire::xWest ( void  ) const
inline

Definition at line 38 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

38{ return _west.x(); }

Referenced by print().

◆ xWest() [2/2]

double MdcSWire::xWest ( void  ) const
inline

Definition at line 38 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

38{ return _west.x(); }

◆ xWireDC() [1/2]

double MdcSWire::xWireDC ( double  z) const
inline

Definition at line 61 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

61{ return radiusDC(z)*cos(phiDC(z)); }

Referenced by MdcUtilitySvc::docaPatPar(), print(), MdcHit::x(), and yAxis().

◆ xWireDC() [2/2]

double MdcSWire::xWireDC ( double  z) const
inline

◆ yAxis() [1/2]

Hep3Vector MdcSWire::yAxis ( double  z = 0.)

Definition at line 20 of file MdcSWire.cxx.

21{
22 Hep3Vector vec( xWireDC(z), yWireDC(z), z);
23 return vec.unit();
24}

◆ yAxis() [2/2]

Hep3Vector MdcSWire::yAxis ( double  z = 0.)

◆ yEast() [1/2]

double MdcSWire::yEast ( void  ) const
inline

Definition at line 36 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

36{ return _east.y(); }

Referenced by MdcSWire(), and print().

◆ yEast() [2/2]

double MdcSWire::yEast ( void  ) const
inline

Definition at line 36 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

36{ return _east.y(); }

◆ yMid() [1/2]

double MdcSWire::yMid ( void  ) const
inline

Definition at line 42 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

42{ return rMid() * sin(phi()); }

Referenced by print(), printInfo(), and MdcLayer::yWire().

◆ yMid() [2/2]

double MdcSWire::yMid ( void  ) const
inline

Definition at line 42 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

42{ return rMid() * sin(phi()); }

◆ yWest() [1/2]

double MdcSWire::yWest ( void  ) const
inline

Definition at line 39 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

39{ return _west.y(); }

Referenced by print().

◆ yWest() [2/2]

double MdcSWire::yWest ( void  ) const
inline

Definition at line 39 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

39{ return _west.y(); }

◆ yWireDC() [1/2]

double MdcSWire::yWireDC ( double  z) const
inline

Definition at line 62 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

62{ return radiusDC(z)*sin(phiDC(z)); }

Referenced by MdcUtilitySvc::docaPatPar(), print(), MdcHit::y(), and yAxis().

◆ yWireDC() [2/2]

double MdcSWire::yWireDC ( double  z) const
inline

◆ zAxis() [1/2]

const Hep3Vector & MdcSWire::zAxis ( void  ) const
inline

Definition at line 68 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

68{ return _traj.rawDirection(); }

Referenced by MdcSegInfoSterO::zPosition().

◆ zAxis() [2/2]

const Hep3Vector & MdcSWire::zAxis ( void  ) const
inline

◆ zEast() [1/2]

double MdcSWire::zEast ( void  ) const
inline

Definition at line 37 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

37{ return _east.z(); }

Referenced by print().

◆ zEast() [2/2]

double MdcSWire::zEast ( void  ) const
inline

Definition at line 37 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

37{ return _east.z(); }

◆ zEndDC() [1/2]

double MdcSWire::zEndDC ( void  ) const
inline

◆ zEndDC() [2/2]

double MdcSWire::zEndDC ( void  ) const
inline

Definition at line 49 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

49{ return 0.5*zLength(); }

◆ zLength() [1/2]

double MdcSWire::zLength ( void  ) const
inline

Definition at line 47 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

47{ return getEastPoint()->z()- getWestPoint()->z(); }

Referenced by print(), printInfo(), stereo(), zEndDC(), and MdcLayer::zLength().

◆ zLength() [2/2]

double MdcSWire::zLength ( void  ) const
inline

◆ zWest() [1/2]

double MdcSWire::zWest ( void  ) const
inline

Definition at line 40 of file InstallArea/include/MdcGeom/MdcGeom/MdcSWire.h.

40{ return _west.z(); }

Referenced by print().

◆ zWest() [2/2]

double MdcSWire::zWest ( void  ) const
inline

Definition at line 40 of file Reconstruction/MdcPatRec/MdcGeom/MdcGeom-00-01-17/MdcGeom/MdcSWire.h.

40{ return _west.z(); }

Friends And Related Function Documentation

◆ MdcLayer

MdcLayer
friend

The documentation for this class was generated from the following files: