Particles.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
8 
9 namespace boca
10 {
11 
12 std::vector<Particle> CopyIfRelativeIs(std::vector<Particle> const& particles, Relative relative, Id id);
13 
14 std::vector<Particle> CopyIfRelativeIs(const std::vector<boca::Particle>& particles, boca::Relative relative, std::vector<Id> const& ids);
15 
16 std::vector<Particle> CopyIfParticle(std::vector<Particle> const& particles, Id id);
17 
18 std::vector<Particle> CopyIfParticles(std::vector<Particle> const& particles, std::vector<Id> const& ids);
19 
20 std::vector<Particle> CopyIfNeutrino(std::vector<Particle> const& particles);
21 
22 std::vector<Particle> CopyIfLepton(std::vector<Particle> const& particles);
23 
24 std::vector<Particle> CopyIfExactParticle(std::vector<Particle> const& particles, int id);
25 
26 std::vector<Particle> RemoveIfExactParticle(std::vector<Particle> particles, int id);
27 
28 std::vector<Particle> CopyIfFamily(std::vector<Particle> const& particles, Id id, Id mother_id);
29 
34 std::vector<Particle> RemoveIfGrandFamily(std::vector<Particle> const& particles, Id id, Id grand_mother_id);
35 
36 std::vector<Particle> CopyIfParticle(std::vector<Particle> const& particles, Id id);
37 
38 std::vector<Particle> RemoveIfParticle(std::vector<Particle> particles, Id id);
39 
40 std::vector<Particle> CopyIfMother(std::vector<Particle> const& particles, Id mother_id);
41 
42 std::vector<Particle> CopyIfMother(std::vector<Particle> const& particles, std::vector<Id> const& mother_id);
43 
44 std::vector<Particle> CopyIfMother(std::vector<Particle> const& particles, Particle mother);
45 
46 std::vector<Particle> CopyIfGrandMother(std::vector<Particle> const& particles, Id grand_mother_id);
47 
48 std::vector<Particle> CopyIfGrandMother(std::vector<Particle> const& particles, Particle grand_mother);
49 
50 std::vector<Particle> CopyIfGreatGrandMother(std::vector<Particle> const& particles, Id grand_grand_mother_id);
51 
52 std::vector<Particle> CopyIfAncestor(std::vector<Particle> const& particles, Id ancestor);
53 
54 std::vector<Particle> RemoveIfMother(std::vector<Particle> const& particles, Id mother_id);
55 
56 std::vector<Particle> RemoveIfMother(std::vector<Particle> const& particles, std::vector<Id> const& mother_ids);
57 
58 std::vector<Particle> RemoveIfSingleMother(std::vector<Particle> const& particles);
59 
60 std::vector<Particle> RemoveIfOnlyMother(std::vector<Particle> const& particles, Id mother_id);
61 
62 std::vector<Particle> RemoveIfLetpon(std::vector<Particle> const& particles);
63 
64 std::vector<Particle> RemoveIfQuark(std::vector<Particle> const& particles);
65 
66 std::vector<Particle> CopyIfQuark(std::vector<Particle> const& particles);
67 
68 std::vector<Particle> CopyIf5Quark(std::vector<Particle> const& particles);
69 
70 std::vector<Particle> CopyIfDaughter(std::vector<Particle> const& particles, std::vector<Particle> const& daughters);
71 
72 std::vector<Particle> RemoveIfDaughter(std::vector<Particle> const& particles, std::vector<Particle> const& daughters);
73 
74 std::vector<Particle> CopyIfGrandDaughter(std::vector<Particle> const& particles, std::vector<Particle> const& daughters);
75 
76 std::vector<Particle> CopyIfPosition(std::vector<Particle> const& particles, int position);
77 
78 std::vector<Particle> CopyIfPosition(std::vector<Particle> const& particles, int position_1, int position_2);
79 
80 std::vector<Particle> CopyFirst(std::vector<Particle> particles, std::size_t number);
81 
87 std::vector<Particle> CopyIfDrellYan(std::vector<Particle> const& particles);
88 
89 void PrintParticles(std::vector<Particle> const& particles);
90 
91 }
std::vector< Particle > CopyIfGreatGrandMother(std::vector< Particle > const &particles, Id grand_grand_mother_id)
Definition: Particles.cpp:212
std::vector< Particle > CopyIfGrandDaughter(std::vector< Particle > const &particles, std::vector< Particle > const &daughters)
Definition: Particles.cpp:291
std::vector< Particle > RemoveIfMother(std::vector< Particle > const &particles, Id mother_id)
Definition: Particles.cpp:190
std::vector< Particle > CopyIfDaughter(std::vector< Particle > const &particles, std::vector< Particle > const &daughters)
Definition: Particles.cpp:274
std::vector< Particle > RemoveIfParticle(std::vector< Particle > particles, Id id)
std::vector< Particle > CopyIfFamily(std::vector< Particle > const &particles, Id id, Id mother_id)
Definition: Particles.cpp:147
void PrintParticles(std::vector< Particle > const &particles)
Definition: Particles.cpp:365
std::vector< Particle > CopyIfExactParticle(std::vector< Particle > const &particles, int id)
Definition: Particles.cpp:127
Id
PDG particle naming conventions.
Definition: Id.hh:23
std::vector< Particle > CopyIfQuark(std::vector< Particle > const &particles)
Definition: Particles.cpp:241
std::vector< Particle > CopyIfParticles(std::vector< Particle > const &particles, std::vector< Id > const &ids)
Definition: Particles.cpp:122
std::vector< Particle > CopyIf5Quark(std::vector< Particle > const &particles)
Definition: Particles.cpp:246
std::vector< Particle > CopyIfDrellYan(std::vector< Particle > const &particles)
Copy the two particles which are on the DY position.
Definition: Particles.cpp:327
std::vector< Particle > RemoveIfExactParticle(std::vector< Particle > particles, int id)
Boosted Collider Analysis.
Definition: Analysis.hh:15
std::vector< Particle > CopyIfRelativeIs(std::vector< Particle > const &particles, Relative relative, Id id)
Definition: Particles.cpp:69
std::vector< Particle > CopyIfNeutrino(std::vector< Particle > const &particles)
Definition: Particles.cpp:137
std::vector< Particle > CopyIfAncestor(std::vector< Particle > const &particles, Id ancestor)
Definition: Particles.cpp:217
std::vector< Particle > CopyIfPosition(std::vector< Particle > const &particles, int position)
Definition: Particles.cpp:300
std::vector< Particle > CopyIfGrandMother(std::vector< Particle > const &particles, Id grand_mother_id)
Definition: Particles.cpp:207
std::vector< Particle > CopyIfMother(std::vector< Particle > const &particles, Id mother_id)
Definition: Particles.cpp:162
std::vector< Particle > CopyIfLepton(std::vector< Particle > const &particles)
Definition: Particles.cpp:142
std::vector< Particle > RemoveIfQuark(std::vector< Particle > const &particles)
Definition: Particles.cpp:236
std::vector< Particle > RemoveIfGrandFamily(std::vector< Particle > const &particles, Id id, Id grand_mother_id)
returns only particles with the correct id and non fitting grand mother id
Definition: Particles.cpp:152
std::vector< Particle > CopyIfParticle(std::vector< Particle > const &particles, Id id)
Definition: Particles.cpp:117
std::vector< Particle > CopyFirst(std::vector< Particle > particles, std::size_t number)
Definition: Particles.cpp:318
std::vector< Particle > RemoveIfOnlyMother(std::vector< Particle > const &particles, Id mother_id)
std::vector< Particle > RemoveIfLetpon(std::vector< Particle > const &particles)
Definition: Particles.cpp:231
std::vector< Particle > RemoveIfDaughter(std::vector< Particle > const &particles, std::vector< Particle > const &daughters)
Definition: Particles.cpp:283
std::vector< Particle > RemoveIfSingleMother(std::vector< Particle > const &particles)
Definition: Particles.cpp:226
Relative
Definition: Family.hh:14