MultipletSignature<Quartet211> SignatureLeptonTagger::Signature(Doublet const& doublet, Singlet const& singlet_1, Singlet const& singlet_2) const { Quartet211 quartet; if ((doublet.Jet() + singlet_1.Jet()).Mass() > (doublet.Jet() + singlet_2.Jet()).Mass()) quartet.SetMultiplets(doublet, singlet_1, singlet_2); else quartet.SetMultiplets(doublet, singlet_2, singlet_1); if (quartet.Overlap()) throw Overlap(); return MultipletSignature<Quartet211>(quartet); }
MultipletSignature<Octet332> SignatureT::Signature(Triplet const& triplet_1, Triplet const& triplet_2, Doublet const& doublet) const { Octet332 octet; if (boca::Jet((triplet_1.Jet() + doublet.Jet())).Mass() > boca::Jet(triplet_2.Jet() + doublet.Jet()).Mass()) octet.SetMultiplets(triplet_1, triplet_2, doublet); else octet.SetMultiplets(triplet_2, triplet_1, doublet); if (octet.Overlap()) throw Overlap(); return MultipletSignature<Octet332>(octet); }