CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackerBounds.cc
Go to the documentation of this file.
2 
7 
8 //Ported from ORCA
9 // $Date: 2007/03/07 16:28:42 $
10 // $Revision: 1.3 $
11 
13 {
14  const float epsilon = 0.001; // should not matter at all
15 
16  Surface::RotationType rot; // unit rotation matrix
17 
19  SimpleCylinderBounds( radius()-epsilon,
20  radius()+epsilon,
21  -halfLength(),
22  halfLength()));
24  new BoundDisk( Surface::PositionType( 0, 0, -halfLength()), rot,
25  SimpleDiskBounds( 0, radius(), -epsilon, epsilon));
26 
28  new BoundDisk( Surface::PositionType( 0, 0, halfLength()), rot,
29  SimpleDiskBounds( 0, radius(), -epsilon, epsilon));
30 
31 
32  theInit = true;
33 }
34 
36  return (point.perp() <= radius() &&
37  fabs(point.z()) <= halfLength());
38 }
39 
40 
41 // static initializers
42 
46 
47 bool TrackerBounds::theInit = false;
48 
49 
static ReferenceCountingPointer< BoundDisk > theNegativeDisk
Definition: TrackerBounds.h:42
static bool isInside(const GlobalPoint &)
T perp() const
Definition: PV3DBase.h:71
static ReferenceCountingPointer< BoundDisk > thePositiveDisk
Definition: TrackerBounds.h:43
static float halfLength()
Definition: TrackerBounds.h:36
static void initialize()
static ReferenceCountingPointer< BoundCylinder > theCylinder
Definition: TrackerBounds.h:41
T z() const
Definition: PV3DBase.h:63
static bool theInit
Definition: TrackerBounds.h:44
static float radius()
Definition: TrackerBounds.h:35
const double epsilon
*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