ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/NonMCBackground/src/SelectionEMU.cc
(Generate patch)

Comparing UserCode/MitHzz4l/NonMCBackground/src/SelectionEMU.cc (file contents):
Revision 1.2 by khahn, Tue Feb 14 21:29:18 2012 UTC vs.
Revision 1.3 by khahn, Fri Feb 17 14:48:01 2012 UTC

# Line 161 | Line 161 | EventData apply_EMU_selection(ControlFla
161              break;
162            }
163          }
164 +
165 +        // kick out non fiducial, low pT eles
166 +        if ( ele->pt < 7 || fabs(ele->eta) > 2.5 )
167 +          continue;
168          
169          SelectionStatus elesel;
170          elesel |= (*ElectronPreSelector)(ctrl,ele);
171          elesel |= (*ElectronIDSelector)(ctrl,ele);
172          elesel |= (*ElectronIsoSelector)(ctrl,ele);
173 <        if( elesel.getStatus() & SelectionStatus::PRESELECTION )
174 <          elesel.setStatus(SelectionStatus::LOOSESELECTION);
173 >
174 > //      if( elesel.getStatus() & SelectionStatus::PRESELECTION )
175 > //        elesel.setStatus(SelectionStatus::LOOSESELECTION);
176  
177          if( ctrl.debug ){
178            cout << "\tscEt: " << ele->scEt
# Line 178 | Line 183 | EventData apply_EMU_selection(ControlFla
183                 << endl;
184          }
185  
186 <        if ( elesel.pass() && !isMuonOverlap )
186 >        //      if ( elesel.pass() && !isMuonOverlap )
187 >        if ( !isMuonOverlap )
188            {
189              SimpleLepton tmplep;
190              
# Line 217 | Line 223 | EventData apply_EMU_selection(ControlFla
223              tmplep.isEB    = ele->isEB;
224              tmplep.scID    = ele->scID;
225              tmplep.isTight = elesel.tight();
226 <            tmplep.isLoose = elesel.pass();
226 >            tmplep.isLoose = elesel.loose();
227 >            //      tmplep.isLoose = elesel.pass();
228              lepvec.push_back(tmplep);
229              if( ctrl.debug ) { cout << "\telectron passes ... " << endl; }
230            }
# Line 258 | Line 265 | EventData apply_EMU_selection(ControlFla
265        for(int j = 0; j<lepvec.size(); j++) {     // get a loose electron
266          if( j == i ) continue;
267          if( abs(lepvec[j].type) != 11 ) continue;
268 <        if( !(lepvec[j].isLoose) ) continue;
269 <        if (lepvec[i].charge == lepvec[j].charge) continue;          
270 <        //      if (lepvec[i].charge != lepvec[j].charge) continue;          
268 >        //      if( !(lepvec[j].isLoose) ) continue;
269 >        //      if (lepvec[i].charge == lepvec[j].charge) continue;          
270 >        if (lepvec[i].charge != lepvec[j].charge) continue;          
271          if( ctrl.debug ) cout << "got a electron, index: " << j << endl;
272  
273          float tmpMass = ( *(lepvec[i].vec) + *(lepvec[j].vec) ).M();
# Line 276 | Line 283 | EventData apply_EMU_selection(ControlFla
283  
284      if( bestMass > 0 ) {
285        if( ctrl.debug ) cout << "EMU candidate, mass : " << bestMass << endl;
286 +
287 + //       if( lepvec[best_ele_index].isTight )
288 + //      ret.status.setStatus(SelectionStatus::TIGHTSELECTION);
289 + //       else
290 + //      ret.status.setStatus(SelectionStatus::LOOSESELECTION);
291 +
292        if( lepvec[best_ele_index].isTight )
293          ret.status.setStatus(SelectionStatus::TIGHTSELECTION);
294 <      else
294 >      if( lepvec[best_ele_index].isLoose )
295          ret.status.setStatus(SelectionStatus::LOOSESELECTION);
296 +      if( !(lepvec[best_ele_index].isTight) && !(lepvec[best_ele_index].isLoose)  )
297 +        ret.status.setStatus(SelectionStatus::UNDEFINED); // using preselection here to mean that muon
298 +                                                          // is good & ele pass neither loose or tight
299 +
300        ret.Z1leptons.push_back(lepvec[best_mu_index]);
301        ret.Z1leptons.push_back(lepvec[best_ele_index]);
302        ret.Z2leptons.push_back(lepvec[best_mu_index]);
# Line 287 | Line 304 | EventData apply_EMU_selection(ControlFla
304        return ret;
305      }
306  
307 <    ret.status.setStatus(0);
307 >    ret.status.setStatus(SelectionStatus::FAIL);
308      return ret;
309  
310   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines