Changes in / [288a5fc:7c5b8f3] in git
- Files:
-
- 2 added
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
Makefile
r288a5fc r7c5b8f3 446 446 modules/VertexFinderDA4D.h \ 447 447 modules/DecayFilter.h \ 448 modules/ParticleDensity.h \ 448 449 modules/ExampleModule.h 449 450 tmp/modules/ModulesDict$(PcmSuf): \ … … 510 511 tmp/classes/DelphesFormula.$(ObjSuf): \ 511 512 classes/DelphesFormula.$(SrcSuf) \ 512 classes/DelphesFormula.h 513 classes/DelphesFormula.h \ 514 classes/DelphesClasses.h 513 515 tmp/classes/DelphesHepMCReader.$(ObjSuf): \ 514 516 classes/DelphesHepMCReader.$(SrcSuf) \ … … 881 883 external/ExRootAnalysis/ExRootFilter.h \ 882 884 external/ExRootAnalysis/ExRootResult.h 885 tmp/modules/ParticleDensity.$(ObjSuf): \ 886 modules/ParticleDensity.$(SrcSuf) \ 887 modules/ParticleDensity.h \ 888 classes/DelphesClasses.h \ 889 classes/DelphesFactory.h \ 890 classes/DelphesFormula.h \ 891 external/ExRootAnalysis/ExRootClassifier.h \ 892 external/ExRootAnalysis/ExRootFilter.h \ 893 external/ExRootAnalysis/ExRootResult.h 883 894 tmp/modules/ParticlePropagator.$(ObjSuf): \ 884 895 modules/ParticlePropagator.$(SrcSuf) \ … … 1017 1028 modules/TrackCovariance.h \ 1018 1029 classes/DelphesClasses.h \ 1019 external/TrackCovariance/SolGeom.h 1030 external/TrackCovariance/SolGeom.h \ 1031 external/TrackCovariance/SolGridCov.h \ 1032 external/TrackCovariance/ObsTrk.h 1020 1033 tmp/modules/TrackPileUpSubtractor.$(ObjSuf): \ 1021 1034 modules/TrackPileUpSubtractor.$(SrcSuf) \ … … 1174 1187 tmp/modules/MomentumSmearing.$(ObjSuf) \ 1175 1188 tmp/modules/OldCalorimeter.$(ObjSuf) \ 1189 tmp/modules/ParticleDensity.$(ObjSuf) \ 1176 1190 tmp/modules/ParticlePropagator.$(ObjSuf) \ 1177 1191 tmp/modules/PdgCodeFilter.$(ObjSuf) \ … … 2262 2276 @touch $@ 2263 2277 2278 modules/ParticleDensity.h: \ 2279 classes/DelphesModule.h 2280 @touch $@ 2281 2264 2282 modules/TimeSmearing.h: \ 2265 2283 classes/DelphesModule.h -
classes/DelphesClasses.cc
r288a5fc r7c5b8f3 172 172 ExclYmerge45(0), 173 173 ExclYmerge56(0), 174 ParticleDensity(0), 174 175 fFactory(0), 175 176 fArray(0) -
classes/DelphesClasses.h
r288a5fc r7c5b8f3 733 733 Double_t ExclYmerge56; 734 734 735 // event characteristics variables 736 Double_t ParticleDensity; // particle multiplicity density in the proximity of the particle 737 735 738 static CompBase *fgCompare; //! 736 739 const CompBase *GetCompare() const { return fgCompare; } -
classes/DelphesFormula.cc
r288a5fc r7c5b8f3 18 18 19 19 #include "classes/DelphesFormula.h" 20 #include "classes/DelphesClasses.h" 20 21 21 22 #include "TString.h" … … 63 64 buffer.ReplaceAll("dz", "[1]"); 64 65 buffer.ReplaceAll("ctgTheta", "[2]"); 66 buffer.ReplaceAll("radius", "[3]"); 67 buffer.ReplaceAll("density", "[4]"); 65 68 66 69 #if ROOT_VERSION_CODE < ROOT_VERSION(6, 3, 0) … … 77 80 //------------------------------------------------------------------------------ 78 81 79 Double_t DelphesFormula::Eval(Double_t pt, Double_t eta, Double_t phi, 80 Double_t energy, Double_t d0, Double_t dz, 81 Double_t ctgTheta) 82 Double_t DelphesFormula::Eval(Double_t pt, Double_t eta, Double_t phi, Double_t energy, Candidate *candidate) 82 83 { 84 85 Double_t d0 = 0., dz = 0., ctgTheta = 0., radius = 0., density = 0.; 86 if (candidate) { 87 d0 = candidate->D0; 88 dz = candidate->DZ; 89 ctgTheta = candidate->CtgTheta; 90 radius = candidate->Position.Pt(); 91 density = candidate->ParticleDensity; 92 } 93 83 94 Double_t x[4] = {pt, eta, phi, energy}; 84 Double_t params[ 3] = {d0, dz, ctgTheta};95 Double_t params[5] = {d0, dz, ctgTheta, radius, density}; 85 96 return EvalPar(x, params); 86 97 } -
classes/DelphesFormula.h
r288a5fc r7c5b8f3 22 22 #include "TFormula.h" 23 23 24 class Candidate; 25 24 26 class DelphesFormula: public TFormula 25 27 { … … 33 35 Int_t Compile(const char *expression); 34 36 35 Double_t Eval(Double_t pt, Double_t eta = 0, Double_t phi = 0, 36 Double_t energy = 0, Double_t d0 = 0, Double_t dz = 0, 37 Double_t ctgTheta = 0); 37 Double_t Eval(Double_t pt, Double_t eta = 0, Double_t phi = 0, Double_t energy = 0, Candidate *candidate = nullptr); 38 38 }; 39 39 -
modules/AngularSmearing.cc
r288a5fc r7c5b8f3 112 112 // apply smearing formula for eta,phi 113 113 114 eta = gRandom->Gaus(eta, fFormulaEta->Eval(pt, eta, phi, e ));115 phi = gRandom->Gaus(phi, fFormulaPhi->Eval(pt, eta, phi, e ));114 eta = gRandom->Gaus(eta, fFormulaEta->Eval(pt, eta, phi, e, candidate)); 115 phi = gRandom->Gaus(phi, fFormulaPhi->Eval(pt, eta, phi, e, candidate)); 116 116 117 117 if(pt <= 0.0) continue; -
modules/Efficiency.cc
r288a5fc r7c5b8f3 95 95 { 96 96 Candidate *candidate; 97 Double_t pt, eta, phi, e , d0, dz, ctgTheta;97 Double_t pt, eta, phi, e; 98 98 99 99 fItInputArray->Reset(); … … 106 106 pt = candidateMomentum.Pt(); 107 107 e = candidateMomentum.E(); 108 d0 = candidate->D0; 109 dz = candidate->DZ; 110 ctgTheta = candidate->CtgTheta; 111 108 112 109 // apply an efficency formula 113 if(gRandom->Uniform() > fFormula->Eval(pt, eta, phi, e, d0, dz, ctgTheta)) continue;110 if(gRandom->Uniform() > fFormula->Eval(pt, eta, phi, e, candidate)) continue; 114 111 115 112 fOutputArray->Add(candidate); -
modules/ModulesLinkDef.h
r288a5fc r7c5b8f3 74 74 #include "modules/VertexFinderDA4D.h" 75 75 #include "modules/DecayFilter.h" 76 #include "modules/ParticleDensity.h" 76 77 #include "modules/ExampleModule.h" 77 78 … … 130 131 #pragma link C++ class VertexFinderDA4D+; 131 132 #pragma link C++ class DecayFilter+; 133 #pragma link C++ class ParticleDensity+; 132 134 #pragma link C++ class ExampleModule+; 133 135 -
modules/MomentumSmearing.cc
r288a5fc r7c5b8f3 106 106 pt = candidateMomentum.Pt(); 107 107 e = candidateMomentum.E(); 108 res = fFormula->Eval(pt, eta, phi, e );108 res = fFormula->Eval(pt, eta, phi, e, candidate); 109 109 110 110 // apply smearing formula -
modules/TrackSmearing.cc
r288a5fc r7c5b8f3 158 158 TLorentzVector beamSpotPosition; 159 159 Candidate *candidate, *mother; 160 Double_t pt, eta, d0, d0Error, trueD0, dz, dzError, trueDZ, p, pError, trueP, ctgTheta, ctgThetaError, trueCtgTheta, phi, phiError, truePhi;160 Double_t pt, eta, e, d0, d0Error, trueD0, dz, dzError, trueDZ, p, pError, trueP, ctgTheta, ctgThetaError, trueCtgTheta, phi, phiError, truePhi; 161 161 Double_t x, y, z, t, px, py, pz, theta; 162 162 Double_t q, r; … … 223 223 pt = momentum.Pt(); 224 224 eta = momentum.Eta(); 225 225 e = momentum.E(); 226 226 227 d0 = trueD0 = candidate->D0; 227 228 dz = trueDZ = candidate->DZ; … … 232 233 233 234 if(fUseD0Formula) 234 d0Error = fD0Formula->Eval(pt, eta );235 d0Error = fD0Formula->Eval(pt, eta, phi, e, candidate); 235 236 else 236 237 { … … 247 248 248 249 if(fUseDZFormula) 249 dzError = fDZFormula->Eval(pt, eta );250 dzError = fDZFormula->Eval(pt, eta, phi, e, candidate); 250 251 else 251 252 { … … 262 263 263 264 if(fUsePFormula) 264 pError = fPFormula->Eval(pt, eta ) * p;265 pError = fPFormula->Eval(pt, eta, phi, e, candidate) * p; 265 266 else 266 267 { … … 277 278 278 279 if(fUseCtgThetaFormula) 279 ctgThetaError = fCtgThetaFormula->Eval(pt, eta );280 ctgThetaError = fCtgThetaFormula->Eval(pt, eta, phi, e, candidate); 280 281 else 281 282 { … … 292 293 293 294 if(fUsePhiFormula) 294 phiError = fPhiFormula->Eval(pt, eta );295 phiError = fPhiFormula->Eval(pt, eta, phi, e, candidate); 295 296 else 296 297 {
Note:
See TracChangeset
for help on using the changeset viewer.