ATLAS Offline Software
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
BTagJetAugmenter Class Reference

#include <BTagJetAugmenter.h>

Collaboration diagram for BTagJetAugmenter:

Public Types

typedef FlavorTagInference::FlipTagConfig FlipTagConfig
 

Public Member Functions

 BTagJetAugmenter (const std::string &associator="BTagTrackToJetAssociator", FlipTagConfig flip=FlipTagConfig::STANDARD, bool useIpxd=false)
 
 ~BTagJetAugmenter ()=default
 
 BTagJetAugmenter (BTagJetAugmenter &&)
 
void augmentJfDr (const xAOD::BTagging &btag) const
 
void augmentIpRatios (const xAOD::BTagging &btag) const
 
void augmentBtagJes (const xAOD::BTagging &target, const xAOD::BTagging &uncalib) const
 
void augmentBtagJes (const xAOD::Jet &target, const xAOD::Jet &uncalib) const
 
void augment (const xAOD::BTagging &btag) const
 
void augment (const xAOD::BTagging &btag, const xAOD::BTagging &uncalibrated_btag) const
 
std::set< std::string > getDecoratorKeys () const
 
std::set< std::string > getAuxInputKeys () const
 

Private Types

typedef SG::AuxElement AE
 

Private Member Functions

bool jfIsDefaults (const xAOD::BTagging &btag) const
 
double getDmesonMass (int secondaryVtx_track_number, float secondaryVtx_charge, const std::vector< TLorentzVector > &secondaryVtx_4momentum_vector, const std::vector< float > &secondaryVtx_charge_vector, const float track_mass, const float track_kaon) const
 
float safelog_prob (float p_up, float p_down) const
 

Private Attributes

AE::ConstAccessor< ElementLink< xAOD::JetContainer > > m_jetLink
 
AE::Decorator< float > m_pt_uncalib
 
AE::Decorator< float > m_eta_uncalib
 
AE::Decorator< float > m_abs_eta_uncalib
 
AE::Decorator< float > m_scalarSumTrackPt
 
AE::ConstAccessor< std::vector< float > > m_ip2d_weightBOfTracks
 
AE::Decorator< int > m_ip2d_nTrks
 
AE::ConstAccessor< float > m_ip2d_pu
 
AE::ConstAccessor< float > m_ip2d_pc
 
AE::ConstAccessor< float > m_ip2d_pb
 
AE::Decorator< char > m_ip2d_isDefaults
 
AE::Decorator< float > m_ip2d_cu
 
AE::Decorator< float > m_ip2d_bu
 
AE::Decorator< float > m_ip2d_bc
 
AE::ConstAccessor< std::vector< float > > m_ip3d_weightBOfTracks
 
AE::Decorator< int > m_ip3d_nTrks
 
AE::ConstAccessor< float > m_ip3d_pu
 
AE::ConstAccessor< float > m_ip3d_pc
 
AE::ConstAccessor< float > m_ip3d_pb
 
AE::Decorator< char > m_ip3d_isDefaults
 
AE::Decorator< float > m_ip3d_cu
 
AE::Decorator< float > m_ip3d_bu
 
AE::Decorator< float > m_ip3d_bc
 
AE::ConstAccessor< float > m_jf_deltaEta
 
AE::ConstAccessor< float > m_jf_deltaPhi
 
AE::ConstAccessor< std::vector< float > > m_jf_fittedPosition
 
AE::ConstAccessor< std::vector< ElementLink< xAOD::BTagVertexContainer > > > m_jf_vertices
 
AE::ConstAccessor< int > m_jf_nVtx
 
AE::ConstAccessor< int > m_jf_nSingleTracks
 
AE::Decorator< char > m_jf_isDefaults
 
AE::Decorator< float > m_jf_deltaR
 
AE::ConstAccessor< std::vector< ElementLink< xAOD::VertexContainer > > > m_sv1_vertices
 
AE::Decorator< int > m_sv1_nVtx
 
AE::Decorator< char > m_sv1_isDefaults
 
AE::ConstAccessor< std::vector< ElementLink< xAOD::TrackParticleContainer > > > m_jet_track_links
 
AE::Decorator< char > m_secondaryVtx_isDefaults
 
AE::Decorator< int > m_secondaryVtx_nTrks
 
AE::Decorator< float > m_secondaryVtx_m
 
AE::Decorator< float > m_secondaryVtx_E
 
AE::Decorator< float > m_secondaryVtx_EFrac
 
AE::Decorator< float > m_secondaryVtx_L3d
 
AE::Decorator< float > m_secondaryVtx_Lxy
 
AE::Decorator< float > m_secondaryVtx_min_trk_flightDirRelEta
 
AE::Decorator< float > m_secondaryVtx_max_trk_flightDirRelEta
 
AE::Decorator< float > m_secondaryVtx_avg_trk_flightDirRelEta
 
AE::Decorator< float > m_DMeson_m
 
AE::Decorator< char > m_DMeson_isDefaults
 
AE::Decorator< float > m_min_trk_flightDirRelEta
 
AE::Decorator< float > m_max_trk_flightDirRelEta
 
AE::Decorator< float > m_avg_trk_flightDirRelEta
 
FlipTagConfig m_flipConfig
 
bool m_useIpxd
 

Detailed Description

Definition at line 15 of file BTagJetAugmenter.h.

Member Typedef Documentation

◆ AE

Definition at line 46 of file BTagJetAugmenter.h.

◆ FlipTagConfig

Definition at line 18 of file BTagJetAugmenter.h.

Constructor & Destructor Documentation

◆ BTagJetAugmenter() [1/2]

BTagJetAugmenter::BTagJetAugmenter ( const std::string &  associator = "BTagTrackToJetAssociator",
FlipTagConfig  flip = FlipTagConfig::STANDARD,
bool  useIpxd = false 
)

Definition at line 61 of file BTagJetAugmenter.cxx.

