Mass calculation from vector<PndEmcDigi*> in EMC [message #8592] |
Tue, 19 May 2009 13:51 |
donghee
Messages: 385 Registered: January 2009 Location: Germnay
|
first-grade participant |
From: *kph.uni-mainz.de
|
|
Dear all,
I have a question about Mass function in PndEmcCluster using the list of PndEmcDigi.
In this Function, a list of digitization in ONE cluster is called, and all stored digi iterate to build a momentum.
If I correctly understand now, a cluster has few digitization according certain space points, where is only covered region in one cluster. I cannot clearly understand why two or even more digitizations are needed to calculate momentum, how do they involve in one cluster?
Could you explain about that? I just want to know the functionality of this digi list.
Thank you for your help in advance
Donghee Kang.
Quote: | Double_t PndEmcCluster::Mass() const
00216 {
00217 Double_t mass;
00218 TVector3 clusterMomentum(0,0,0);
00219 vector<PndEmcDigi*>::const_iterator digi_iter;
00220 TVector3 digiDirection;
00221 Double_t digiEnergy;
00222 for (digi_iter=fDigiList.begin();digi_iter!=fDigiList.end();++digi_iter)
00223 {
00224 digiDirection=(*digi_iter)->where().Unit();
00225 digiEnergy=(*digi_iter)->GetEnergy();
00226 clusterMomentum=clusterMomentum+digiDirection*digiEnergy;
00227 }
00228
00229 Double_t clEnergy=energy();
00230
00231 mass=sqrt(clEnergy*clEnergy-clusterMomentum.Mag2());
00232
00233 return mass;
00234 }
|
|
|
|