float Event::Mt(MtType type) { // 0 tau, 1 muon, 2 electron, 3 lepton float pt_m = met_ . Pt(); float phi_m= met_. Phi(); switch(type){ case MtTau: { if ( Ntaus() <=0 ) return -1; float pt_t = LeadTau() -> Pt(); float phi_t = LeadTau() -> Phi(); return ChargedHiggs::mt(pt_t,pt_m,phi_t,phi_m); } case MtMuon: { if (GetMuon(0) == NULL ) return -1; float pt_mu = GetMuon(0)-> Pt(); float phi_mu = GetMuon(0)-> Phi(); return ChargedHiggs::mt(pt_mu,pt_m,phi_mu,phi_m); } case MtLepton: { if (GetLepton(0) == NULL ) return -1; float pt_lep = GetLepton(0)-> Pt(); float phi_lep = GetLepton(0)-> Phi(); return ChargedHiggs::mt(pt_lep,pt_m,phi_lep,phi_m); } case MtTauInv: { Tau *tInv = GetTauInvIso(0); if (tInv == NULL) return -1; float pt_t = tInv -> Pt(); float phi_t = tInv -> Phi(); return ChargedHiggs::mt(pt_t,pt_m,phi_t,phi_m); } } return -3; }
math::XYZTLorentzVector GenTopEvent::GetLeptonVec() const{ return GetLV(GetLepton()); }