Index: trunk/Delphes.cpp
===================================================================
--- trunk/Delphes.cpp	(revision 32)
+++ trunk/Delphes.cpp	(revision 33)
@@ -339,4 +339,5 @@
 	      PTmis = PTmis + genMomentum;//ptmis
 	      if(pid !=pMU) {
+                
 		towers.push_back(PhysicsTower(LorentzVector(genMomentum.Px(),genMomentum.Py(),genMomentum.Pz(), genMomentum.E())));
 		// create a fastjet::PseudoJet with these components and put it onto
@@ -449,5 +450,5 @@
       
       for(unsigned int i=0; i < electron.size(); i++) {
-	if(electron[i].E()!=0 && fabs(electron[i].Eta()) < DET->MAX_TRACKER)
+	if(electron[i].E()!=0 && fabs(electron[i].Eta()) < DET->MAX_TRACKER && electron[i].Pt() > DET->ELEC_pt)
 	  {
 	    elementElec = (TRootElectron*) branchElectron->NewEntry();
@@ -458,5 +459,5 @@
       }
       for(unsigned int i=0; i < muon.size(); i++) {
-	if(muon[i].E()!=0 && fabs(muon[i].Eta()) < DET->MAX_MU) 
+	if(muon[i].E()!=0 && fabs(muon[i].Eta()) < DET->MAX_MU && muon[i].Pt() > DET->MUON_pt) 
 	  {
 	    elementMu = (TRootMuon*) branchMuon->NewEntry();
@@ -494,22 +495,25 @@
 	TLorentzVector JET;
 	JET.SetPxPyPzE(sorted_jets[i].px(),sorted_jets[i].py(),sorted_jets[i].pz(),sorted_jets[i].E());
-        //cout<<"Jet.Pt() "<<JET.Pt()<<endl;
-	elementJet->Set(JET);
-	// b-jets
-	bool btag=false;
-	if((fabs(JET.Eta()) < DET->MAX_TRACKER && DET->Btaggedjet(JET, NFCentralQ)))btag=true;
-	elementJet->Btag = btag;
-	
-	// Tau jet identification : 1! track and electromagnetic collimation
-	if(fabs(JET.Eta()) < (DET->MAX_TRACKER - DET->TAU_CONE_TRACKS)) {
-	  double Energie_tau_central = DET->EnergySmallCone(towers,JET.Eta(),JET.Phi());
-	  if(
-	     ( Energie_tau_central/JET.E() > DET->TAU_EM_COLLIMATION ) &&
-	     ( DET->NumTracks(TrackCentral,DET->PT_TRACK_TAU,JET.Eta(),JET.Phi()) == 1 )
-	     ) {
-	    elementTauJet = (TRootTauJet*) branchTauJet->NewEntry();
-	    elementTauJet->Set(JET);
-	  } // if tau jet
-	} // if JET.eta < tracker - tau_cone : Tau jet identification
+        // Tau jet identification : 1! track and electromagnetic collimation
+        if(fabs(JET.Eta()) < (DET->MAX_TRACKER - DET->TAU_CONE_TRACKS)) {
+        double Energie_tau_central = DET->EnergySmallCone(towers,JET.Eta(),JET.Phi());
+        if(
+           ( Energie_tau_central/JET.E() > DET->TAU_EM_COLLIMATION ) &&
+           ( DET->NumTracks(TrackCentral,DET->PT_TRACK_TAU,JET.Eta(),JET.Phi()) == 1 ) &&
+           ( JET.Pt() > DET->TAUJET_pt)
+          ) {
+               elementTauJet = (TRootTauJet*) branchTauJet->NewEntry();
+               elementTauJet->Set(JET);
+            } // if tau jet
+           } // if JET.eta < tracker - tau_cone : Tau jet identification
+  
+        if(JET.Pt() > DET->JET_pt)
+          {
+	    elementJet->Set(JET);
+	    // b-jets
+	    bool btag=false;
+	    if((fabs(JET.Eta()) < DET->MAX_TRACKER && DET->Btaggedjet(JET, NFCentralQ)))btag=true;
+	    elementJet->Btag = btag;
+	  }
       } // for itJet : loop on all jets
       
Index: trunk/data/DataCardDet.dat
===================================================================
--- trunk/data/DataCardDet.dat	(revision 32)
+++ trunk/data/DataCardDet.dat	(revision 33)
@@ -31,7 +31,12 @@
 HAD_Chf 	 0.13			  // C term for HF
 
-
 # muon smearing
 MU_SmearPt 	 0.01
+
+#thresholds for reconstructed objects
+ELEC_pt          10
+MUON_pt          10
+JET_pt           20
+TAUJET_pt        10
 
 #For Tau-jet definition
Index: trunk/interface/SmearUtil.h
===================================================================
--- trunk/interface/SmearUtil.h	(revision 32)
+++ trunk/interface/SmearUtil.h	(revision 33)
@@ -67,5 +67,11 @@
   // muon smearing
   float MU_SmearPt;
-  
+ 
+  //threshold for reconstructed objetcs
+  float ELEC_pt;
+  float MUON_pt;
+  float JET_pt;
+  float TAUJET_pt;
+ 
   //For Tau-jet definition
   // R = sqrt (phi^2 + eta^2)
Index: trunk/src/SmearUtil.cc
===================================================================
--- trunk/src/SmearUtil.cc	(revision 32)
+++ trunk/src/SmearUtil.cc	(revision 33)
@@ -47,7 +47,4 @@
 ELG_Nfwd =        0.0   ;                 // N term for central ECAL
 
-HAD_Secal =       0.05 ;                    // S term for central ECAL // electromagnetic calorimeter
-HAD_Necal =       0.25 ;                    // N term for central ECAL
-HAD_Cecal =       0.0055 ;                  // C term for central ECAL
 HAD_Shcal =       0.91 ;                    // S term for central HCAL // hadronic calorimeter
 HAD_Nhcal  =      0.   ;                    // N term for central HCAL
@@ -58,4 +55,10 @@
 
 MU_SmearPt =      0.01 ;
+
+ELEC_pt =         10.0;
+MUON_pt =         10.0;
+JET_pt =          20.0;
+TAUJET_pt =       10.0;
+
 
 TAU_CONE_ENERGY = 0.15  ;                  // Delta R = radius of the cone // for "electromagnetic collimation"
@@ -139,4 +142,9 @@
     else if(strstr(temp_string.c_str(),"JETALGO")){curstring >> varname >> value; JETALGO = (int)value;}
     else if(strstr(temp_string.c_str(),"TRACKING_EFF")){curstring >> varname >> value; TRACKING_EFF = (int)value;}
+    else if(strstr(temp_string.c_str(),"ELEC_pt")){curstring >> varname >> value; ELEC_pt = value;}
+    else if(strstr(temp_string.c_str(),"MUON_pt")){curstring >> varname >> value; MUON_pt = value;}
+    else if(strstr(temp_string.c_str(),"JET_pt")){curstring >> varname >> value; JET_pt = value;}
+    else if(strstr(temp_string.c_str(),"TAUJET_pt")){curstring >> varname >> value; TAUJET_pt = value;}
+
   }
 
@@ -177,12 +185,5 @@
 					 pow(ELG_Sfwd*sqrt(energy),2) ) ); 
   }
-float theta=electron.Theta();
-float phi=electron.Phi();
-  float px = energyS * sin(theta) * cos(phi);
-  float py = energyS * sin(theta) * sin(phi);
-  float pz = energyS * cos(theta);
-  //cout<<" px "<<px<<" py "<<py<<" pz "<<pz<<endl;
   electron.SetPtEtaPhiE(energyS/cosh(electron.Eta()), electron.Eta(), electron.Phi(), energyS);
-  //cout<<"nous "<<electron.Px()<<"  "<<electron.Py()<<"  "<<electron.Pz()<<endl;
   if(electron.E() < 0)electron.SetPxPyPzE(0,0,0,0); // no negative values after smearing !
 }