63  :
64  m_jetLink("jetLink"),
65  m_pt_uncalib("pt_btagJes" + flipString(f)),
66  m_eta_uncalib("eta_btagJes" + flipString(f)),
67  m_abs_eta_uncalib("absEta_btagJes" + flipString(f)),
68  m_scalarSumTrackPt("scalarSumTrackPt" + flipString(f)),
69  m_ip2d_weightBOfTracks(ip2(f) + "_weightBofTracks"),
70  m_ip2d_nTrks(ip2(f) + "_nTrks"),
71  m_ip2d_pu(ip2(f) + "_pu"),
72  m_ip2d_pc(ip2(f) + "_pc"),
73  m_ip2d_pb(ip2(f) + "_pb"),
74  m_ip2d_isDefaults(ip2(f) + "_isDefaults"),
75  m_ip2d_cu(ip2(f) + "_cu"),
76  m_ip2d_bu(ip2(f) + "_bu"),
77  m_ip2d_bc(ip2(f) + "_bc"),
78  m_ip3d_weightBOfTracks(ip3(f) + "_weightBofTracks"),
79  m_ip3d_nTrks(ip3(f) + "_nTrks"),
80  m_ip3d_pu(ip3(f) + "_pu"),
81  m_ip3d_pc(ip3(f) + "_pc"),
82  m_ip3d_pb(ip3(f) + "_pb"),
83  m_ip3d_isDefaults(ip3(f) + "_isDefaults"),
84  m_ip3d_cu(ip3(f) + "_cu"),
85  m_ip3d_bu(ip3(f) + "_bu"),
86  m_ip3d_bc(ip3(f) + "_bc"),
87  m_jf_deltaEta(jf(f) + "_deltaeta"),
88  m_jf_deltaPhi(jf(f) + "_deltaphi"),
89  m_jf_fittedPosition(jf(f) + "_fittedPosition"),
90  m_jf_vertices(jf(f) + "_JFvertices"),
91  m_jf_nVtx(jf(f) + "_nVTX"),
92  m_jf_nSingleTracks(jf(f) + "_nSingleTracks"),
93  m_jf_isDefaults(jf(f) + "_isDefaults"),
94  m_jf_deltaR(jf(f) + "_deltaR"),
95  m_sv1_vertices(sv(f) + "_vertices"),
96  m_sv1_nVtx(sv(f) + "_nVtx"),
97  m_sv1_isDefaults(sv(f) + "_isDefaults"),
98  m_jet_track_links(associator),
99  m_secondaryVtx_isDefaults(jfSvNew(f) + "_isDefaults"),
100  m_secondaryVtx_nTrks(jfSvNew(f) + "_nTracks"),
101  m_secondaryVtx_m(jfSvNew(f) + "_mass"),
102  m_secondaryVtx_E(jfSvNew(f) + "_energy"),
103  m_secondaryVtx_EFrac(jfSvNew(f) + "_energyFraction"),
104  m_secondaryVtx_L3d(jfSvNew(f) + "_displacement3d"),
105  m_secondaryVtx_Lxy(jfSvNew(f) + "_displacement2d"),
106  m_secondaryVtx_min_trk_flightDirRelEta(jfSvNew(f) + "_minimumTrackRelativeEta"),
107  m_secondaryVtx_max_trk_flightDirRelEta(jfSvNew(f) + "_maximumTrackRelativeEta"),
108  m_secondaryVtx_avg_trk_flightDirRelEta(jfSvNew(f) + "_averageTrackRelativeEta"),
109  m_DMeson_m(jfDMeson(f) + "_mass"),
110  m_DMeson_isDefaults(jfDMeson(f) + "_isDefaults"),
111  m_min_trk_flightDirRelEta(jfSvNew(f) + "_minimumAllJetTrackRelativeEta"),
112  m_max_trk_flightDirRelEta(jfSvNew(f) + "_maximumAllJetTrackRelativeEta"),
113  m_avg_trk_flightDirRelEta(jfSvNew(f) + "_averageAllJetTrackRelativeEta"),
114  m_flipConfig(f),
115  m_useIpxd(useIpxd)
116 {
117 }

◆ ~BTagJetAugmenter()

BTagJetAugmenter::~BTagJetAugmenter ( )
default

◆ BTagJetAugmenter() [2/2]

BTagJetAugmenter::BTagJetAugmenter ( BTagJetAugmenter &&  )
default

Member Function Documentation

◆ augment() [1/2]

void BTagJetAugmenter::augment ( const xAOD::BTagging btag) const

Definition at line 244 of file BTagJetAugmenter.cxx.

