CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CSCStripTopology.cc
Go to the documentation of this file.
3 
4 CSCStripTopology::CSCStripTopology(int ns, float aw, float dh, float r, float aoff, float ymid ) :
5  OffsetRadialStripTopology( ns, aw, dh, r, aoff, ymid ) {}
6 
8 
9 std::pair<float, float> CSCStripTopology::equationOfStrip( float strip ) const {
10 
11  const float fprec = 1.E-06;
12 
13  // slope of strip
14  float strangle = M_PI_2 - stripAngle( strip );
15  float ms = 0;
16  if ( fabs(strangle) > fprec ) ms = tan( strangle );
17 
18  // intercept of strip
19  float cs = - originToIntersection();
20 
21  LogTrace("CSCStripTopology|CSC") << "CSCStripTopology: strip=" << strip <<
22  ", strip angle = " << strangle <<
23  ", intercept on y axis=" << cs;
24 
25  return std::pair<float,float>(ms, cs);
26 }
27 
28 std::pair<float, float> CSCStripTopology::yLimitsOfStripPlane() const{
29  // use functions from base class
30  float ylow = yCentreOfStripPlane() - yExtentOfStripPlane()/2. ;
31  float yhigh = yCentreOfStripPlane() + yExtentOfStripPlane()/2. ;
32 
33  return std::pair<float, float>(ylow, yhigh);
34 }
35 
36 
37 // op<< is not a member
38 
39 #include <iostream>
40 
41 std::ostream& operator<<( std::ostream& os, const CSCStripTopology& st )
42 {
43  st.put( os ) << " isa " << static_cast<const OffsetRadialStripTopology&>( st );
44  return os;
45 }
virtual ~CSCStripTopology()
auto_ptr< ClusterSequence > cs
CSCStripTopology(int ns, float aw, float dh, float r, float aoff, float ymid)
#define M_PI_2
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
#define LogTrace(id)
std::pair< float, float > equationOfStrip(float strip) const
std::pair< float, float > yLimitsOfStripPlane() const
virtual std::ostream & put(std::ostream &) const =0
float stripAngle(float strip) const
tuple dh
Definition: cuy.py:353