CMS 3D CMS Logo

TrackerBounds.cc
Go to the documentation of this file.
2 
7 
8 //Ported from ORCA
9 
10 static const float epsilon = 0.001; // should not matter at all
11 
13 {
14  Surface::RotationType rot; // unit rotation matrix
18  );
19  return new Cylinder(Cylinder::computeRadius(*cb), Surface::PositionType(0,0,0), rot, cb);
20 }
21 
22 static Disk* initNegative()
23 {
24  Surface::RotationType rot; // unit rotation matrix
25 
26  return new Disk( Surface::PositionType( 0, 0, -TrackerBounds::halfLength()), rot,
28 }
29 
30 static Disk* initPositive()
31 {
32  Surface::RotationType rot; // unit rotation matrix
33 
34 
35  return new Disk( Surface::PositionType( 0, 0, TrackerBounds::halfLength()), rot,
37 }
38 
40  return (point.perp() <= TrackerBounds::radius() &&
41  fabs(point.z()) <= TrackerBounds::halfLength());
42 }
43 
44 
45 // static initializers
46 
50 
51 
52 
static const float epsilon
static bool isInside(const GlobalPoint &)
T perp() const
Definition: PV3DBase.h:72
static Disk * initPositive()
static float halfLength()
Definition: TrackerBounds.h:34
static const ReferenceCountingPointer< Cylinder > theCylinder
Definition: TrackerBounds.h:39
static const ReferenceCountingPointer< Disk > thePositiveDisk
Definition: TrackerBounds.h:41
Definition: BoundDisk.h:19
T z() const
Definition: PV3DBase.h:64
static float radius()
Definition: TrackerBounds.h:33
static Disk * initNegative()
static const ReferenceCountingPointer< Disk > theNegativeDisk
Definition: TrackerBounds.h:40
static float computeRadius(Bounds const &bounds)
Definition: Cylinder.h:30
static Cylinder * initCylinder()
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5