#include "AliESDMuonGlobalTrack.h"
#include "AliESDEvent.h"
#include "TClonesArray.h"
#include "TLorentzVector.h"
#include "TMath.h"
#include "TDatabasePDG.h"
ClassImp(AliESDMuonGlobalTrack)
AliESDMuonGlobalTrack::AliESDMuonGlobalTrack():
AliVParticle(),
fCharge(0),
fMatchTrigger(0),
fNMFTClusters(0),
fNWrongMFTClustersMC(-1),
fMFTClusterPattern(0),
fPx(0),
fPy(0),
fPz(0),
fPt(0),
fP(0),
fEta(0),
fRapidity(0),
fFirstTrackingPointX(0),
fFirstTrackingPointY(0),
fFirstTrackingPointZ(0),
fXAtVertex(0),
fYAtVertex(0),
fRAtAbsorberEnd(0),
fCovariances(0),
fChi2OverNdf(0),
fChi2MatchTrigger(0),
fLabel(-1),
fMuonClusterMap(0),
fHitsPatternInTrigCh(0),
fHitsPatternInTrigChTrk(0),
fLoCircuit(0),
fIsConnected(kFALSE),
fESDEvent(0)
{
fProdVertexXYZ[0]=0;
fProdVertexXYZ[1]=0;
fProdVertexXYZ[2]=0;
}
AliESDMuonGlobalTrack::AliESDMuonGlobalTrack(Double_t px, Double_t py, Double_t pz):
AliVParticle(),
fCharge(0),
fMatchTrigger(0),
fNMFTClusters(0),
fNWrongMFTClustersMC(-1),
fMFTClusterPattern(0),
fPx(0),
fPy(0),
fPz(0),
fPt(0),
fP(0),
fEta(0),
fRapidity(0),
fFirstTrackingPointX(0),
fFirstTrackingPointY(0),
fFirstTrackingPointZ(0),
fXAtVertex(0),
fYAtVertex(0),
fRAtAbsorberEnd(0),
fCovariances(0),
fChi2OverNdf(0),
fChi2MatchTrigger(0),
fLabel(-1),
fMuonClusterMap(0),
fHitsPatternInTrigCh(0),
fHitsPatternInTrigChTrk(0),
fLoCircuit(0),
fIsConnected(kFALSE),
fESDEvent(0)
{
SetPxPyPz(px, py, pz);
fProdVertexXYZ[0]=0;
fProdVertexXYZ[1]=0;
fProdVertexXYZ[2]=0;
}
AliESDMuonGlobalTrack::AliESDMuonGlobalTrack(const AliESDMuonGlobalTrack& muonTrack):
AliVParticle(muonTrack),
fCharge(muonTrack.fCharge),
fMatchTrigger(muonTrack.fMatchTrigger),
fNMFTClusters(muonTrack.fNMFTClusters),
fNWrongMFTClustersMC(muonTrack.fNWrongMFTClustersMC),
fMFTClusterPattern(muonTrack.fMFTClusterPattern),
fPx(muonTrack.fPx),
fPy(muonTrack.fPy),
fPz(muonTrack.fPz),
fPt(muonTrack.fPt),
fP(muonTrack.fP),
fEta(muonTrack.fEta),
fRapidity(muonTrack.fRapidity),
fFirstTrackingPointX(muonTrack.fFirstTrackingPointX),
fFirstTrackingPointY(muonTrack.fFirstTrackingPointY),
fFirstTrackingPointZ(muonTrack.fFirstTrackingPointZ),
fXAtVertex(muonTrack.fXAtVertex),
fYAtVertex(muonTrack.fYAtVertex),
fRAtAbsorberEnd(muonTrack.fRAtAbsorberEnd),
fCovariances(0),
fChi2OverNdf(muonTrack.fChi2OverNdf),
fChi2MatchTrigger(muonTrack.fChi2MatchTrigger),
fLabel(muonTrack.fLabel),
fMuonClusterMap(muonTrack.fMuonClusterMap),
fHitsPatternInTrigCh(muonTrack.fHitsPatternInTrigCh),
fHitsPatternInTrigChTrk(muonTrack.fHitsPatternInTrigChTrk),
fLoCircuit(muonTrack.fLoCircuit),
fIsConnected(muonTrack.fIsConnected),
fESDEvent(muonTrack.fESDEvent)
{
fProdVertexXYZ[0]=muonTrack.fProdVertexXYZ[0];
fProdVertexXYZ[1]=muonTrack.fProdVertexXYZ[1];
fProdVertexXYZ[2]=muonTrack.fProdVertexXYZ[2];
if (muonTrack.fCovariances) fCovariances = new TMatrixD(*(muonTrack.fCovariances));
}
AliESDMuonGlobalTrack& AliESDMuonGlobalTrack::operator=(const AliESDMuonGlobalTrack& muonTrack) {
if (this == &muonTrack) return *this;
AliVParticle::operator=(muonTrack);
fCharge = muonTrack.fCharge;
fMatchTrigger = muonTrack.fMatchTrigger;
fNMFTClusters = muonTrack.fNMFTClusters;
fNWrongMFTClustersMC = muonTrack.fNWrongMFTClustersMC;
fMFTClusterPattern = muonTrack.fMFTClusterPattern;
fPx = muonTrack.fPx;
fPy = muonTrack.fPy;
fPz = muonTrack.fPz;
fPt = muonTrack.fPt;
fP = muonTrack.fP;
fEta = muonTrack.fEta;
fRapidity = muonTrack.fRapidity;
fFirstTrackingPointX = muonTrack.fFirstTrackingPointX;
fFirstTrackingPointY = muonTrack.fFirstTrackingPointY;
fFirstTrackingPointZ = muonTrack.fFirstTrackingPointZ;
fXAtVertex = muonTrack.fXAtVertex;
fYAtVertex = muonTrack.fYAtVertex;
fRAtAbsorberEnd = muonTrack.fRAtAbsorberEnd;
fChi2OverNdf = muonTrack.fChi2OverNdf;
fChi2MatchTrigger = muonTrack.fChi2MatchTrigger;
fLabel = muonTrack.fLabel;
fMuonClusterMap = muonTrack.fMuonClusterMap;
fHitsPatternInTrigCh = muonTrack.fHitsPatternInTrigCh;
fHitsPatternInTrigChTrk = muonTrack.fHitsPatternInTrigChTrk;
fLoCircuit = muonTrack.fLoCircuit;
fIsConnected = muonTrack.fIsConnected;
fESDEvent = muonTrack.fESDEvent;
fProdVertexXYZ[0]=muonTrack.fProdVertexXYZ[0];
fProdVertexXYZ[1]=muonTrack.fProdVertexXYZ[1];
fProdVertexXYZ[2]=muonTrack.fProdVertexXYZ[2];
if (muonTrack.fCovariances) {
if (fCovariances) *fCovariances = *(muonTrack.fCovariances);
else fCovariances = new TMatrixD(*(muonTrack.fCovariances));
}
else {
delete fCovariances;
fCovariances = 0x0;
}
return *this;
}
void AliESDMuonGlobalTrack::Copy(TObject &obj) const {
if (this==&obj) return;
AliESDMuonGlobalTrack *robj = dynamic_cast<AliESDMuonGlobalTrack*>(&obj);
if (!robj) return;
*robj = *this;
}
void AliESDMuonGlobalTrack::SetPxPyPz(Double_t px, Double_t py, Double_t pz) {
Double_t mMu = TDatabasePDG::Instance()->GetParticle("mu-")->Mass();
Double_t eMu = TMath::Sqrt(mMu*mMu + px*px + py*py + pz*pz);
TLorentzVector kinem(px, py, pz, eMu);
fPx = kinem.Px();
fPy = kinem.Py();
fPz = kinem.Pz();
fP = kinem.P();
fPt = kinem.Pt();
fEta = kinem.Eta();
fRapidity = kinem.Rapidity();
}
const TMatrixD& AliESDMuonGlobalTrack::GetCovariances() const {
if (!fCovariances) {
fCovariances = new TMatrixD(5,5);
fCovariances->Zero();
}
return *fCovariances;
}
void AliESDMuonGlobalTrack::SetCovariances(const TMatrixD& covariances) {
if (fCovariances) *fCovariances = covariances;
else fCovariances = new TMatrixD(covariances);
}
AliESDMuonGlobalTrack.cxx:1 AliESDMuonGlobalTrack.cxx:2 AliESDMuonGlobalTrack.cxx:3 AliESDMuonGlobalTrack.cxx:4 AliESDMuonGlobalTrack.cxx:5 AliESDMuonGlobalTrack.cxx:6 AliESDMuonGlobalTrack.cxx:7 AliESDMuonGlobalTrack.cxx:8 AliESDMuonGlobalTrack.cxx:9 AliESDMuonGlobalTrack.cxx:10 AliESDMuonGlobalTrack.cxx:11 AliESDMuonGlobalTrack.cxx:12 AliESDMuonGlobalTrack.cxx:13 AliESDMuonGlobalTrack.cxx:14 AliESDMuonGlobalTrack.cxx:15 AliESDMuonGlobalTrack.cxx:16 AliESDMuonGlobalTrack.cxx:17 AliESDMuonGlobalTrack.cxx:18 AliESDMuonGlobalTrack.cxx:19 AliESDMuonGlobalTrack.cxx:20 AliESDMuonGlobalTrack.cxx:21 AliESDMuonGlobalTrack.cxx:22 AliESDMuonGlobalTrack.cxx:23 AliESDMuonGlobalTrack.cxx:24 AliESDMuonGlobalTrack.cxx:25 AliESDMuonGlobalTrack.cxx:26 AliESDMuonGlobalTrack.cxx:27 AliESDMuonGlobalTrack.cxx:28 AliESDMuonGlobalTrack.cxx:29 AliESDMuonGlobalTrack.cxx:30 AliESDMuonGlobalTrack.cxx:31 AliESDMuonGlobalTrack.cxx:32 AliESDMuonGlobalTrack.cxx:33 AliESDMuonGlobalTrack.cxx:34 AliESDMuonGlobalTrack.cxx:35 AliESDMuonGlobalTrack.cxx:36 AliESDMuonGlobalTrack.cxx:37 AliESDMuonGlobalTrack.cxx:38 AliESDMuonGlobalTrack.cxx:39 AliESDMuonGlobalTrack.cxx:40 AliESDMuonGlobalTrack.cxx:41 AliESDMuonGlobalTrack.cxx:42 AliESDMuonGlobalTrack.cxx:43 AliESDMuonGlobalTrack.cxx:44 AliESDMuonGlobalTrack.cxx:45 AliESDMuonGlobalTrack.cxx:46 AliESDMuonGlobalTrack.cxx:47 AliESDMuonGlobalTrack.cxx:48 AliESDMuonGlobalTrack.cxx:49 AliESDMuonGlobalTrack.cxx:50 AliESDMuonGlobalTrack.cxx:51 AliESDMuonGlobalTrack.cxx:52 AliESDMuonGlobalTrack.cxx:53 AliESDMuonGlobalTrack.cxx:54 AliESDMuonGlobalTrack.cxx:55 AliESDMuonGlobalTrack.cxx:56 AliESDMuonGlobalTrack.cxx:57 AliESDMuonGlobalTrack.cxx:58 AliESDMuonGlobalTrack.cxx:59 AliESDMuonGlobalTrack.cxx:60 AliESDMuonGlobalTrack.cxx:61 AliESDMuonGlobalTrack.cxx:62 AliESDMuonGlobalTrack.cxx:63 AliESDMuonGlobalTrack.cxx:64 AliESDMuonGlobalTrack.cxx:65 AliESDMuonGlobalTrack.cxx:66 AliESDMuonGlobalTrack.cxx:67 AliESDMuonGlobalTrack.cxx:68 AliESDMuonGlobalTrack.cxx:69 AliESDMuonGlobalTrack.cxx:70 AliESDMuonGlobalTrack.cxx:71 AliESDMuonGlobalTrack.cxx:72 AliESDMuonGlobalTrack.cxx:73 AliESDMuonGlobalTrack.cxx:74 AliESDMuonGlobalTrack.cxx:75 AliESDMuonGlobalTrack.cxx:76 AliESDMuonGlobalTrack.cxx:77 AliESDMuonGlobalTrack.cxx:78 AliESDMuonGlobalTrack.cxx:79 AliESDMuonGlobalTrack.cxx:80 AliESDMuonGlobalTrack.cxx:81 AliESDMuonGlobalTrack.cxx:82 AliESDMuonGlobalTrack.cxx:83 AliESDMuonGlobalTrack.cxx:84 AliESDMuonGlobalTrack.cxx:85 AliESDMuonGlobalTrack.cxx:86 AliESDMuonGlobalTrack.cxx:87 AliESDMuonGlobalTrack.cxx:88 AliESDMuonGlobalTrack.cxx:89 AliESDMuonGlobalTrack.cxx:90 AliESDMuonGlobalTrack.cxx:91 AliESDMuonGlobalTrack.cxx:92 AliESDMuonGlobalTrack.cxx:93 AliESDMuonGlobalTrack.cxx:94 AliESDMuonGlobalTrack.cxx:95 AliESDMuonGlobalTrack.cxx:96 AliESDMuonGlobalTrack.cxx:97 AliESDMuonGlobalTrack.cxx:98 AliESDMuonGlobalTrack.cxx:99 AliESDMuonGlobalTrack.cxx:100 AliESDMuonGlobalTrack.cxx:101 AliESDMuonGlobalTrack.cxx:102 AliESDMuonGlobalTrack.cxx:103 AliESDMuonGlobalTrack.cxx:104 AliESDMuonGlobalTrack.cxx:105 AliESDMuonGlobalTrack.cxx:106 AliESDMuonGlobalTrack.cxx:107 AliESDMuonGlobalTrack.cxx:108 AliESDMuonGlobalTrack.cxx:109 AliESDMuonGlobalTrack.cxx:110 AliESDMuonGlobalTrack.cxx:111 AliESDMuonGlobalTrack.cxx:112 AliESDMuonGlobalTrack.cxx:113 AliESDMuonGlobalTrack.cxx:114 AliESDMuonGlobalTrack.cxx:115 AliESDMuonGlobalTrack.cxx:116 AliESDMuonGlobalTrack.cxx:117 AliESDMuonGlobalTrack.cxx:118 AliESDMuonGlobalTrack.cxx:119 AliESDMuonGlobalTrack.cxx:120 AliESDMuonGlobalTrack.cxx:121 AliESDMuonGlobalTrack.cxx:122 AliESDMuonGlobalTrack.cxx:123 AliESDMuonGlobalTrack.cxx:124 AliESDMuonGlobalTrack.cxx:125 AliESDMuonGlobalTrack.cxx:126 AliESDMuonGlobalTrack.cxx:127 AliESDMuonGlobalTrack.cxx:128 AliESDMuonGlobalTrack.cxx:129 AliESDMuonGlobalTrack.cxx:130 AliESDMuonGlobalTrack.cxx:131 AliESDMuonGlobalTrack.cxx:132 AliESDMuonGlobalTrack.cxx:133 AliESDMuonGlobalTrack.cxx:134 AliESDMuonGlobalTrack.cxx:135 AliESDMuonGlobalTrack.cxx:136 AliESDMuonGlobalTrack.cxx:137 AliESDMuonGlobalTrack.cxx:138 AliESDMuonGlobalTrack.cxx:139 AliESDMuonGlobalTrack.cxx:140 AliESDMuonGlobalTrack.cxx:141 AliESDMuonGlobalTrack.cxx:142 AliESDMuonGlobalTrack.cxx:143 AliESDMuonGlobalTrack.cxx:144 AliESDMuonGlobalTrack.cxx:145 AliESDMuonGlobalTrack.cxx:146 AliESDMuonGlobalTrack.cxx:147 AliESDMuonGlobalTrack.cxx:148 AliESDMuonGlobalTrack.cxx:149 AliESDMuonGlobalTrack.cxx:150 AliESDMuonGlobalTrack.cxx:151 AliESDMuonGlobalTrack.cxx:152 AliESDMuonGlobalTrack.cxx:153 AliESDMuonGlobalTrack.cxx:154 AliESDMuonGlobalTrack.cxx:155 AliESDMuonGlobalTrack.cxx:156 AliESDMuonGlobalTrack.cxx:157 AliESDMuonGlobalTrack.cxx:158 AliESDMuonGlobalTrack.cxx:159 AliESDMuonGlobalTrack.cxx:160 AliESDMuonGlobalTrack.cxx:161 AliESDMuonGlobalTrack.cxx:162 AliESDMuonGlobalTrack.cxx:163 AliESDMuonGlobalTrack.cxx:164 AliESDMuonGlobalTrack.cxx:165 AliESDMuonGlobalTrack.cxx:166 AliESDMuonGlobalTrack.cxx:167 AliESDMuonGlobalTrack.cxx:168 AliESDMuonGlobalTrack.cxx:169 AliESDMuonGlobalTrack.cxx:170 AliESDMuonGlobalTrack.cxx:171 AliESDMuonGlobalTrack.cxx:172 AliESDMuonGlobalTrack.cxx:173 AliESDMuonGlobalTrack.cxx:174 AliESDMuonGlobalTrack.cxx:175 AliESDMuonGlobalTrack.cxx:176 AliESDMuonGlobalTrack.cxx:177 AliESDMuonGlobalTrack.cxx:178 AliESDMuonGlobalTrack.cxx:179 AliESDMuonGlobalTrack.cxx:180 AliESDMuonGlobalTrack.cxx:181 AliESDMuonGlobalTrack.cxx:182 AliESDMuonGlobalTrack.cxx:183 AliESDMuonGlobalTrack.cxx:184 AliESDMuonGlobalTrack.cxx:185 AliESDMuonGlobalTrack.cxx:186 AliESDMuonGlobalTrack.cxx:187 AliESDMuonGlobalTrack.cxx:188 AliESDMuonGlobalTrack.cxx:189 AliESDMuonGlobalTrack.cxx:190 AliESDMuonGlobalTrack.cxx:191 AliESDMuonGlobalTrack.cxx:192 AliESDMuonGlobalTrack.cxx:193 AliESDMuonGlobalTrack.cxx:194 AliESDMuonGlobalTrack.cxx:195 AliESDMuonGlobalTrack.cxx:196 AliESDMuonGlobalTrack.cxx:197 AliESDMuonGlobalTrack.cxx:198 AliESDMuonGlobalTrack.cxx:199 AliESDMuonGlobalTrack.cxx:200 AliESDMuonGlobalTrack.cxx:201 AliESDMuonGlobalTrack.cxx:202 AliESDMuonGlobalTrack.cxx:203 AliESDMuonGlobalTrack.cxx:204 AliESDMuonGlobalTrack.cxx:205 AliESDMuonGlobalTrack.cxx:206 AliESDMuonGlobalTrack.cxx:207 AliESDMuonGlobalTrack.cxx:208 AliESDMuonGlobalTrack.cxx:209 AliESDMuonGlobalTrack.cxx:210 AliESDMuonGlobalTrack.cxx:211 AliESDMuonGlobalTrack.cxx:212 AliESDMuonGlobalTrack.cxx:213 AliESDMuonGlobalTrack.cxx:214 AliESDMuonGlobalTrack.cxx:215 AliESDMuonGlobalTrack.cxx:216 AliESDMuonGlobalTrack.cxx:217 AliESDMuonGlobalTrack.cxx:218 AliESDMuonGlobalTrack.cxx:219 AliESDMuonGlobalTrack.cxx:220 AliESDMuonGlobalTrack.cxx:221 AliESDMuonGlobalTrack.cxx:222 AliESDMuonGlobalTrack.cxx:223 AliESDMuonGlobalTrack.cxx:224 AliESDMuonGlobalTrack.cxx:225 AliESDMuonGlobalTrack.cxx:226 AliESDMuonGlobalTrack.cxx:227 AliESDMuonGlobalTrack.cxx:228 AliESDMuonGlobalTrack.cxx:229 AliESDMuonGlobalTrack.cxx:230 AliESDMuonGlobalTrack.cxx:231 AliESDMuonGlobalTrack.cxx:232 AliESDMuonGlobalTrack.cxx:233 AliESDMuonGlobalTrack.cxx:234 AliESDMuonGlobalTrack.cxx:235 AliESDMuonGlobalTrack.cxx:236 AliESDMuonGlobalTrack.cxx:237 AliESDMuonGlobalTrack.cxx:238 AliESDMuonGlobalTrack.cxx:239 AliESDMuonGlobalTrack.cxx:240 AliESDMuonGlobalTrack.cxx:241 AliESDMuonGlobalTrack.cxx:242 AliESDMuonGlobalTrack.cxx:243 AliESDMuonGlobalTrack.cxx:244 AliESDMuonGlobalTrack.cxx:245 AliESDMuonGlobalTrack.cxx:246 AliESDMuonGlobalTrack.cxx:247 AliESDMuonGlobalTrack.cxx:248 AliESDMuonGlobalTrack.cxx:249 AliESDMuonGlobalTrack.cxx:250 AliESDMuonGlobalTrack.cxx:251 AliESDMuonGlobalTrack.cxx:252 AliESDMuonGlobalTrack.cxx:253 AliESDMuonGlobalTrack.cxx:254 AliESDMuonGlobalTrack.cxx:255 AliESDMuonGlobalTrack.cxx:256 AliESDMuonGlobalTrack.cxx:257 AliESDMuonGlobalTrack.cxx:258 AliESDMuonGlobalTrack.cxx:259 AliESDMuonGlobalTrack.cxx:260 AliESDMuonGlobalTrack.cxx:261 AliESDMuonGlobalTrack.cxx:262 AliESDMuonGlobalTrack.cxx:263 AliESDMuonGlobalTrack.cxx:264 AliESDMuonGlobalTrack.cxx:265 AliESDMuonGlobalTrack.cxx:266 AliESDMuonGlobalTrack.cxx:267 AliESDMuonGlobalTrack.cxx:268 AliESDMuonGlobalTrack.cxx:269 AliESDMuonGlobalTrack.cxx:270 AliESDMuonGlobalTrack.cxx:271 AliESDMuonGlobalTrack.cxx:272 AliESDMuonGlobalTrack.cxx:273 AliESDMuonGlobalTrack.cxx:274 AliESDMuonGlobalTrack.cxx:275 AliESDMuonGlobalTrack.cxx:276 AliESDMuonGlobalTrack.cxx:277 AliESDMuonGlobalTrack.cxx:278 AliESDMuonGlobalTrack.cxx:279