244  {
245 
246  if (m_useIpxd) {
247  if (m_ip2d_weightBOfTracks(btag).size() > 0) {
248  m_ip2d_isDefaults(btag) = 0;
249  } else {
250  m_ip2d_isDefaults(btag) = 1;
251  }
252  m_ip2d_nTrks(btag) = m_ip2d_weightBOfTracks(btag).size();
253 
254  if (m_ip3d_weightBOfTracks(btag).size() > 0) {
255  m_ip3d_isDefaults(btag) = 0;
256  } else {
257  m_ip3d_isDefaults(btag) = 1;
258  }
259 
260  m_ip3d_nTrks(btag) = m_ip3d_weightBOfTracks(btag).size();
261  augmentIpRatios(btag);
262  }
263 
264  m_jf_isDefaults(btag) = jfIsDefaults(btag);
265  augmentJfDr(btag);
266 
267  if (m_sv1_vertices(btag).size() > 0) {
268  m_sv1_isDefaults(btag) = 0;
269  } else {
270  m_sv1_isDefaults(btag) = 1;
271  }
272 
273  TVector3 flightDir(NAN, NAN, NAN);
274  float jf_phi = NAN;
275  float jf_theta = NAN;
276 
277  int secondary_jf_vtx_index = -1;
278  int secondaryVtx_track_number = -1;
279  float secondaryVtx_charge = 0; // SV charge!!!
280  double secondaryVtx_track_flightDirRelEta_total = NAN;
281  float min_jf_vtx_L3d = NAN;
282 
283  if (m_jf_fittedPosition(btag).size() > 4) {
284  jf_phi = m_jf_fittedPosition(btag).at(3);
285  jf_theta = m_jf_fittedPosition(btag).at(4);
286  flightDir.SetMagThetaPhi(1, jf_theta, jf_phi);
287 
288  for (std::size_t jf_vtx_index = 0; jf_vtx_index < m_jf_vertices(btag).size() && jf_vtx_index < m_jf_fittedPosition(btag).size() - 5; jf_vtx_index++) {
289  float jf_vtx_L3d = m_jf_fittedPosition(btag).at(jf_vtx_index + 5);
290  if ((m_flipConfig==FlipTagConfig::STANDARD and jf_vtx_L3d > 0) ||
291  (m_flipConfig!=FlipTagConfig::STANDARD and jf_vtx_L3d < 0)){
292  if(std::isnan(min_jf_vtx_L3d) || ( std::abs(jf_vtx_L3d) < std::abs(min_jf_vtx_L3d) ) ){
293  secondary_jf_vtx_index = jf_vtx_index;
294  min_jf_vtx_L3d = jf_vtx_L3d;
295 
296  }
297  }
298  }
299 
300  if (secondary_jf_vtx_index >= 0) {
301  secondaryVtx_track_number = 0;
302  secondaryVtx_track_flightDirRelEta_total = 0;
303  m_secondaryVtx_isDefaults(btag) = 0;
304  } else {
305  m_secondaryVtx_isDefaults(btag) = 1;
306  }
307  } else {
308  m_secondaryVtx_isDefaults(btag) = 1;
309  }
310 
311  if (m_flipConfig!=FlipTagConfig::STANDARD and !std::isnan(min_jf_vtx_L3d) ) {
312  min_jf_vtx_L3d=-1*min_jf_vtx_L3d;
313  }
314 
315 
316  m_secondaryVtx_L3d(btag) = min_jf_vtx_L3d;
317  m_secondaryVtx_Lxy(btag) = min_jf_vtx_L3d * sinf(jf_theta);
318 
319  const float track_mass = ParticleConstants::chargedPionMassInMeV; // assume pion mass for all tracks
320  const float track_kaon = ParticleConstants::chargedKaonMassInMeV; // kaon mass
321 
322  unsigned track_number = 0;
323  double track_E_total = 0;
324  float track_pt_total = 0;
325  double min_track_flightDirRelEta = NAN;
326  double max_track_flightDirRelEta = NAN;
327  double track_flightDirRelEta_total = 0;
328 
329  TLorentzVector secondaryVtx_4momentum_total;
330  TLorentzVector secondaryVtx_4momentum_Dmeson;
331 
332  // try to record
333  std::vector<TLorentzVector> secondaryVtx_4momentum_vector;
334  std::vector<float> secondaryVtx_charge_vector;
335 
336  double secondaryVtx_min_track_flightDirRelEta = NAN;
337  double secondaryVtx_max_track_flightDirRelEta = NAN;
338 
339  // Loop over tracks in the jet
340  for (const auto &jet_track_link : m_jet_track_links(btag)) {
341  // Tell clang to optimize assuming that FP operations may trap.
343 
344  const xAOD::TrackParticle &track_particle = **jet_track_link;
345 
346  uint8_t n_pixel_hits;
347  uint8_t n_sct_hits;
348  bool rc = true;
349  rc &= track_particle.summaryValue(n_pixel_hits, xAOD::numberOfPixelHits);
350  rc &= track_particle.summaryValue(n_sct_hits, xAOD::numberOfSCTHits);
351  if (!rc) throw std::runtime_error(
352  "track summary values are missing, can't compute b-tagging variables");
353 
354  // compute scalar track pt sum with all tracks, ignoring the requirement on pixel and SCT hits
355  track_pt_total += track_particle.pt();
356 
357  if (n_pixel_hits + n_sct_hits < 2) continue;
358  track_number++;
359  track_E_total += track_particle.e();
360 
361  double track_flightDirRelEta = NAN;
362  if (!std::isnan(jf_phi)) {
363  TVector3 track_flightDirRelVect = track_particle.p4().Vect();
364  if (track_flightDirRelVect.Perp()) {
365  track_flightDirRelVect.SetTheta(track_flightDirRelVect.Angle(flightDir));
366  track_flightDirRelEta = track_flightDirRelVect.PseudoRapidity();
367  }
368  }
369 
370  track_flightDirRelEta_total += track_flightDirRelEta;
371  if(std::isnan(min_track_flightDirRelEta) || track_flightDirRelEta < min_track_flightDirRelEta){
372  min_track_flightDirRelEta = track_flightDirRelEta;
373  }
374  if (std::isnan(max_track_flightDirRelEta) || track_flightDirRelEta > max_track_flightDirRelEta) {
375  max_track_flightDirRelEta = track_flightDirRelEta;
376  }
377  if (secondary_jf_vtx_index >= 0) {
378  for (const ElementLink<xAOD::TrackParticleContainer>& vertex_track_particle : (**m_jf_vertices(btag).at(secondary_jf_vtx_index)).track_links()) {
379  if (*vertex_track_particle == &track_particle) {
380  secondaryVtx_charge+=track_particle.charge(); // calculate the total charge
381  secondaryVtx_track_number++;
382  TLorentzVector track_fourVector;
383  track_fourVector.SetVectM(track_particle.p4().Vect(), track_mass);
384  secondaryVtx_4momentum_total += track_fourVector;
385  secondaryVtx_4momentum_vector.push_back(track_fourVector);
386  secondaryVtx_charge_vector.push_back(track_particle.charge());
387  secondaryVtx_track_flightDirRelEta_total += track_flightDirRelEta;
388  if (std::isnan(secondaryVtx_min_track_flightDirRelEta) || track_flightDirRelEta < secondaryVtx_min_track_flightDirRelEta) {
389  secondaryVtx_min_track_flightDirRelEta = track_flightDirRelEta;
390  }
391  if (std::isnan(secondaryVtx_max_track_flightDirRelEta) || track_flightDirRelEta > secondaryVtx_max_track_flightDirRelEta) {
392  secondaryVtx_max_track_flightDirRelEta = track_flightDirRelEta;
393  }
394  }
395  }
396  }
397  }
398  m_scalarSumTrackPt(btag) = track_pt_total;
399  m_secondaryVtx_nTrks(btag) = secondaryVtx_track_number;
400 
401  // Here begins a few blocks where the decoration depends on the
402  // schema. I would like to move a number of values that were
403  // previously stored as double to float.
404  {
405  double m = NAN;
406  double E = NAN;
407  double EFrac = NAN;
408  if (secondaryVtx_track_number >= 0) {
409  m = secondaryVtx_4momentum_total.M();
410  E = secondaryVtx_4momentum_total.E();
411  EFrac = E / track_E_total;
412  }
413  m_secondaryVtx_m(btag) = m;
414  m_secondaryVtx_E(btag) = E;
415  m_secondaryVtx_EFrac(btag) = EFrac;
416  // D meson reconstruction
417  m_DMeson_m(btag) = m;
418  m_DMeson_isDefaults(btag) = 1; // 1 for failing reconstruction; 0 for passing reconstruction
419  double tempM_forDmeson = getDmesonMass(secondaryVtx_track_number, secondaryVtx_charge, secondaryVtx_4momentum_vector,secondaryVtx_charge_vector, track_mass, track_kaon);
420 
421  if(tempM_forDmeson>-98){
422  m_DMeson_m(btag) = tempM_forDmeson;
423  m_DMeson_isDefaults(btag) = 0;
424  }else{
425  m_DMeson_isDefaults(btag) = 1;
426  }
427 
428  }
429  if(secondaryVtx_track_number > 0){
430  double min = secondaryVtx_min_track_flightDirRelEta;
431  double max = secondaryVtx_max_track_flightDirRelEta;
432  double avg = secondaryVtx_track_flightDirRelEta_total / secondaryVtx_track_number;
436  }else{
440  }
441  if(track_number > 0){
442  double min = min_track_flightDirRelEta;
443  double max = max_track_flightDirRelEta;
444  double avg = track_flightDirRelEta_total / track_number;
448  }else{
449  m_min_trk_flightDirRelEta(btag) = NAN;
450  m_max_trk_flightDirRelEta(btag) = NAN;
451  m_avg_trk_flightDirRelEta(btag) = NAN;
452  }
453 
454 }

