TwoBody.hh
Go to the documentation of this file.
47 if (multiplet_1.Bdt() != InitialValue() && multiplet_2.Bdt() != InitialValue()) SetBdt(multiplet_1.Bdt(), multiplet_2.Bdt());
155 return DeltaR() > Settings::JetConeSize() ? Combine(Multiplet1().LorentzVectors(), Multiplet2().LorentzVectors()) : std::vector<LorentzVector<Momentum>> {Jet().LorentzVector()};
358 if(dipolarity > 100) std::cerr << "dipol: " << dipolarity << " sum: " << sum << " mom: " << Pt() << " deltar: " << DeltaR() << '\n';
386 return Multiplet1().MassDifferenceTo(id) < Multiplet2().MassDifferenceTo(id) ? Multiplet1().Jet() : Multiplet2().Jet();
390 return Multiplet1().MassDifferenceTo(id) > Multiplet2().MassDifferenceTo(id) ? Multiplet1().Jet() : Multiplet2().Jet();
402 return Pt() > Settings::MinCellPt() && DeltaR() > Settings::MinCellResolution() ? static_cast<double>(Mass() / Pt() / DeltaR() * 2_rad) : 0;
459 boca::Singlet JoinConstituents(Multiplet_1_ const &multiplet_1, Multiplet_2_ const &multiplet_2)
461 auto constituents = SortedByPt(Combine(multiplet_1.Constituents(), multiplet_2.Constituents()));
void EnforceJet(boca::Jet jet, double bdt)
Enforce a Multiplet from a jet and a seperate bdt.
Definition: TwoBody.hh:109
Multiplet_2_ & Multiplet2()
Accessor to the second multiplet.
Definition: TwoBody.hh:183
Angle PullAngle(Vector2< Angle > const &reference) const
Pull angle towards the reference angel.
Definition: Singlet.cpp:97
Angle PullTo(Multiplet_ const &multiplet) const
Pull towards another multiplet.
Definition: TwoBody.hh:329
Angle Pull21() const
Pull from the second component to the first.
Definition: TwoBody.hh:345
static fastjet::JetDefinition SubJetDefinition()
Definition: Settings.cpp:102
boca::Singlet JoinConstituents(Multiplet_1_ const &multiplet_1, Multiplet_2_ const &multiplet_2, Multiplet_3_ const &multiplet_3)
Definition: ThreeBody.hh:161
boca::Jet ComponentWithWorseMass(Id id) const
Harder subcomponent.
Definition: TwoBody.hh:389
boost::units::quantity< boost::units::si::plane_angle > Angle
Angle measured in radian.
Definition: Si.hh:35
boca::Singlet ConstituentJet() const
Jet of all constituents.
Definition: Multiplet.cpp:22
boca::EventShapes EventShapes() const
Accessor for event shapes.
Definition: TwoBody.hh:135
boca::Jet SofterComponent() const
Softer subcomponent.
Definition: TwoBody.hh:378
Vector2< Angle > DeltaTo(Multiplet_ const &multiplet) const
Angular distance to a jet.
Definition: Multiplet.hh:88
Mutable< boca::EventShapes > event_shapes_
Definition: Multiplet.hh:153
void Set(Multiplet_1_ const &multiplet_1, Multiplet_2_ const &multiplet_2)
Setter for two Multiplets.
Definition: TwoBody.hh:121
bool Overlap(boca::Singlet const &singlet) const
Overlap with a singlet.
Definition: TwoBody.hh:214
slighly more complicated estimator for significance
Wrapper for a Jet in order to make it behave like a Multiplet.
Definition: Singlet.hh:19
AngleSquareMomentum DipolaritySum(Line2< Angle > const &line) const
Sum for Dipolarity calculation.
Definition: Singlet.cpp:83
Angle DeltaR() const
Difference in angular distance .
Definition: TwoBody.hh:306
friend std::ostream & operator<<(std::ostream &stream, TwoBody const &two_body)
Definition: TwoBody.hh:413
std::vector< Element_ > Combine(std::vector< Element_ > const &vector_1, std::vector< Element_ > const &vector_2)
Combine two std::vector.
Definition: Vector.hh:101
void SetMultiplet1(Multiplet_1_ const &multiplet_1)
Definition: TwoBody.hh:424
boca::Jet HarderComponent() const
Harder subcomponent.
Definition: TwoBody.hh:371
Line2< Angle > AngleLine() const
Line in agular space from the second component to the first.
Definition: TwoBody.hh:314
boca::LorentzVector< Momentum > LorentzVector() const
Momentum lorentz vector.
Definition: PseudoJet.cpp:73
boca::Jet ComponentWithBetterMass(Id id) const
Subcomponent with the better mass of an object with Id.
Definition: TwoBody.hh:385
Angle Pull12() const
Pull from the first component to the second.
Definition: TwoBody.hh:337
std::vector< LorentzVector< Momentum > > LorentzVectors() const override
Accessor for lorentz vectors.
Definition: TwoBody.hh:153
boca::Mass MassDifferenceTo(Id id) const
Mass difference to a particle with Id.
Definition: TwoBody.hh:276
Multiplet_1_ const & Multiplet1() const
Const accessor to the first multiplet.
Definition: TwoBody.hh:175
TwoBody(Multiplet_1_ const &multiplet_1, Multiplet_2_ const &multiplet_2)
Constructor accepting two different Multiplets.
Definition: TwoBody.hh:43
double Dipolarity() const
Dipolarity according to .
Definition: TwoBody.hh:353
std::vector< Jet > ExclusiveJetsUpTo(int sub_jet_number) const
Definition: ClusterSequence.cpp:70
bool Overlap(Multiplet_3_ const &multiplet) const
Overlap with another multiplet.
Definition: TwoBody.hh:206
Multiplet_2_ const & Multiplet2() const
Const accessor to the second multiplet.
Definition: TwoBody.hh:191
Energy Momentum
Momentum measured in electronvolt.
Definition: ElectronVolt.hh:68
void SetMultiplet2(Multiplet_2_ const &multiplet_2)
Definition: TwoBody.hh:429
void Enforce(boca::Jet const &jet)
Enforce a Multiplet from a Jet.
Definition: TwoBody.hh:74
std::vector< Multiplet > SortedByPt(std::vector< Multiplet > multiplets)
Definition: Sort.hh:53
void Enforce(std::vector< boca::Jet > const &jets)
Enforce a Multiplet from a vector of jets.
Definition: TwoBody.hh:82
std::vector< boca::Jet > Jets() const override
Accessor for jets.
Definition: TwoBody.hh:145
Wrapper around fastjet:ClusterSequence taking care of memory managment.
Definition: ClusterSequence.hh:30
Multiplet_1_ & Multiplet1()
Accessor to the first multiplet.
Definition: TwoBody.hh:167
Calculates the event shapes for a given collection of jets.
Definition: EventShapes.hh:25
bool Overlap(boca::Jet const &jet) const
Overlap with a jet.
Definition: TwoBody.hh:222
void Enforce(TwoBody< Multiplet_3_, Multiplet_4_ > const &multiplet)
Enforce Multiplet from a single other Multiplet.
Definition: TwoBody.hh:64
void Enforce(boca::Jet const &jet, double bdt)
Enforce a Multiplet from a jet and a seperate bdt.
Definition: TwoBody.hh:95
Momentum DeltaHt() const
Difference in the scalar sum of transverse moenta.
Definition: TwoBody.hh:268