MdcSWire Class Reference

#include <MdcSWire.h>

List of all members.

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

Protected Member Functions

void setLayerPtr (const MdcLayer *lay)

Private Attributes

MdcSagTraj _traj
HepPoint3D _east
HepPoint3D _west
const MdcLayer_lay
double _rend
double _phiend
double _twist
double _sag
int _id
int _cell

Friends

class MdcLayer


Detailed Description

Definition at line 20 of file MdcSWire.h.


Constructor & Destructor Documentation

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

Definition at line 9 of file MdcSWire.cxx.

References _east, _phiend, _rend, _twist, xEast(), and yEast().

00010 : _traj(sag,eastP,westP), _east(eastP), _west(westP), _sag(sag), _id(id), _cell(cell)
00011 {
00012   _rend = sqrt(xEast()*xEast() + yEast()*yEast());
00013   _phiend    = _east.phi();
00014   BesAngle westPphi(westP.phi());
00015   BesAngle eastPphi(eastP.phi());
00016   _twist = ( westPphi - eastPphi)* 0.5;
00017 }

MdcSWire::~MdcSWire (  )  [inline]

Definition at line 26 of file MdcSWire.h.

00026 {};


Member Function Documentation

int MdcSWire::cell ( void   )  const [inline]

Definition at line 46 of file MdcSWire.h.

References _cell.

Referenced by print().

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

double MdcSWire::dPhiz ( void   )  const [inline]

Definition at line 48 of file MdcSWire.h.

References _twist.

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

00048 { return _twist; }

double MdcSWire::dPhizDC ( double  z  )  const [inline]

Definition at line 63 of file MdcSWire.h.

References rMid(), and stereo().

Referenced by phiDC(), and print().

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

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

Definition at line 32 of file MdcSWire.h.

References _east.

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

00032 { return &_east; }

double MdcSWire::getSag ( void   )  const [inline]

Definition at line 31 of file MdcSWire.h.

References _sag.

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

00031 { return _sag; }

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

Definition at line 34 of file MdcSWire.h.

References _traj.

Referenced by MdcUtilitySvc::docaPatPar(), main(), MdcLayer::makeHitTrajInGlobalCoords(), and print().

00034 { return &_traj; }    

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

Definition at line 33 of file MdcSWire.h.

References _west.

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

00033 { return &_west; }

int MdcSWire::Id ( void   )  const [inline]

Definition at line 45 of file MdcSWire.h.

References _id.

Referenced by print().

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

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

Definition at line 44 of file MdcSWire.h.

References _lay.

00044 { return _lay; }

double MdcSWire::phi ( void   )  const [inline]

Definition at line 52 of file MdcSWire.h.

References _phiend, and _twist.

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

00052 { return _phiend + _twist; }

double MdcSWire::phiDC ( double  z  )  const [inline]

Definition at line 60 of file MdcSWire.h.

References dPhizDC(), and phi().

Referenced by MdcHit::phi(), MdcLayer::phiWireDC(), print(), xWireDC(), and yWireDC().

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

double MdcSWire::phiE ( void   )  const [inline]

Definition at line 51 of file MdcSWire.h.

References _phiend.

Referenced by MdcSegFinder::createSegs(), MdcLayer::MdcLayer(), and print().

00051 { return _phiend; }

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

Definition at line 26 of file MdcSWire.cxx.

References cell(), MdcSagTraj::curvature(), MdcSagTraj::direction(), dPhiz(), dPhizDC(), getSag(), getTraj(), Id(), phi(), phiDC(), phiE(), MdcSagTraj::position(), radiusDC(), MdcSagTraj::rawDirection(), rEnd(), rMid(), MdcSagTraj::sag(), stDip(), stereo(), xEast(), xMid(), xWest(), xWireDC(), yEast(), yMid(), yWest(), yWireDC(), zEast(), zEndDC(), zLength(), and zWest().