◆ augment() [2/2]

void BTagJetAugmenter::augment ( const xAOD::BTagging btag,
const xAOD::BTagging uncalibrated_btag 
) const

Definition at line 173 of file BTagJetAugmenter.cxx.

174  {
175 
176  augmentBtagJes(jet, uncalibrated_jet);
177 
178  // pass off to calibrated jet function
179  augment(jet);
180 }

◆ augmentBtagJes() [1/2]

void BTagJetAugmenter::augmentBtagJes ( const xAOD::BTagging target,
const xAOD::BTagging uncalib 
) const

Definition at line 224 of file BTagJetAugmenter.cxx.

225  {
226  auto uncalib_link = m_jetLink(uncalib);
227  if (!uncalib_link.isValid()) {
228  throw std::runtime_error("missing jetLink");
229  }
230  const xAOD::Jet& uncalib_jet = **uncalib_link;
231 
232  m_pt_uncalib(target) = uncalib_jet.pt();
233  m_eta_uncalib(target) = uncalib_jet.eta();
234  m_abs_eta_uncalib(target) = std::abs(uncalib_jet.eta());
235 }

◆ augmentBtagJes() [2/2]

void BTagJetAugmenter::augmentBtagJes ( const xAOD::Jet target,
const xAOD::Jet uncalib 
) const

Definition at line 237 of file BTagJetAugmenter.cxx.

238  {
239  m_pt_uncalib(target) = uncalib.pt();
240  m_eta_uncalib(target) = uncalib.eta();
241  m_abs_eta_uncalib(target) = std::abs(uncalib.eta());
242 }

◆ augmentIpRatios()

void BTagJetAugmenter::augmentIpRatios ( const xAOD::BTagging btag) const

Definition at line 212 of file BTagJetAugmenter.cxx.

212  {
213 
214  m_ip2d_cu(btag) = safelog_prob(m_ip2d_pc(btag) , m_ip2d_pu(btag));
215  m_ip2d_bu(btag) = safelog_prob(m_ip2d_pb(btag) , m_ip2d_pu(btag));
216  m_ip2d_bc(btag) = safelog_prob(m_ip2d_pb(btag) , m_ip2d_pc(btag));
217 
218  m_ip3d_cu(btag) = safelog_prob(m_ip3d_pc(btag) , m_ip3d_pu(btag));
219  m_ip3d_bu(btag) = safelog_prob(m_ip3d_pb(btag) , m_ip3d_pu(btag));
220  m_ip3d_bc(btag) = safelog_prob(m_ip3d_pb(btag) , m_ip3d_pc(btag));
221 
222 }

◆ augmentJfDr()

void BTagJetAugmenter::augmentJfDr ( const xAOD::BTagging btag) const

Definition at line 182 of file BTagJetAugmenter.cxx.

182  {
183  if (jfIsDefaults(btag)) {
184  m_jf_deltaR(btag) = NAN;
185  } else {
186  m_jf_deltaR(btag) = std::hypot(m_jf_deltaEta(btag), m_jf_deltaPhi(btag));
187  }
188 }

◆ getAuxInputKeys()

std::set< std::string > BTagJetAugmenter::getAuxInputKeys ( ) const

Definition at line 163 of file BTagJetAugmenter.cxx.

163  {
164  const auto& type_registry = SG::AuxTypeRegistry::instance();
165  std::set<std::string> keys;
166  for (const auto& auxid: {
167  m_jetLink.auxid()}) {
168  keys.insert(type_registry.getName(auxid));
169  }
170  return keys;
171 }

◆ getDecoratorKeys()

std::set< std::string > BTagJetAugmenter::getDecoratorKeys ( ) const

Definition at line 122 of file BTagJetAugmenter.cxx.

122  {
123  const auto& type_registry = SG::AuxTypeRegistry::instance();
124  std::set<std::string> keys;
125  for (const auto& auxid: {
126  m_pt_uncalib.auxid(),
127  m_eta_uncalib.auxid(),
128  m_abs_eta_uncalib.auxid(),
129  m_scalarSumTrackPt.auxid(),
130  m_ip2d_nTrks.auxid(),
131  m_ip2d_isDefaults.auxid(),
132  m_ip2d_cu.auxid(),
133  m_ip2d_bu.auxid(),
134  m_ip2d_bc.auxid(),
135  m_ip3d_nTrks.auxid(),
136  m_ip3d_isDefaults.auxid(),
137  m_ip3d_cu.auxid(),
138  m_ip3d_bu.auxid(),
139  m_ip3d_bc.auxid(),
140  m_jf_isDefaults.auxid(),
141  m_jf_deltaR.auxid(),
142  m_sv1_isDefaults.auxid(),
144  m_secondaryVtx_nTrks.auxid(),
145  m_secondaryVtx_m.auxid(),
146  m_secondaryVtx_E.auxid(),
147  m_secondaryVtx_EFrac.auxid(),
148  m_secondaryVtx_L3d.auxid(),
149  m_secondaryVtx_Lxy.auxid(),
153  m_DMeson_m.auxid(),
154  m_DMeson_isDefaults.auxid(),
157  m_avg_trk_flightDirRelEta.auxid()}) {
158  keys.insert(type_registry.getName(auxid));
159  }
160  return keys;
161 }

◆ getDmesonMass()

double BTagJetAugmenter::getDmesonMass ( int  secondaryVtx_track_number,
float  secondaryVtx_charge,
const std::vector< TLorentzVector > &  secondaryVtx_4momentum_vector,
const std::vector< float > &  secondaryVtx_charge_vector,
const float  track_mass,
const float  track_kaon 
) const
private

Definition at line 461 of file BTagJetAugmenter.cxx.

