Changes in modules/SimpleCalorimeter.cc [eee94204:341014c] in git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
modules/SimpleCalorimeter.cc
reee94204 r341014c 208 208 fItParticleInputArray->Reset(); 209 209 number = -1; 210 fTowerRmax=0.;211 210 while((particle = static_cast<Candidate *>(fItParticleInputArray->Next()))) 212 211 { 213 212 const TLorentzVector &particlePosition = particle->Position; 214 213 ++number; 215 216 // compute maximum radius (needed in FinalizeTower to assess whether barrel or endcap tower)217 if (particlePosition.Perp() > fTowerRmax)218 fTowerRmax=particlePosition.Perp();219 214 220 215 pdgCode = TMath::Abs(particle->PID); … … 399 394 fTowerEnergy += energy; 400 395 401 fTowerTime += energy * energy * position.T(); //sigma_t ~ 1/E402 fTowerTimeWeight += energy * energy;396 fTowerTime += energy * position.T(); 397 fTowerTimeWeight += energy; 403 398 404 399 fTower->AddCandidate(particle); 405 fTower->Position = position;406 407 400 } 408 401 … … 416 409 { 417 410 Candidate *tower, *track, *mother; 418 Double_t energy, neutralEnergy, pt, eta, phi , r;411 Double_t energy, neutralEnergy, pt, eta, phi; 419 412 Double_t sigma, neutralSigma; 420 413 Double_t time; … … 450 443 pt = energy / TMath::CosH(eta); 451 444 452 // endcap 453 if (TMath::Abs(fTower->Position.Pt() - fTowerRmax) > 1.e-06 && TMath::Abs(eta) > 0.){ 454 r = fTower->Position.Z()/TMath::SinH(eta); 455 } 456 // barrel 457 else { 458 r = fTower->Position.Pt(); 459 } 460 461 fTower->Position.SetPtEtaPhiE(r, eta, phi, time); 445 fTower->Position.SetPtEtaPhiE(1.0, eta, phi, time); 462 446 fTower->Momentum.SetPtEtaPhiE(pt, eta, phi, energy); 463 fTower->L = fTower->Position.Vect().Mag();464 447 465 448 fTower->Eem = (!fIsEcal) ? 0 : energy; 466 449 fTower->Ehad = (fIsEcal) ? 0 : energy; 467 fTower->Etrk = fTrackEnergy;468 450 469 451 fTower->Edges[0] = fTowerEdges[0]; … … 525 507 track = static_cast<Candidate *>(track->Clone()); 526 508 track->AddCandidate(mother); 527 track->Momentum.SetPtEtaPhiM(track->Momentum.Pt()*rescaleFactor, track->Momentum.Eta(), track->Momentum.Phi(), track->Momentum.M()); 509 510 track->Momentum *= rescaleFactor; 511 528 512 fEFlowTrackOutputArray->Add(track); 529 513 }
Note:
See TracChangeset
for help on using the changeset viewer.