00027 {
00028   o<< setw(6)<<Id()<<
00029     setw(10)<<xEast()<<
00030     setw(10)<<yEast()<<
00031     setw(10)<<zEast()<<
00032     setw(10)<<xWest()<<
00033     setw(10)<<yWest()<<
00034     setw(10)<<zWest()<<
00035     setw(10)<<xMid()<<
00036     setw(10)<<yMid()<<
00037     setw(10)<<rEnd()<<
00038     setw(10)<<getSag()<<
00039     setw(10)<<cell()<<
00040     setw(10)<<zLength()<<
00041     setw(10)<<dPhiz()<<
00042     setw(10)<<zEndDC()<<
00043     setw(10)<<rMid()<<
00044     setw(10)<<phiE()<<
00045     setw(10)<<phi()<<
00046     setw(10)<<stereo()<<
00047     setw(10)<<stDip()<<
00048     setw(10)<<radiusDC(0.)<<
00049     setw(10)<<phiDC(0.)<<
00050     setw(10)<<xWireDC(0.)<<
00051     setw(10)<<yWireDC(0.)<<
00052     setw(10)<<dPhizDC(0.)<<
00053     setw(10)<<getTraj()->sag()<<//
00054     setw(10)<<getTraj()->position(0.)<<
00055     setw(10)<<getTraj()->direction(0.)<<
00056     setw(10)<<getTraj()->curvature()<<//
00057     setw(10)<<getTraj()->rawDirection()<<
00058     std::endl;
00059 }

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

Definition at line 61 of file MdcSWire.cxx.

References dPhiz(), getEastPoint(), getSag(), getWestPoint(), stereo(), xMid(), yMid(), and zLength().

00062 {
00063   o << "east " << getEastPoint()->x() << " " << getEastPoint()->y() << " "
00064     << getEastPoint()->z() <<"\n"
00065     << "west " << getWestPoint()->x() <<" " << getWestPoint()->y()
00066     << " " << getWestPoint()->z() << "\n"
00067     << "sagitta: " << getSag()
00068     << " z length: " << zLength()
00069     << " twist: " << dPhiz()
00070     << " stereo: " << stereo() <<"\n"
00071     << "x-y mid: " << xMid() << " - " << yMid() << std::endl;
00072 
00073 }

double MdcSWire::radiusDC ( double  z  )  const [inline]

Definition at line 57 of file MdcSWire.h.

References rEnd(), stDip(), and zEndDC().

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

00057                                     { return rEnd() - stDip() * (1.-  
00058         z*z/(zEndDC()*zEndDC())); } 

double MdcSWire::rEnd ( void   )  const [inline]

Definition at line 43 of file MdcSWire.h.

References _rend.

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

00043 { return _rend; }

double MdcSWire::rMid ( void   )  const [inline]

Definition at line 50 of file MdcSWire.h.

References cos(), dPhiz(), and rEnd().

Referenced by dPhizDC(), MdcHit::MdcHit(), MdcLayer::MdcLayer(), print(), stDip(), xMid(), and yMid().

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

void MdcSWire::setLayerPtr ( const MdcLayer lay  )  [inline, protected]

Definition at line 74 of file MdcSWire.h.

References _lay.

00074 { _lay =lay; }

double MdcSWire::stDip ( void   )  const [inline]

Definition at line 55 of file MdcSWire.h.

References rEnd(), and rMid().

Referenced by print(), and radiusDC().

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

double MdcSWire::stereo ( void   )  const [inline]

Definition at line 53 of file MdcSWire.h.

References dPhiz(), rEnd(), sin(), and zLength().

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

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

double MdcSWire::xEast ( void   )  const [inline]

Definition at line 35 of file MdcSWire.h.

References _east.

Referenced by MdcSWire(), and print().

00035 { return _east.x(); }

double MdcSWire::xMid ( void   )  const [inline]

Definition at line 41 of file MdcSWire.h.

References cos(), phi(), and rMid().

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

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

double MdcSWire::xWest ( void   )  const [inline]

Definition at line 38 of file MdcSWire.h.