461  {
462 
463  double DmesonMass = -99.0;
464  const float Dmeson_reference = 1864.83;
465  const float Dmeson_upper = 2200.0;
466  const float Dmeson_lower = 1000.0;
467  TLorentzVector secondaryVtx_4momentum_Dmeson;
468 
469  // now reconstruct D mesons
470  if(secondaryVtx_track_number == 3 && abs(secondaryVtx_charge) == 1){ // D+ -> K- pi+ pi+, and charge conjugate
471  std::vector<TLorentzVector>::const_iterator secondaryVtx_4momentum_Iter = secondaryVtx_4momentum_vector.begin();
472  for (std::vector<float>::const_iterator secondaryVtx_charge_Iter = secondaryVtx_charge_vector.begin();
473  secondaryVtx_charge_Iter != secondaryVtx_charge_vector.end();
474  ++secondaryVtx_charge_Iter) {
475  TLorentzVector track_fourVector_new;
476  if((secondaryVtx_charge==1 && (*secondaryVtx_charge_Iter)==-1) || (secondaryVtx_charge==-1 && (*secondaryVtx_charge_Iter)==1)){
477  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_kaon);
478  } else {
479  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_mass);
480  }
481  secondaryVtx_4momentum_Dmeson += track_fourVector_new;
482  ++secondaryVtx_4momentum_Iter;
483  }
484  if(secondaryVtx_4momentum_Dmeson.M()>Dmeson_lower && secondaryVtx_4momentum_Dmeson.M()<Dmeson_upper){
485  DmesonMass = secondaryVtx_4momentum_Dmeson.M();
486  }
487  } else if(secondaryVtx_track_number == 2 && secondaryVtx_charge == 0){ // D0 -> K- pi+
488  std::vector<TLorentzVector>::const_iterator secondaryVtx_4momentum_Iter = secondaryVtx_4momentum_vector.begin();
489  for (std::vector<float>::const_iterator secondaryVtx_charge_Iter = secondaryVtx_charge_vector.begin();
490  secondaryVtx_charge_Iter != secondaryVtx_charge_vector.end();
491  ++secondaryVtx_charge_Iter) {
492  TLorentzVector track_fourVector_new;
493  if((*secondaryVtx_charge_Iter)==-1){
494  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_kaon);
495  } else {
496  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_mass);
497  }
498  secondaryVtx_4momentum_Dmeson += track_fourVector_new;
499  ++secondaryVtx_4momentum_Iter;
500  }
501  if(secondaryVtx_4momentum_Dmeson.M()>Dmeson_lower && secondaryVtx_4momentum_Dmeson.M()<Dmeson_upper){
502  DmesonMass = secondaryVtx_4momentum_Dmeson.M();
503  }
504  } else if(secondaryVtx_track_number == 4 && secondaryVtx_charge == 0){ // D0 -> K- pi+ pi- pi+
505  std::vector<TLorentzVector>::const_iterator secondaryVtx_4momentum_Iter = secondaryVtx_4momentum_vector.begin();
506  bool KaonFlag = false; //if Kaon is already taken: KaonFlag = true
507  for (std::vector<float>::const_iterator secondaryVtx_charge_Iter = secondaryVtx_charge_vector.begin();
508  secondaryVtx_charge_Iter != secondaryVtx_charge_vector.end();
509  ++secondaryVtx_charge_Iter) {
510  TLorentzVector track_fourVector_new;
511  if((*secondaryVtx_charge_Iter)==-1 && KaonFlag == false){
512  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_kaon);
513  KaonFlag=true;
514  } else {
515  track_fourVector_new.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_mass);
516  }
517  secondaryVtx_4momentum_Dmeson += track_fourVector_new;
518  ++secondaryVtx_4momentum_Iter;
519  }
520  double mDmeson_1 = secondaryVtx_4momentum_Dmeson.M();
521  secondaryVtx_4momentum_Iter = secondaryVtx_4momentum_vector.begin();
522  KaonFlag = false;
523  TLorentzVector secondaryVtx_4momentum_Dmeson_new;
524  for(std::vector<float>::const_iterator secondaryVtx_charge_Iter = secondaryVtx_charge_vector.begin();
525  secondaryVtx_charge_Iter != secondaryVtx_charge_vector.end();
526  ++secondaryVtx_charge_Iter) {
527  TLorentzVector track_fourVector_new2;
528  if((*secondaryVtx_charge_Iter)==-1 && KaonFlag == false){
529  KaonFlag=true;
530  } else if ((*secondaryVtx_charge_Iter)==-1 && KaonFlag == true){
531  track_fourVector_new2.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_kaon);
532  } else{
533  track_fourVector_new2.SetVectM((*secondaryVtx_4momentum_Iter).Vect(), track_mass);
534  }
535  secondaryVtx_4momentum_Dmeson_new += track_fourVector_new2;
536  ++secondaryVtx_4momentum_Iter;
537  }
538  double mDmeson_2 = secondaryVtx_4momentum_Dmeson_new.M();
539  if (std::abs(mDmeson_1 - Dmeson_reference)<=std::abs(mDmeson_2 - Dmeson_reference) && mDmeson_1>Dmeson_lower && mDmeson_1<Dmeson_upper){
540  DmesonMass=mDmeson_1;
541  }
542  else if(std::abs(mDmeson_2 - Dmeson_reference)<=std::abs(mDmeson_1 - Dmeson_reference) && mDmeson_2>Dmeson_lower && mDmeson_2<Dmeson_upper){
543  DmesonMass=mDmeson_2;
544  }
545  }
546 
547  return DmesonMass;
548 }

◆ jfIsDefaults()

bool BTagJetAugmenter::jfIsDefaults ( const xAOD::BTagging btag) const
private

Definition at line 457 of file BTagJetAugmenter.cxx.

457  {
458  return !(m_jf_vertices(btag).size() > 0 && (m_jf_nVtx(btag) > 0 || m_jf_nSingleTracks(btag) > 0));
459 }

◆ safelog_prob()

float BTagJetAugmenter::safelog_prob ( float  p_up,
float  p_down 
) const
private

Definition at line 191 of file BTagJetAugmenter.cxx.

191  {
192 
193  if( std::isnan(p_up) ){
194  return -1000.0;
195  }
196 
197  if(std::isnan(p_down) ){
198  return -1000.0;
199  }
200 
201  if(p_down < 0.0000000000000000000001 && p_up > p_down){
202  return 1000.0;
203  }
204 
205  if(p_up < 0.0000000000000000000001){
206  return -1000.0;
207  }
208 
209  return std::log(p_up /p_down);
210 }

Member Data Documentation

◆ m_abs_eta_uncalib

AE::Decorator<float> BTagJetAugmenter::m_abs_eta_uncalib
private

Definition at line 52 of file BTagJetAugmenter.h.

◆ m_avg_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_avg_trk_flightDirRelEta
private

Definition at line 106 of file BTagJetAugmenter.h.

