GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » EMC » Question about emc crystal numbering
Question about emc crystal numbering [message #9080] Tue, 28 July 2009 15:59 Go to next message
Jens Sören Lange is currently offline  Jens Sören Lange
Messages: 193
Registered: June 2005
first-grade participant
From: *physik.uni-giessen.de
Hi all,

2 questions concerning emc crystal numbering.

Question #1:

in trunk/emc/EmcData/PndEmcHit.h

Short_t GetCrystal() const { return (fDetectorID%10000) ;}

the crystal is the smallest unit (and not e.g. the "module"),
so is the factor 10000 really correct here?
(or should it just return fDetectorID ?)

in other words, like this it only returns 1-digit "1, 2, ..."
for fired crystal numbers and not 5-digit numbers.

Question #2:

when investigating fDetectorID (e.g. for the E=1 GeV photons
from sim_emc.C using hit_analys.C) it turns out that it has
has positive and _negative_ 5-digit integer detector numbers.

Any idea why negative?

cheers, Soeren
Re: Question about emc crystal numbering [message #9082 is a reply to message #9080] Tue, 28 July 2009 16:40 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Hi,

in PndEmc there is the definition of fDetectorID:

  fVolumeID = nMod*100000000 + nRow*1000000 + copyNo*10000 + nCrys;


the crystals are divided in GetCrystal and GetRow (like theta and phi, or x and y), then 10000 is correct.

About the second question, with the endcaps the structure was changed many times since when I have written the code for the first time, it is possible that for some module the propagation of fDetectorID is wrong (crystals and row should be always positive).
Could you please check for which modules you have such negative numbers?
Re: Question about emc crystal numbering [message #9099 is a reply to message #9082] Wed, 29 July 2009 15:47 Go to previous messageGo to next message
Jens Sören Lange is currently offline  Jens Sören Lange
Messages: 193
Registered: June 2005
first-grade participant
From: *physik.uni-giessen.de
i can confirm that it happens for all modules 1,2,3,4,5.
about ~50% of all fDetectorID are negative,
and it happens in >90% of all events.
(there is no hit->GetDetectorID(), so maybe it was just not noticed before)

Re: Question about emc crystal numbering [message #9103 is a reply to message #9080] Wed, 29 July 2009 22:27 Go to previous messageGo to next message
mpeliz is currently offline  mpeliz
Messages: 51
Registered: February 2008
Location: Ruhr-Universitaet Bochum
continuous participant
From: *dip.t-dialin.net
Hi Soeren,

I was not able to reproduce your problem with my installed trunk
corresponding to SVN revision 6081. I runned emc_sim.C,
emc_hit.C and emc_analys.C on 1000 events. Both the
PndEmcHitProducer::AddHit and the inherited FairHit::GetDetectorID
methods always yield positive integer values.

What did I do different? Just for the record: I compiled, linked
and ran on SL4. Any ideas to nail the problem down?

Best regards,
Marc







Re: Question about emc crystal numbering [message #9104 is a reply to message #9103] Thu, 30 July 2009 09:03 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *15-87-r.retail.telecomitalia.it
I have tried also in my computer, and all the detectorID of both EmcPoint and EmcHit are correctly positive.
Re: Question about emc crystal numbering [message #9118 is a reply to message #9104] Thu, 30 July 2009 15:26 Go to previous messageGo to next message
Jens Sören Lange is currently offline  Jens Sören Lange
Messages: 193
Registered: June 2005
first-grade participant
From: *physik.uni-giessen.de
I tried like this: (in PndEmcHit.h)

Short_t GetCrystal() const { return (fDetectorID) ;};

can it be that fDetectorID itself is calculated using GetCrystal() ?
(so that I created a recursion this way which then produces
the negative numbers somehow?)
Re: Question about emc crystal numbering [message #9120 is a reply to message #9118] Thu, 30 July 2009 15:51 Go to previous message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *15-87-r.retail.telecomitalia.it
fDetectorID is created at the simulation point (PndEmc), taking all the crystal numbers from the geoemtry volume.
After, this number is propagated into EmcHit/Digi and so on. The functions GetRox(), GetCrystal(), getCopy(), GetModule(), GetXPad() and GetYPad() use only fDetectorID, and if you do not use explicitely the command SetDetectorID(), you cannot change that number.
Previous Topic: forward endcap quest goes on
Next Topic: change of geometry for EMC
Goto Forum:
  


Current Time: Tue Jul 23 23:08:31 CEST 2024

Total time taken to generate the page: 0.00711 seconds