References _west.

Referenced by print().

00038 { return _west.x(); } 

double MdcSWire::xWireDC ( double  z  )  const [inline]

Definition at line 61 of file MdcSWire.h.

References cos(), phiDC(), and radiusDC().

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

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

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

Definition at line 20 of file MdcSWire.cxx.

References vec, xWireDC(), and yWireDC().

00021 {
00022   Hep3Vector vec( xWireDC(z), yWireDC(z), z);
00023   return vec.unit();
00024 }

double MdcSWire::yEast ( void   )  const [inline]

Definition at line 36 of file MdcSWire.h.

References _east.

Referenced by MdcSWire(), and print().

00036 { return _east.y(); }

double MdcSWire::yMid ( void   )  const [inline]

Definition at line 42 of file MdcSWire.h.

References phi(), rMid(), and sin().

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

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

double MdcSWire::yWest ( void   )  const [inline]

Definition at line 39 of file MdcSWire.h.

References _west.

Referenced by print().

00039 { return _west.y(); } 

double MdcSWire::yWireDC ( double  z  )  const [inline]

Definition at line 62 of file MdcSWire.h.

References phiDC(), radiusDC(), and sin().

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

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

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

Definition at line 68 of file MdcSWire.h.

References _traj, and MdcSagTraj::rawDirection().

Referenced by MdcSegInfoSterO::zPosition(), and HoughValidUpdate::zPosition().

00068 { return _traj.rawDirection(); }

double MdcSWire::zEast ( void   )  const [inline]

Definition at line 37 of file MdcSWire.h.

References _east.

Referenced by print().

00037 { return _east.z(); }

double MdcSWire::zEndDC ( void   )  const [inline]

Definition at line 49 of file MdcSWire.h.

References zLength().

Referenced by MdcUtilitySvc::docaPatPar(), MdcLayer::MdcLayer(), print(), and radiusDC().

00049 { return 0.5*zLength(); }

double MdcSWire::zLength ( void   )  const [inline]

Definition at line 47 of file MdcSWire.h.

References getEastPoint(), and getWestPoint().

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

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

double MdcSWire::zWest ( void   )  const [inline]

Definition at line 40 of file MdcSWire.h.

References _west.

Referenced by print().

00040 { return _west.z(); }    


Friends And Related Function Documentation

friend class MdcLayer [friend]

Definition at line 78 of file MdcSWire.h.


Member Data Documentation

int MdcSWire::_cell [private]

Definition at line 88 of file MdcSWire.h.

Referenced by cell().

HepPoint3D MdcSWire::_east [private]

Definition at line 80 of file MdcSWire.h.

Referenced by getEastPoint(), MdcSWire(), xEast(), yEast(), and zEast().

int MdcSWire::_id [private]

Definition at line 87 of file MdcSWire.h.

Referenced by Id().

const MdcLayer* MdcSWire::_lay [private]

Definition at line 82 of file MdcSWire.h.

Referenced by layer(), and setLayerPtr().

double MdcSWire::_phiend [private]

Definition at line 84 of file MdcSWire.h.

Referenced by MdcSWire(), phi(), and phiE().

double MdcSWire::_rend [private]

Definition at line 83 of file MdcSWire.h.

Referenced by MdcSWire(), and rEnd().

double MdcSWire::_sag [private]

Definition at line 86 of file MdcSWire.h.

Referenced by getSag().

MdcSagTraj MdcSWire::_traj [private]

Definition at line 79 of file MdcSWire.h.

Referenced by getTraj(), and zAxis().

double MdcSWire::_twist [private]

Definition at line 85 of file MdcSWire.h.

Referenced by dPhiz(), MdcSWire(), and phi().

HepPoint3D MdcSWire::_west [private]

Definition at line 81 of file MdcSWire.h.

Referenced by getWestPoint(), xWest(), yWest(), and zWest().


Generated on Tue Nov 29 23:20:17 2016 for BOSS_7.0.2 by  doxygen 1.4.7