◆ m_DMeson_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_DMeson_isDefaults
private

Definition at line 102 of file BTagJetAugmenter.h.

◆ m_DMeson_m

AE::Decorator<float> BTagJetAugmenter::m_DMeson_m
private

Definition at line 101 of file BTagJetAugmenter.h.

◆ m_eta_uncalib

AE::Decorator<float> BTagJetAugmenter::m_eta_uncalib
private

Definition at line 51 of file BTagJetAugmenter.h.

◆ m_flipConfig

FlipTagConfig BTagJetAugmenter::m_flipConfig
private

Definition at line 108 of file BTagJetAugmenter.h.

◆ m_ip2d_bc

AE::Decorator<float> BTagJetAugmenter::m_ip2d_bc
private

Definition at line 64 of file BTagJetAugmenter.h.

◆ m_ip2d_bu

AE::Decorator<float> BTagJetAugmenter::m_ip2d_bu
private

Definition at line 63 of file BTagJetAugmenter.h.

◆ m_ip2d_cu

AE::Decorator<float> BTagJetAugmenter::m_ip2d_cu
private

Definition at line 62 of file BTagJetAugmenter.h.

◆ m_ip2d_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_ip2d_isDefaults
private

Definition at line 61 of file BTagJetAugmenter.h.

◆ m_ip2d_nTrks

AE::Decorator<int> BTagJetAugmenter::m_ip2d_nTrks
private

Definition at line 57 of file BTagJetAugmenter.h.

◆ m_ip2d_pb

AE::ConstAccessor<float> BTagJetAugmenter::m_ip2d_pb
private

Definition at line 60 of file BTagJetAugmenter.h.

◆ m_ip2d_pc

AE::ConstAccessor<float> BTagJetAugmenter::m_ip2d_pc
private

Definition at line 59 of file BTagJetAugmenter.h.

◆ m_ip2d_pu

AE::ConstAccessor<float> BTagJetAugmenter::m_ip2d_pu
private

Definition at line 58 of file BTagJetAugmenter.h.

◆ m_ip2d_weightBOfTracks

AE::ConstAccessor<std::vector<float> > BTagJetAugmenter::m_ip2d_weightBOfTracks
private

Definition at line 56 of file BTagJetAugmenter.h.

◆ m_ip3d_bc

AE::Decorator<float> BTagJetAugmenter::m_ip3d_bc
private

Definition at line 74 of file BTagJetAugmenter.h.

◆ m_ip3d_bu

AE::Decorator<float> BTagJetAugmenter::m_ip3d_bu
private

Definition at line 73 of file BTagJetAugmenter.h.

◆ m_ip3d_cu

AE::Decorator<float> BTagJetAugmenter::m_ip3d_cu
private

Definition at line 72 of file BTagJetAugmenter.h.

◆ m_ip3d_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_ip3d_isDefaults
private

Definition at line 71 of file BTagJetAugmenter.h.

◆ m_ip3d_nTrks

AE::Decorator<int> BTagJetAugmenter::m_ip3d_nTrks
private

Definition at line 67 of file BTagJetAugmenter.h.

◆ m_ip3d_pb

AE::ConstAccessor<float> BTagJetAugmenter::m_ip3d_pb
private

Definition at line 70 of file BTagJetAugmenter.h.

◆ m_ip3d_pc

AE::ConstAccessor<float> BTagJetAugmenter::m_ip3d_pc
private

Definition at line 69 of file BTagJetAugmenter.h.

◆ m_ip3d_pu

AE::ConstAccessor<float> BTagJetAugmenter::m_ip3d_pu
private

Definition at line 68 of file BTagJetAugmenter.h.

◆ m_ip3d_weightBOfTracks

AE::ConstAccessor<std::vector<float> > BTagJetAugmenter::m_ip3d_weightBOfTracks
private

Definition at line 66 of file BTagJetAugmenter.h.

◆ m_jet_track_links

AE::ConstAccessor<std::vector<ElementLink<xAOD::TrackParticleContainer> > > BTagJetAugmenter::m_jet_track_links
private

Definition at line 89 of file BTagJetAugmenter.h.

◆ m_jetLink

AE::ConstAccessor<ElementLink<xAOD::JetContainer> > BTagJetAugmenter::m_jetLink
private

Definition at line 48 of file BTagJetAugmenter.h.

◆ m_jf_deltaEta

AE::ConstAccessor<float> BTagJetAugmenter::m_jf_deltaEta
private

Definition at line 76 of file BTagJetAugmenter.h.

◆ m_jf_deltaPhi

AE::ConstAccessor<float> BTagJetAugmenter::m_jf_deltaPhi
private

Definition at line 77 of file BTagJetAugmenter.h.

◆ m_jf_deltaR

AE::Decorator<float> BTagJetAugmenter::m_jf_deltaR
private

Definition at line 83 of file BTagJetAugmenter.h.

◆ m_jf_fittedPosition

AE::ConstAccessor<std::vector<float> > BTagJetAugmenter::m_jf_fittedPosition
private

Definition at line 78 of file BTagJetAugmenter.h.

◆ m_jf_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_jf_isDefaults
private

Definition at line 82 of file BTagJetAugmenter.h.

◆ m_jf_nSingleTracks

AE::ConstAccessor<int> BTagJetAugmenter::m_jf_nSingleTracks
private

Definition at line 81 of file BTagJetAugmenter.h.

◆ m_jf_nVtx

AE::ConstAccessor<int> BTagJetAugmenter::m_jf_nVtx
private

Definition at line 80 of file BTagJetAugmenter.h.

◆ m_jf_vertices

AE::ConstAccessor<std::vector<ElementLink<xAOD::BTagVertexContainer> > > BTagJetAugmenter::m_jf_vertices
private

Definition at line 79 of file BTagJetAugmenter.h.

◆ m_max_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_max_trk_flightDirRelEta
private

Definition at line 105 of file BTagJetAugmenter.h.

◆ m_min_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_min_trk_flightDirRelEta
private

Definition at line 104 of file BTagJetAugmenter.h.

◆ m_pt_uncalib

AE::Decorator<float> BTagJetAugmenter::m_pt_uncalib
private

Definition at line 50 of file BTagJetAugmenter.h.

◆ m_scalarSumTrackPt

AE::Decorator<float> BTagJetAugmenter::m_scalarSumTrackPt
private

Definition at line 54 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_avg_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_avg_trk_flightDirRelEta
private

Definition at line 99 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_E

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_E
private

Definition at line 93 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_EFrac

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_EFrac
private

Definition at line 94 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_secondaryVtx_isDefaults
private

