112 double massDifference = 9999;
125 if (
vtx.isValid() && !
vtx.isFake()) {
126 posVtx =
vtx.position();
127 errVtx =
vtx.error();
138 chosenZCand_zmass = &(*iZCand);
144 if (chosenZCand_largest ==
nullptr) {
145 chosenZCand_largest = &(*iZCand);
147 if (iZCand->mass() > chosenZCand_largest->
mass()) {
148 chosenZCand_largest = &(*iZCand);
153 chosenZCand = chosenZCand_zmass;
155 chosenZCand = chosenZCand_largest;
163 iEvent.put(std::make_unique<float>(chosenZCand_zmass->
mass()),
"oldMass");
164 iEvent.put(std::make_unique<float>(chosenZCand_largest->
mass()),
"newMass");
167 "isMediumLeadingMuon");
168 iEvent.put(std::make_unique<bool>(
170 "isTightLeadingMuon");
172 "isMediumTrailingMuon");
173 iEvent.put(std::make_unique<bool>(
175 "isTightTrailingMuon");
176 iEvent.put(std::make_unique<float>(
met->at(0).et()),
"initialMETEt");
177 iEvent.put(std::make_unique<float>(
met->at(0).phi()),
"initialMETphi");
178 iEvent.put(std::make_unique<float>(puppimet->at(0).et()),
"initialPuppiMETEt");
179 iEvent.put(std::make_unique<float>(puppimet->at(0).phi()),
"initialPuppiMETphi");
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
edm::EDGetTokenT< edm::View< pat::MET > > thePuppiMETLabel_
bool isMediumMuon(const reco::Muon &, bool run2016_hip_mitigation=false)
static constexpr double zmass
math::Error< dimension >::type Error
covariance error matrix (3x3)
edm::EDGetTokenT< reco::VertexCollection > theVertexLabel_
Abs< T >::type abs(const T &t)
math::XYZPoint Point
point in the space
edm::EDGetTokenT< reco::BeamSpot > theBeamSpotLabel_
edm::EDGetTokenT< edm::View< pat::MET > > theMETLabel_
double mass() const final
mass
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
edm::EDGetTokenT< edm::View< reco::CompositeCandidate > > ZmumuCandidates_
bool isTightMuon(const reco::Muon &, const reco::Vertex &)
primaryVertex
hltOfflineBeamSpot for HLTMON
virtual const CandidateBaseRef & masterClone() const =0