GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Tracking » plane id in track candidate
Re: plane id in track candidate [message #10280 is a reply to message #10277] Tue, 23 February 2010 18:00 Go to previous messageGo to previous message
Radoslaw Karabowicz is currently offline  Radoslaw Karabowicz
Messages: 108
Registered: June 2004
Location: GSI
continuous participant
From: *gsi.de
In fact, I would like to get rid of this kGemHit, kSttHit, kMvdPixelHit, and to replace it with something else. I would prefer PndDetectorList.h to look like:

enum DetectorId {
kDCH,kDRC,kDSK,kEMC,kGEM,kLUMI,kMDT,kMVD,kRPC,kSTT,kTPC,kTOF,kHYPG,kHYP} ;

enum DataType {
kUnknown, kMCTrack, kMCPoint, kDigi, kCluster, kHit, kTrackCand, kTrack};

enum SensorSide { kTOP, kBOTTOM };

Now, if one creates for example a point in GEM station3, front side, I would set
fDetectorId to:
fDetectorId = kMCPoint << 27 | kGEM << 22 | 3 << 17 | kTOP << 16;
or something like this depending on the number of bits reserved.

Digi created from this point would have fDetectorId:
fDetectorId = kDigi << 27 | kGEM << 22 | 3 << 17 | kTOP << 16 | digiNr;

Hit created from this point would have fDetectorId:
fDetectorId = kHit << 27 | kGEM << 22 | 3 << 17 | kTOP << 16;

If I create hit factory for GEMhits, I would give there the number kGEM<<5 | kHit,
and choose for the factory only hits having correct bits in detector and data places.

As for which side of the fDetectorId to use, I would nevertheless prefer to use the most significant bits for more general information, so first datatype, then detectortype, planeid, side, and whatever.

BTW, I just talked to Gianluigi about the STT, and for STT I would record information about the planeID (defined as the straw layer number, starting from the closest to the beam pipe, looking at the STT picture provided by Gianluigi, there are 28 layers at most, and so 5 bits is just enough), sectorID (which is simply the sextant number, 3 bits), strawID (id of the straw in a layer 6 bits).
So a MC point in STT:
fDetectorId = kMCPoint << 27 | kSTT << 22 | layerID << 17 | sectorID << 14 | strawID << 8;
I hope it satisfies STT:)

For MVD it would mean, there should be two data types: kMVDStrip and kMVDPixel.

And so on also for different detectors. This way the information is highly structurized, and from this one integer one can get information about the data type, detector and plane ids.
Exactly this integer fDetectorId would be stored in PndTrackCandHit.

yours,
radek
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Momentum resolution and reconstruction efficiency of LHE tracking
Next Topic: [FIXED] Geane for luminosity monitor: TGeant3 not initialized
Goto Forum:
  


Current Time: Sat Apr 20 11:35:23 CEST 2024

Total time taken to generate the page: 0.00908 seconds