Definition at line 90 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_L3d

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_L3d
private

Definition at line 95 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_Lxy

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_Lxy
private

Definition at line 96 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_m

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_m
private

Definition at line 92 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_max_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_max_trk_flightDirRelEta
private

Definition at line 98 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_min_trk_flightDirRelEta

AE::Decorator<float> BTagJetAugmenter::m_secondaryVtx_min_trk_flightDirRelEta
private

Definition at line 97 of file BTagJetAugmenter.h.

◆ m_secondaryVtx_nTrks

AE::Decorator<int> BTagJetAugmenter::m_secondaryVtx_nTrks
private

Definition at line 91 of file BTagJetAugmenter.h.

◆ m_sv1_isDefaults

AE::Decorator<char> BTagJetAugmenter::m_sv1_isDefaults
private

Definition at line 87 of file BTagJetAugmenter.h.

◆ m_sv1_nVtx

AE::Decorator<int> BTagJetAugmenter::m_sv1_nVtx
private

Definition at line 86 of file BTagJetAugmenter.h.

◆ m_sv1_vertices

AE::ConstAccessor<std::vector<ElementLink<xAOD::VertexContainer> > > BTagJetAugmenter::m_sv1_vertices
private

Definition at line 85 of file BTagJetAugmenter.h.

◆ m_useIpxd

bool BTagJetAugmenter::m_useIpxd
private

Definition at line 109 of file BTagJetAugmenter.h.


