- Timestamp:
- Jan 6, 2020, 10:13:21 PM (5 years ago)
- Branches:
- Timing
- Children:
- 7939c6c
- Parents:
- d4e5b6a
- Location:
- modules
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
modules/ModulesLinkDef.h
rd4e5b6a r03b9c0f 38 38 #include "modules/ImpactParameterSmearing.h" 39 39 #include "modules/TimeSmearing.h" 40 #include "modules/TimeSmearingNeutral.h" 40 41 #include "modules/SimpleCalorimeter.h" 41 42 #include "modules/DenseTrackFilter.h" … … 55 56 #include "modules/PileUpMerger.h" 56 57 #include "modules/JetPileUpSubtractor.h" 57 #include "modules/TrackPileUpSubtractor.h"58 58 #include "modules/TrackTimingPileUpSubtractor.h" 59 59 #include "modules/TaggingParticlesSkimmer.h" … … 95 95 #pragma link C++ class ImpactParameterSmearing+; 96 96 #pragma link C++ class TimeSmearing+; 97 #pragma link C++ class TimeSmearingNeutral+; 97 98 #pragma link C++ class SimpleCalorimeter+; 98 99 #pragma link C++ class DenseTrackFilter+; … … 112 113 #pragma link C++ class PileUpMerger+; 113 114 #pragma link C++ class JetPileUpSubtractor+; 114 #pragma link C++ class TrackPileUpSubtractor+;115 115 #pragma link C++ class TrackTimingPileUpSubtractor+; 116 116 #pragma link C++ class TaggingParticlesSkimmer+; -
modules/TrackTimingPileUpSubtractor.cc
rd4e5b6a r03b9c0f 75 75 76 76 // read resolution formula in m 77 fFormula->Compile(GetString("ZVertexResolution", "0.001")); 77 fZVertexResolution = GetDouble("ZVertexResolution", 3); 78 fTVertexResolution = GetDouble("TVertexResolution", 3); 78 79 79 80 fPTMin = GetDouble("PTMin", 0.); … … 128 129 Double_t tempPTSquare = 0; 129 130 Double_t pt, eta, phi, e; 130 Double_t distance = 0;131 Double_t distanceCharged, distanceNeutral = 0; 131 132 132 133 // find z position of primary vertex … … 143 144 tvtx = candidate->Position.T(); 144 145 tvtx_err = candidate->PositionError.T(); 145 cout << " initial : " << candidate->InitialPosition.T() << " final : " << candidate->Position.T() << endl;146 146 } 147 147 } … … 167 167 z = particle->Position.Z(); 168 168 z_err = particle->PositionError.Z(); 169 t = particle-> Position.T();169 t = particle->InitialPosition.T(); 170 170 t_err = particle->PositionError.T(); 171 171 172 // apply pile-up subtraction 173 distance = pow((zvtx - z),2)/pow((zvtx_err - z_err),2) + pow((tvtx - t),2)/pow((tvtx_err - t_err),2); 174 //cout << " t : " << tvtx << " t(particle)" << t << endl; 175 // here I calculated distance using Z and T of selected vertex (highest sum Pt square) and particles 176 // however z_err of vertices is gives 0 because of using CMS trackResolutionCMS.tcl (in that formula, there is limitation on |eta| < 2.5) 177 // thats why I used TMath::Abs(z - zvtx) < 0.005 && TMath::Abs(t - tvtx) < 5.0 172 distanceCharged = pow((zvtx - z),2)/pow((zvtx_err - z_err),2) + pow((tvtx - t),2)/pow((tvtx_err - t_err),2); 173 distanceNeutral = pow((tvtx - t),2)/pow((tvtx_err - t_err),2); 178 174 179 if(candidate->Charge != 0 && TMath::Abs(z - zvtx) < 0.005 && TMath::Abs(t - tvtx) < 5.0)175 if(candidate->Charge != 0 && distanceCharged < fZVertexResolution) 180 176 { 181 177 candidate->IsRecoPU = 1; 182 178 } 179 else if(candidate->Charge == 0 && distanceNeutral < fTVertexResolution) 180 { 181 candidate->IsRecoPU = 1; 182 } 183 183 else 184 184 { -
modules/TrackTimingPileUpSubtractor.h
rd4e5b6a r03b9c0f 49 49 DelphesFormula *fFormula; //! 50 50 51 Double_t fZVertexResolution; 52 Double_t fTVertexResolution; 53 51 54 Double_t fPTMin; 52 55 -
modules/VertexFinderDA4D.cc
rd4e5b6a r03b9c0f 425 425 candidate->ClusterIndex = k; 426 426 candidate->Position.SetXYZT(0.0, 0.0, vtx.z[k] , vtx.t[k]*1E-9*c_light); 427 candidate->InitialPosition.SetXYZT(0.0, 0.0, vtx.z[k] , vtx.t[k]*1E-9*c_light); 427 428 candidate->PositionError.SetXYZT(0.0, 0.0, fVertexZSize , fVertexTSize*1E-9*c_light); 428 429 candidate->SumPT2 = 0;
Note:
See TracChangeset
for help on using the changeset viewer.