kalmanalignment is hosted by Hepforge, IPPP Durham

A (misaligned) detector in space. More...

#include <Det.h>

List of all members.

Public Member Functions

 Det (int ID, double Width, double Length, double Thickness, double PitchX, double PitchY)
 Recommended constructor.
const double GetWidth () const
 width of a module (perpendicular to strips, local x)
const double GetLength () const
 length of a module (along strips, local y)
const double GetThickness () const
 thickness of a module (local z)
const double GetPitchX () const
 the strip pitch of a module (sensitive coordinate along x)
const double GetPitchY () const
 the stereo coordinate distance, i.e. y distance of crossings
const double GetResolutionX () const
 detector resolution along x
const double GetResolutionY () const
 detector resolution along y
const double GetRadiationLength () const
 detector radiation length in cm
int GetID () const
 Detector ID.
const ReferenceFrameGetNominal () const
 Return the nominal frame (i.e. where the detector is supposed to be)
const ReferenceFrameGetMisalignDelta () const
 Return difference from nominal frame to real (misaligned frame)
const ReferenceFrameGetMisalign () const
 Return absolute misaligned frame (nominal position + delta due to misalignment)
const ReferenceFrameGetAlignDelta () const
 Return difference from nominal to aligned frame.
const ReferenceFrameGetAlign () const
 Return absolute aligned frame (nominal position + computed alignment correction)
bool InsideBounds (CLHEP::HepVector local) const
 Check if the given hit (in local coordinates) is inside detector volume.
CLHEP::HepVector MeasuredIntersection (CLHEP::HepVector trueIntersection) const
 Get measured intersection assuming nominal position for detector.
void SetNominalFrame (ReferenceFrame nominal)
 Set nominal frame (where the detector should be, ideal geometry)
void SetMisalignFrame (ReferenceFrame misalignDelta)
 Set misaligned frame (You have to give the DELTA to the nominal frame)
void SetAlignFrame (ReferenceFrame alignDelta)
 Set aligned frame (You have to give the DELTA to the nominal frame)

Protected Attributes

int fID
 internal number of module, module "ID"
double fWidth
 Detector width (x-coordinate)
double fLength
 Detector length (y-coordinate)
double fThickness
 Detector thickness (z-coordinate)
double fPitchX
 Pitch in x coordinate (along "width")
double fPitchY
 Pitch in y coordinate (along "length")
ReferenceFrame fNominal
ReferenceFrame fMisalignDelta
ReferenceFrame fAlignDelta
ReferenceFrame fMisalign
ReferenceFrame fAlign

Detailed Description

A (misaligned) detector in space.

It consists of three locations: The nominal position of the object (where it is expected to be), the true (generated) misalignment, and the computed alignment. The two members fMisalignDelta and fAlignDelta are no real reference frames, but rather store additional rotation and position that have to be applied additionally to the nominal to get the misaligned and aligned frame, respectively.

The two members fMisalign and fAlign contain the combination done in the Karimaki way of the nominal plus the applied delta. They are updated each time SetMisalignDeltaFrame or SetAlignDeltaFrame is called.


Constructor & Destructor Documentation

Det::Det ( int  ID,
double  Width,
double  Length,
double  Thickness,
double  PitchX,
double  PitchY 
)

Recommended constructor.

You should use this constructor only.


Member Function Documentation

const double Det::GetRadiationLength ( ) const

detector radiation length in cm

Get radiation length (in cm)

Material is assumed to be silicon.

bool Det::InsideBounds ( CLHEP::HepVector  local) const

Check if the given hit (in local coordinates) is inside detector volume.

Boundary checking: Is a point in the detector? returns true if the point is in the detector, else false

HepVector Det::MeasuredIntersection ( CLHEP::HepVector  trueIntersection) const

Get measured intersection assuming nominal position for detector.

Convert the true intersection in the one that would be measured because the misalignment is not known.

Get from real misaligned state the intersection that would be measured if the misaligned state is not known, i.e. regarding only nominal position / rotation.

void Det::SetAlignFrame ( ReferenceFrame  alignDelta)

Set aligned frame (You have to give the DELTA to the nominal frame)

Set aligned frame.

This sets both the delta (that you supply) and combines it with the nominal frame.

void Det::SetMisalignFrame ( ReferenceFrame  misalignDelta)

Set misaligned frame (You have to give the DELTA to the nominal frame)

Set misaligned frame.

This sets both the delta (that you supply) and combines it with the nominal frame.

void Det::SetNominalFrame ( ReferenceFrame  nominal)

Set nominal frame (where the detector should be, ideal geometry)

Set nominal frame.

This also recalculates the misaligned and aligned frame corresponding to the given delta frames.


The documentation for this class was generated from the following files:
  • /home/mweber/Dokumente/CMS/Alignment/kalmanalignment/trunk/simulation/Det.h
  • /home/mweber/Dokumente/CMS/Alignment/kalmanalignment/trunk/simulation/Det.cc