The documentation for this class was generated from the following files:
BTagJetAugmenter::m_min_trk_flightDirRelEta
AE::Decorator< float > m_min_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:104
xAOD::TrackParticle_v1::pt
virtual double pt() const override final
The transverse momentum ( ) of the particle.
Definition: TrackParticle_v1.cxx:74
CXXUTILS_TRAPPING_FP
#define CXXUTILS_TRAPPING_FP
Definition: trapping_fp.h:24
BTagJetAugmenter::m_abs_eta_uncalib
AE::Decorator< float > m_abs_eta_uncalib
Definition: BTagJetAugmenter.h:52
BTagJetAugmenter::m_eta_uncalib
AE::Decorator< float > m_eta_uncalib
Definition: BTagJetAugmenter.h:51
BTagJetAugmenter::m_jf_deltaR
AE::Decorator< float > m_jf_deltaR
Definition: BTagJetAugmenter.h:83
BTagJetAugmenter::m_ip2d_bc
AE::Decorator< float > m_ip2d_bc
Definition: BTagJetAugmenter.h:64
BTagJetAugmenter::m_ip3d_nTrks
AE::Decorator< int > m_ip3d_nTrks
Definition: BTagJetAugmenter.h:67
BTagJetAugmenter::m_sv1_vertices
AE::ConstAccessor< std::vector< ElementLink< xAOD::VertexContainer > > > m_sv1_vertices
Definition: BTagJetAugmenter.h:85
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:558
BTagJetAugmenter::m_ip2d_pu
AE::ConstAccessor< float > m_ip2d_pu
Definition: BTagJetAugmenter.h:58
SG::AuxTypeRegistry::instance
static AuxTypeRegistry & instance()
Return the singleton registry instance.
Definition: AuxTypeRegistry.cxx:639
xAOD::TrackParticle_v1::charge
float charge() const
Returns the charge.
Definition: TrackParticle_v1.cxx:151
BTagJetAugmenter::m_ip3d_isDefaults
AE::Decorator< char > m_ip3d_isDefaults
Definition: BTagJetAugmenter.h:71
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
BTagJetAugmenter::m_jet_track_links
AE::ConstAccessor< std::vector< ElementLink< xAOD::TrackParticleContainer > > > m_jet_track_links
Definition: BTagJetAugmenter.h:89
BTagJetAugmenter::augmentBtagJes
void augmentBtagJes(const xAOD::BTagging &target, const xAOD::BTagging &uncalib) const
Definition: BTagJetAugmenter.cxx:224
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
xAOD::TrackParticle_v1::summaryValue
bool summaryValue(uint8_t &value, const SummaryType &information) const
Accessor for TrackSummary values.
Definition: TrackParticle_v1.cxx:737
ParticleConstants::PDG2011::chargedKaonMassInMeV
constexpr double chargedKaonMassInMeV
the mass of the charged kaon (in MeV)
Definition: ParticleConstants.h:50
BTagJetAugmenter::m_jf_nVtx
AE::ConstAccessor< int > m_jf_nVtx
Definition: BTagJetAugmenter.h:80
BTagJetAugmenter::m_ip2d_cu
AE::Decorator< float > m_ip2d_cu
Definition: BTagJetAugmenter.h:62
BTagJetAugmenter::m_sv1_nVtx
AE::Decorator< int > m_sv1_nVtx
Definition: BTagJetAugmenter.h:86
BTagJetAugmenter::m_ip2d_pc
AE::ConstAccessor< float > m_ip2d_pc
Definition: BTagJetAugmenter.h:59
xAOD::numberOfPixelHits
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
Definition: TrackingPrimitives.h:260
BTagJetAugmenter::jfIsDefaults
bool jfIsDefaults(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:457
BTagJetAugmenter::augment
void augment(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:244
BTagJetAugmenter::augmentIpRatios
void augmentIpRatios(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:212
BTagJetAugmenter::m_ip3d_pu
AE::ConstAccessor< float > m_ip3d_pu
Definition: BTagJetAugmenter.h:68
BTagJetAugmenter::m_ip3d_bu
AE::Decorator< float > m_ip3d_bu
Definition: BTagJetAugmenter.h:73
ParticleConstants::PDG2011::chargedPionMassInMeV
constexpr double chargedPionMassInMeV
the mass of the charged pion (in MeV)
Definition: ParticleConstants.h:41
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
BTagJetAugmenter::m_ip2d_bu
AE::Decorator< float > m_ip2d_bu
Definition: BTagJetAugmenter.h:63
xAOD::TrackParticle_v1::p4
virtual FourMom_t p4() const override final
The full 4-momentum of the particle.
Definition: TrackParticle_v1.cxx:130
BTagJetAugmenter::m_secondaryVtx_m
AE::Decorator< float > m_secondaryVtx_m
Definition: BTagJetAugmenter.h:92
BTagJetAugmenter::m_ip2d_weightBOfTracks
AE::ConstAccessor< std::vector< float > > m_ip2d_weightBOfTracks
Definition: BTagJetAugmenter.h:56
BTagJetAugmenter::getDmesonMass
double getDmesonMass(int secondaryVtx_track_number, float secondaryVtx_charge, const std::vector< TLorentzVector > &secondaryVtx_4momentum_vector, const std::vector< float > &secondaryVtx_charge_vector, const float track_mass, const float track_kaon) const
Definition: BTagJetAugmenter.cxx:461
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
BTagJetAugmenter::m_ip2d_isDefaults
AE::Decorator< char > m_ip2d_isDefaults
Definition: BTagJetAugmenter.h:61
BTagJetAugmenter::m_jf_vertices
AE::ConstAccessor< std::vector< ElementLink< xAOD::BTagVertexContainer > > > m_jf_vertices
Definition: BTagJetAugmenter.h:79
BTagJetAugmenter::m_jf_nSingleTracks
AE::ConstAccessor< int > m_jf_nSingleTracks
Definition: BTagJetAugmenter.h:81
BTagJetAugmenter::augmentJfDr
void augmentJfDr(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:182
BTagJetAugmenter::m_ip3d_bc
AE::Decorator< float > m_ip3d_bc
Definition: BTagJetAugmenter.h:74
BTagJetAugmenter::m_ip3d_pb
AE::ConstAccessor< float > m_ip3d_pb
Definition: BTagJetAugmenter.h:70
Recovery.avg
def avg(a, b)
Definition: Recovery.py:79
BTagJetAugmenter::m_jf_deltaEta
AE::ConstAccessor< float > m_jf_deltaEta
Definition: BTagJetAugmenter.h:76
BTagJetAugmenter::m_secondaryVtx_L3d
AE::Decorator< float > m_secondaryVtx_L3d
Definition: BTagJetAugmenter.h:95
hist_file_dump.f
f
Definition: hist_file_dump.py:140
BTagJetAugmenter::m_secondaryVtx_avg_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_avg_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:99
BTagJetAugmenter::m_scalarSumTrackPt
AE::Decorator< float > m_scalarSumTrackPt
Definition: BTagJetAugmenter.h:54
BTagJetAugmenter::m_secondaryVtx_Lxy
AE::Decorator< float > m_secondaryVtx_Lxy
Definition: BTagJetAugmenter.h:96
BTagJetAugmenter::m_ip3d_pc
AE::ConstAccessor< float > m_ip3d_pc
Definition: BTagJetAugmenter.h:69
BTagJetAugmenter::m_pt_uncalib
AE::Decorator< float > m_pt_uncalib
Definition: BTagJetAugmenter.h:50
xAOD::Jet_v1::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
Definition: Jet_v1.cxx:49
BTagJetAugmenter::m_ip2d_nTrks
AE::Decorator< int > m_ip2d_nTrks
Definition: BTagJetAugmenter.h:57
BTagJetAugmenter::m_secondaryVtx_min_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_min_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:97
BTagJetAugmenter::m_ip2d_pb
AE::ConstAccessor< float > m_ip2d_pb
Definition: BTagJetAugmenter.h:60
BTagJetAugmenter::m_secondaryVtx_nTrks
AE::Decorator< int > m_secondaryVtx_nTrks
Definition: BTagJetAugmenter.h:91
VP1PartSpect::E
@ E
Definition: VP1PartSpectFlags.h:21
BTagJetAugmenter::m_secondaryVtx_E
AE::Decorator< float > m_secondaryVtx_E
Definition: BTagJetAugmenter.h:93
xAOD::TrackParticle_v1::e
virtual double e() const override final
The total energy of the particle.
Definition: TrackParticle_v1.cxx:110
BTagJetAugmenter::m_ip3d_weightBOfTracks
AE::ConstAccessor< std::vector< float > > m_ip3d_weightBOfTracks
Definition: BTagJetAugmenter.h:66
BTagJetAugmenter::m_secondaryVtx_isDefaults
AE::Decorator< char > m_secondaryVtx_isDefaults
Definition: BTagJetAugmenter.h:90
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
BTagJetAugmenter::m_DMeson_m
AE::Decorator< float > m_DMeson_m
Definition: BTagJetAugmenter.h:101
BTagJetAugmenter::m_flipConfig
FlipTagConfig m_flipConfig
Definition: BTagJetAugmenter.h:108
FlavorTagInference::FlipTagConfig::STANDARD
@ STANDARD
copySelective.target
string target
Definition: copySelective.py:36
BTagJetAugmenter::m_ip3d_cu
AE::Decorator< float > m_ip3d_cu
Definition: BTagJetAugmenter.h:72
LArCellConditions.sv
bool sv
Definition: LArCellConditions.py:45
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
xAOD::numberOfSCTHits
@ numberOfSCTHits
number of hits in SCT [unit8_t].
Definition: TrackingPrimitives.h:269
BTagJetAugmenter::m_jf_isDefaults
AE::Decorator< char > m_jf_isDefaults
Definition: BTagJetAugmenter.h:82
BTagJetAugmenter::m_sv1_isDefaults
AE::Decorator< char > m_sv1_isDefaults
Definition: BTagJetAugmenter.h:87
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:801
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
BTagJetAugmenter::m_secondaryVtx_max_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_max_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:98
BTagJetAugmenter::m_secondaryVtx_EFrac
AE::Decorator< float > m_secondaryVtx_EFrac
Definition: BTagJetAugmenter.h:94
BTagJetAugmenter::m_max_trk_flightDirRelEta
AE::Decorator< float > m_max_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:105
xAOD::Jet_v1::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
Definition: Jet_v1.cxx:44
BTagJetAugmenter::safelog_prob
float safelog_prob(float p_up, float p_down) const
Definition: BTagJetAugmenter.cxx:191
BTagJetAugmenter::m_DMeson_isDefaults
AE::Decorator< char > m_DMeson_isDefaults
Definition: BTagJetAugmenter.h:102
BTagJetAugmenter::m_jf_deltaPhi
AE::ConstAccessor< float > m_jf_deltaPhi
Definition: BTagJetAugmenter.h:77
BTagJetAugmenter::m_jetLink
AE::ConstAccessor< ElementLink< xAOD::JetContainer > > m_jetLink
Definition: BTagJetAugmenter.h:48
BTagJetAugmenter::m_jf_fittedPosition
AE::ConstAccessor< std::vector< float > > m_jf_fittedPosition
Definition: BTagJetAugmenter.h:78
python.trfValidateRootFile.rc
rc
Definition: trfValidateRootFile.py:375
BTagJetAugmenter::m_useIpxd
bool m_useIpxd
Definition: BTagJetAugmenter.h:109
python.SystemOfUnits.m
float m
Definition: SystemOfUnits.py:106
BTagJetAugmenter::m_avg_trk_flightDirRelEta
AE::Decorator< float > m_avg_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:106