GEAR  1.9.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Pages
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
gear::ZPlanarParametersImpl Class Reference

Geometry properties of a planar detector (parallel to z-axis) needed for reconstruction code. More...

#include <ZPlanarParametersImpl.h>

Inheritance diagram for gear::ZPlanarParametersImpl:
gear::GearParametersImpl gear::ZPlanarParameters gear::GearParameters gear::GearParameters

Public Member Functions

 ZPlanarParametersImpl (int type, double shellInnerRadius, double shellOuterRadius, double shellHalfLength, double shellGap, double shellRadLength)
 C'tor. More...
 
virtual void addLayer (int nLadders, double phi0, double ladderDistance, double ladderOffset, double ladderThickness, double ladderLength, double ladderWidth, double ladderRadLength, double sensitiveDistance, double sensitiveOffset, double sensitiveThickness, double sensitiveLength, double sensitiveWidth, double sensitiveRadLength)
 adding a Layer to the vertex one layer consiste of a number of ladders and sensitive areas (nLadders) that are each equidistant to IP. More...
 
virtual const ZPlanarLayerLayoutgetZPlanarLayerLayout () const
 Returns the layer layout in the Vertex.
 
virtual int getType () const
 The type of Vertex detector: ZPlanarParametersImpl.CCD, ZPlanarParametersImpl.CMOS or ZPlanarParametersImpl.HYBRID.
 
virtual double getShellHalfLength () const
 The half length (z) of the support shell in mm.
 
virtual double getShellGap () const
 The gap length (z) of the support shell in mm.
 
virtual double getShellInnerRadius () const
 The inner radius of the support shell in mm.
 
virtual double getShellOuterRadius () const
 The outer radius of the support shell in mm.
 
virtual double getShellRadLength () const
 The radiation length in the support shell.
 
virtual bool isPointInLadder (Vector3D p) const
 returns whether a point is inside a ladder
 
virtual bool isPointInSensitive (Vector3D p, SensorID *sensorID=0) const
 returns wheter a point is inside a sensitive volume
 
virtual Vector3D distanceToNearestLadder (Vector3D p) const
 returns vector from given point p to nearest ladder
 
virtual Vector3D distanceToNearestSensitive (Vector3D p) const
 returns vector from given point p to nearest sensitive volume
 
virtual Vector3D intersectionLadder (Vector3D p, Vector3D v) const
 returns the first point where a given strainght line (parameters point p and direction v) crosses a ladder
 
virtual Vector3D intersectionSensitive (Vector3D p, Vector3D v) const
 returns the first point where a given strainght line (parameters point p and direction v) crosses a sensitive volume
 
- Public Member Functions inherited from gear::GearParametersImpl
virtual ~GearParametersImpl ()
 Destructor.
 
virtual int getIntVal (const std::string &key) const
 Integer value for key. More...
 
virtual double getDoubleVal (const std::string &key) const
 Double value for key. More...
 
virtual const std::string & getStringVal (const std::string &key) const
 String value for key. More...
 
virtual const std::vector< int > & getIntVals (const std::string &key) const
 Integer values for key. More...
 
virtual const std::vector
< double > & 
getDoubleVals (const std::string &key) const
 Double values for key. More...
 
virtual const std::vector
< std::string > & 
getStringVals (const std::string &key) const
 String values for key. More...
 
virtual void setIntVal (const std::string &key, int val)
 Set Integer value for key.
 
virtual void setDoubleVal (const std::string &key, double val)
 Double value for key.
 
virtual void setStringVal (const std::string &key, const std::string &val)
 String value for key.
 
virtual void setIntVals (const std::string &key, const std::vector< int > &vals)
 Integer values for key.
 
virtual void setDoubleVals (const std::string &key, const std::vector< double > &vals)
 Double values for key.
 
virtual void setStringVals (const std::string &key, const std::vector< std::string > &vals)
 String values for key.
 
virtual const std::vector
< std::string > & 
getIntKeys () const
 All keys of int variables. More...
 
virtual const std::vector
< std::string > & 
getDoubleKeys () const
 All keys of double variables. More...
 
virtual const std::vector
< std::string > & 
getStringKeys () const
 All keys of string variables. More...
 
virtual const std::vector
< std::string > & 
getIntVecKeys () const
 All keys of IntVec variables. More...
 
virtual const std::vector
< std::string > & 
getDoubleVecKeys () const
 All keys of DoubleVec variables. More...
 
virtual const std::vector
< std::string > & 
getStringVecKeys () const
 All keys of StringVec variables. More...
 
- Public Member Functions inherited from gear::GearParameters
virtual ~GearParameters ()
 Destructor.
 
- Public Member Functions inherited from gear::ZPlanarParameters
virtual ~ZPlanarParameters ()
 Destructor.
 
const ZPlanarLayerLayoutgetVXDLayerLayout () const
 fix for backward compatibility
 
virtual int getVXDType () const
 For backward compatibility: The type of detector: ZPlanarParameters.CCD, ZPlanarParameters.CMOS or ZPlanarParameters.HYBRID.
 

Static Public Attributes

static const int CCD = 1
 
static const int CMOS = 2
 
static const int HYBRID = 3
 
- Static Public Attributes inherited from gear::ZPlanarParameters
static const int CCD = 1
 
static const int CMOS = 2
 
static const int HYBRID = 3
 

Protected Attributes

ZPlanarLayerLayoutImpl _layer {}
 
int _type {}
 
double _shellInnerRadius {}
 
double _shellOuterRadius {}
 
double _shellHalfLength {}
 
double _shellGap {}
 
double _shellRadLength {}
 
- Protected Attributes inherited from gear::GearParametersImpl
std::map< std::string, int > _intMap {}
 
std::map< std::string, double > _doubleMap {}
 
std::map< std::string,
std::string > 
_stringMap {}
 
std::map< std::string, IntVec > _intVecMap {}
 
std::map< std::string, DoubleVec > _doubleVecMap {}
 
std::map< std::string, StringVec > _stringVecMap {}
 
StringVec _intKeys {}
 
StringVec _doubleKeys {}
 
StringVec _stringKeys {}
 
StringVec _intVecKeys {}
 
StringVec _doubleVecKeys {}
 
StringVec _stringVecKeys {}
 

Additional Inherited Members

- Public Types inherited from gear::GearParametersImpl
typedef std::map< std::string,
int > 
IntMap
 
typedef std::map< std::string,
double > 
DoubleMap
 
typedef std::map< std::string,
std::string > 
StringMap
 
typedef std::map< std::string,
IntVec > 
IntVecMap
 
typedef std::map< std::string,
DoubleVec > 
DoubleVecMap
 
typedef std::map< std::string,
StringVec > 
StringVecMap
 

Detailed Description

Geometry properties of a planar detector (parallel to z-axis) needed for reconstruction code.


The detector is assumed to consist of a number of layers. Each layer consists of a number of rectangular ladders that are uniformly distributed in a circle around the IP.
The sensitive volumes can be placed relative to the (insensitive) ladders.

See Also
addLayer .

The shell is described by outer and inner radius and it's half length in z.

The gap is assumed to be symetrical around z==0 and goes through all layers and ladders.

Author
R. Lippe, DESY
Version
$Id:

Definition at line 26 of file ZPlanarParametersImpl.h.

Constructor & Destructor Documentation

gear::ZPlanarParametersImpl::ZPlanarParametersImpl ( int  type,
double  shellInnerRadius,
double  shellOuterRadius,
double  shellHalfLength,
double  shellGap,
double  shellRadLength 
)

C'tor.

Parameters
Typethe type of the vertex detector: CCD, CMOS or HYBRID
shellInnerRadiusthe inner Radius of the vertex' shell (in mm)
shellOuterRadiusthe outer Radius of the vertex' shell (in mm)
shellHalfLengththe half length in z (in mm)
shellGapthe total width of the gap at z==0 - symetrical around z==0
shellRadLengththe material property information about the shell's material radiation length

Definition at line 18 of file ZPlanarParametersImpl.cc.

Member Function Documentation

virtual void gear::ZPlanarParametersImpl::addLayer ( int  nLadders,
double  phi0,
double  ladderDistance,
double  ladderOffset,
double  ladderThickness,
double  ladderLength,
double  ladderWidth,
double  ladderRadLength,
double  sensitiveDistance,
double  sensitiveOffset,
double  sensitiveThickness,
double  sensitiveLength,
double  sensitiveWidth,
double  sensitiveRadLength 
)
inlinevirtual

adding a Layer to the vertex one layer consiste of a number of ladders and sensitive areas (nLadders) that are each equidistant to IP.

They are cubic with dimensions length (z), width (perpendicular to connection IP-spacepoint) and thickness (extension to connection IP-spacepoint).

Parameters
nLaddersthe number of ladders and sensitive areas inside the layer
phi0azimuthal angle of normal to first ladder
Distancethe length (mm) of the straigth line between IP and spacepoint to ladder (ladderDistance) or sensitive Area (sensitiveDistance)
Offsetthe offset of ladder (ladderOffset) or sensitive area (sensitiveOffset) in direction of increasing phi in mm between spacepoint and middle of ladder/sensitive
Thicknessthe thickness in mm of the ladder (ladderThickness) or the sensitive area (sensitiveThickness)
Lengththe length (z-direction) in mm of the ladder (ladderLength) or the sensitive area (sensitiveLength)
Widththe width of the ladder (ladderWidth) or the sensitive area (sensitiveWidth) in mm in clockwise direction
RadLenghtthe radiation lenght of the ladder (ladderRadLength) or the sensitive area (sensitiveRadLength) in mm

Definition at line 70 of file ZPlanarParametersImpl.h.

References gear::ZPlanarLayerLayoutImpl::addLayer().

Referenced by gear::ZPlanarParametersXML::fromXML().


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